File and Directory Layout

The default Linux-based directory structure is provided below. For BSD systems, the root folder is located in /usr/local .

Terminal - Netify
×
/
├── etc/
│   ├── netifyd.conf
│   └── netifyd/
│       ├── interfaces.d/
│       │   ├── 10.lan.conf
│       │   └── 10.wan.conf
│       ├── categories.d/
│       │   ├── 10.adult.conf
│       │   ├── 10.vpn.conf
│       │   └── 10.malware.conf
│       ├── plugins.d/
│       │   ├── 10-netify-proc-aggregator.conf
│       │   ├── 10-netify-proc-core.conf
│       │   ├── 10-netify-proc-dev-discovery.conf
│       │   ├── 10-netify-proc-flow-actions.conf
│       │   ├── 10-netify-proc-intel.conf
│       │   ├── 10-netify-proc-lua.conf
│       │   ├── 10-netify-proc-python.conf
│       │   ├── 10-netify-sink-log.conf
│       │   ├── 10-netify-sink-socket.conf
│       │   ├── 10-netify-sink-http.conf
│       │   ├── 10-netify-sink-mqtt.conf
│       │   └── 10-netify-sink-ubus.conf
│       └── nfa-block.d
├── usr/
│   └── sbin/
│       └── netifyd
└── var/
    └── run/
        └── netifyd/
            ├── netifyd.pid
            ├── netifyd.sock
            ├── netify-sink.sock (Netify Sink Socket Plugin)
            └── status.json

Upgrade Guide

  • If you are coming from Netify version 3 or 4, take note of the main directory name change in /etc from netify.d to netifyd .
  • In version 5, domain list mappings to categories were renamed from domains.d to categories.d .

Using Defined Variables Inside Netify

The Netify Agent and Plugins support a number of defined variables inside configuration files to provide flexibility and make cross-platform configuration more portable. The following table provides valid configuration names and their use.

Variable Name Default
${path_state_persistent} /etc/netifyd
${path_state_volatile} /var/run/netifyd
${path_uuid_serial} custom
${path_app_config} /etc/netifyd/netify-apps.conf
${path_category_config} /etc/netifyd/netify-categories.json
${path_plugins} /etc/netifyd/plugins.d
${path_categories} /etc/netifyd/categories.d
${path_interfaces} /etc/netifyd/interfaces.d
${uuid_agent} contents of /etc/netifyd/agent.uuid
${uuid_serial} contents returned by path_uuid_serial
${uuid_site} contents of /etc/netifyd/site.uuid