[Unit] Description=Netbird Client (%i) Documentation=https://netbird.io/docs After=network-online.target syslog.target Wants=network-online.target [Service] Type=simple Environment=NB_CONFIG=/etc/netbird/%i.json Environment=NB_STATE_DIR=/var/lib/netbird/%i Environment=NB_LOG_FILE=/var/log/netbird/%i/client.log Environment=NB_DAEMON_ADDR=unix://var/run/netbird.sock Environment=NB_SERVICE=%N # for compatibility with older versions Environment=SYSTEMD_UNIT=%N EnvironmentFile=-/etc/default/netbird EnvironmentFile=-/etc/default/netbird-%i ExecStart=/usr/bin/netbird service run $FLAGS Restart=on-failure RestartSec=5 TimeoutStopSec=10 CacheDirectory=netbird/%i ConfigurationDirectory=netbird LogsDirectory=netbird/%i RuntimeDirectory=netbird StateDirectory=netbird/%i # sandboxing LockPersonality=yes MemoryDenyWriteExecute=yes NoNewPrivileges=yes PrivateMounts=yes PrivateTmp=yes ProtectClock=yes ProtectControlGroups=yes ProtectHome=yes ProtectHostname=yes ProtectKernelLogs=yes # needed to load wg module for kernel-mode WireGuard ProtectKernelModules=no ProtectKernelTunables=no ProtectSystem=yes RemoveIPC=yes RestrictNamespaces=yes RestrictRealtime=yes RestrictSUIDSGID=yes [Install] WantedBy=multi-user.target