hotfix(netbird-proxy): allow non-root :443 bind on the host network #409

Merged
k.renner merged 1 commits from netbird-proxy-port-sysctl into master 2026-07-26 05:44:07 +00:00
@@ -28,6 +28,22 @@
- name: Apply the Docker IPv6 config before the container is deployed
ansible.builtin.meta: flush_handlers
# The reverse-proxy runs host-network as a non-root user, so binding :443
# requires the host to permit unprivileged low ports. In bridge mode Docker
# set ip_unprivileged_port_start=0 inside the container netns, which is why
# the published-port setup never hit this; on the host netns the default
# (1024) applies and the proxy crash-loops with "listen tcp :443: bind:
# permission denied" (both members down, hit live 2026-07-26). Despite the
# ipv4 name the sysctl governs v6 binds too. 443 is the lowest port any
# host-network service on these single-purpose hosts needs.
- name: Allow unprivileged bind to :443 (host-network proxy runs non-root)
ansible.posix.sysctl:
name: net.ipv4.ip_unprivileged_port_start
value: "443"
sysctl_file: /etc/sysctl.d/90-netbird-proxy.conf
state: present
reload: true
# Deliberately does NOT notify "Restart netbird proxy". The "Start
# netbird-proxy" task below runs `docker compose up -d` on every pass, which
# already recreates exactly those services whose definition changed. Notifying