From 92f5520766af195aab83408009f235bad56688a8 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 19 Jun 2026 12:45:47 +0000 Subject: [PATCH] Add AppArmor profiles to add-ons that lacked one MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - netbird-server: new profile `netbird-server_addon` (includes capability sys_chroot) - netalertx_fa: symlink apparmor.txt to base netalertx profile, matching the repo's existing _fa convention (e.g. scrutiny_fa -> scrutiny) - signalk intentionally left without a profile (config sets apparmor: false) No version bumps — profiles apply on each add-on's next update. Co-Authored-By: Claude --- netalertx_fa/apparmor.txt | 1 + netbird-server/apparmor.txt | 49 +++++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 120000 netalertx_fa/apparmor.txt create mode 100644 netbird-server/apparmor.txt diff --git a/netalertx_fa/apparmor.txt b/netalertx_fa/apparmor.txt new file mode 120000 index 0000000000..c3c9b710bd --- /dev/null +++ b/netalertx_fa/apparmor.txt @@ -0,0 +1 @@ +../netalertx/apparmor.txt \ No newline at end of file diff --git a/netbird-server/apparmor.txt b/netbird-server/apparmor.txt new file mode 100644 index 0000000000..32498ec5bb --- /dev/null +++ b/netbird-server/apparmor.txt @@ -0,0 +1,49 @@ +#include + +profile netbird-server_addon flags=(attach_disconnected,mediate_deleted) { + #include + + capability chown, + capability dac_override, + capability fowner, + capability net_bind_service, + capability setgid, + capability setuid, + capability sys_chroot, + file, + signal, + mount, + umount, + remount, + network udp, + network tcp, + network dgram, + network stream, + network inet, + network inet6, + network netlink raw, + network unix dgram, + + /init ix, + /run/{s6,s6-rc*,service}/** ix, + /package/** ix, + /command/** ix, + /bin/** ix, + /usr/bin/** ix, + /usr/lib/bashio/** ix, + /etc/s6/** rix, + /run/s6/** rix, + /etc/services.d/** rwix, + /etc/cont-init.d/** rwix, + /etc/cont-finish.d/** rwix, + + # Data access + /data/** rw, + + # suppress ptrace denials when using 'docker ps' or using 'ps' inside a container + ptrace (trace,read) peer=docker-default, + + # docker daemon confinement requires explict allow rule for signal + signal (receive) set=(kill,term) peer=/usr/bin/docker, + +}