Skip to content

Commit 75dafe5

Browse files
baocinclaude
andcommitted
Fix capability binding with NoNewPrivileges using AmbientCapabilities
- Add AmbientCapabilities=CAP_NET_BIND_SERVICE to systemd service - Add CapabilityBoundingSet=CAP_NET_BIND_SERVICE - Fixes "permission denied" on ports 22/80/443 - NoNewPrivileges=true blocks file capabilities, but AmbientCapabilities works This grants the capability through systemd instead of relying on file capabilities, which is compatible with NoNewPrivileges. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent cc1334d commit 75dafe5

2 files changed

Lines changed: 4 additions & 0 deletions

File tree

deploy/install.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,8 @@ After=network.target
112112
Type=simple
113113
User=gitvet
114114
Group=gitvet
115+
AmbientCapabilities=CAP_NET_BIND_SERVICE
116+
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
115117
WorkingDirectory=/opt/gitvet
116118
Environment="PATH=/usr/local/bin:/usr/bin:/bin"
117119
Environment="XDG_CACHE_HOME=/var/lib/gitvet/cache"

deploy/update.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,8 @@ After=network.target
197197
Type=simple
198198
User=gitvet
199199
Group=gitvet
200+
AmbientCapabilities=CAP_NET_BIND_SERVICE
201+
CapabilityBoundingSet=CAP_NET_BIND_SERVICE
200202
WorkingDirectory=/opt/gitvet
201203
Environment="PATH=/usr/local/bin:/usr/bin:/bin"
202204
Environment="XDG_CACHE_HOME=/var/lib/gitvet/cache"

0 commit comments

Comments
 (0)