Configuration ============= This section covers all configuration options available in nEdge Lite, including command-line arguments, environment variables, and runtime behavior. Command-Line Options -------------------- Basic Options ~~~~~~~~~~~~~ **-q, --queue-id [:]** Specifies the NFQUEUE ID(s) to listen on. - Single queue: ``-q 0`` - Multiple queues: ``-q 0:4`` (uses queues 0, 1, 2, 3) The number of queues determines thread count. Each queue is handled by a separate thread. **Examples**: .. code-block:: console # Single queue sudo nedgelite -q 0 # Four queues (0-3) for load balancing sudo nedgelite -q 0:4 # Eight queues starting at queue 10 sudo nedgelite -q 10:8 **-v, --verbose** Enable verbose logging output. Shows detailed information about packet processing, protocol detection, and flow management. .. code-block:: console sudo nedgelite -q 0 -v **-h, --help** Display help message with all available options. .. code-block:: console nedgelite --help **-V, --version** Display version information. .. code-block:: console nedgelite --version **-H** Display the verbose help, followed by the lists of supported nDPI protocols, categories and flow risks (with their ids, codes and short names), as accepted by the label map (see :ref:`connection-labels`). .. code-block:: console nedgelite -H Policy Options ~~~~~~~~~~~~~~ **-r, --rules ** Load policy rules from a JSON file. The file contains pool definitions and policy rules. .. code-block:: console sudo nedgelite -q 0 -r /etc/nedgelite/policy.json When using this option, you can reload policies by sending SIGHUP to the nEdge Lite process: .. code-block:: console sudo kill -HUP $(pidof nedgelite) **-p, --zmq-policy-endpoint ** Subscribe to policy updates from ntopng via ZeroMQ. This enables dynamic policy management through ntopng's web interface. .. code-block:: console sudo nedgelite -q 0 -p tcp://127.0.0.1:5557 Multiple endpoints are supported for redundancy: .. code-block:: console sudo nedgelite -q 0 -p tcp://127.0.0.1:5557 -p tcp://10.0.0.1:5557 Flow Export Options ~~~~~~~~~~~~~~~~~~~ **-z, --zmq-flow-endpoint ** Send flow data to ntopng via ZeroMQ. This is typically required for monitoring and visualization. .. code-block:: console sudo nedgelite -q 0 -z tcp://127.0.0.1:1234 Multiple endpoints are supported to send flows to multiple ntopng instances: .. code-block:: console sudo nedgelite -q 0 -z tcp://192.168.1.10:1234 -z tcp://192.168.1.20:1234 **-j, --json** Export flows in JSON format instead of the default TLV (Type-Length-Value) format. .. code-block:: console sudo nedgelite -q 0 -z tcp://127.0.0.1:1234 -j **Note**: TLV format is more compact and efficient. Use JSON only if required for debugging or custom integrations. **-f, --flush** Flush flows immediately over ZMQ without batching. This reduces latency but may increase overhead. .. code-block:: console sudo nedgelite -q 0 -z tcp://127.0.0.1:1234 -f **-u, --flow-update ** Set the interval (in seconds) for periodic flow updates. Default is 30 seconds. .. code-block:: console # Update flows every 10 seconds sudo nedgelite -q 0 -z tcp://127.0.0.1:1234 -u 10 **Range**: 3-120 seconds **-y, --zmq-encryption-key ** Enable ZeroMQ CURVE encryption for secure flow export. Provide the server's public key. .. code-block:: console sudo nedgelite -q 0 -z tcp://127.0.0.1:1234 -y "server-public-key" Connection Tracking Options ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ **-s, --skip-ct-reset** Skip conntrack initialization at startup. By default, nEdge Lite: - Enables conntrack accounting - Enables conntrack timestamps - Flushes nfacct counters Use this option if these settings are already configured or managed externally. .. code-block:: console sudo nedgelite -q 0 -s Connection Label Options ~~~~~~~~~~~~~~~~~~~~~~~~ nEdge Lite can tag connections with conntrack labels (connlabels) describing what nDPI detected, so that iptables rules can match on them. See :ref:`connection-labels` for details and examples. **-L, --labels ** Enable connection labels, using the specified label map file. The map selects which nDPI protocols, categories and flow risks set which of the 128 available label bits. .. code-block:: console sudo nedgelite -q 0 -L /etc/nedgelite/labels.conf **-o, --connlabel ** Generate ``/connlabel.conf`` from the label map, then exit. The file assigns a name to each label bit used by the map and must be installed as ``/etc/xtables/connlabel.conf`` so that iptables and conntrack can refer to labels by name. Requires ``-L``. Label names contain only letters, digits and ``-``. .. code-block:: console nedgelite -L /etc/nedgelite/labels.conf -o /tmp sudo mkdir -p /etc/xtables sudo cp /tmp/connlabel.conf /etc/xtables/connlabel.conf License Options ~~~~~~~~~~~~~~~ **--show-system-id** Display the system ID used for license generation. .. code-block:: console nedgelite --show-system-id **--check-license** Check the validity of the installed license. .. code-block:: console nedgelite --check-license **--check-maintenance** Check the maintenance expiration date. .. code-block:: console nedgelite --check-maintenance Configuration Files ------------------- License File ~~~~~~~~~~~~ **Locations** (checked in order): 1. ``nedgelite.license`` (current directory) 2. ``/etc/nedgelite.license`` **Format**: Binary license file provided by ntop.org Policy File ~~~~~~~~~~~ **Location**: Specified with ``-r`` option **Format**: JSON (newline-delimited JSON objects) **Example**: ``/etc/nedgelite/policy.json`` See :doc:`policies` for detailed policy file format. Label Map File ~~~~~~~~~~~~~~ **Location**: Specified with ``-L`` option **Format**: Text, one `` [