Caddy "listen tcp: 443: bind: Erlaubnis verweigert"

13

Der Caddy-Server konnte nach dem Upgrade auf v0.9.3 nicht gestartet werden und zeigte diesen Fehler an:

listen tcp :443: bind: permission denied

Ich habe Caddy mit systemd als Benutzer ausgeführt caddy. Ich überprüfte, ob die Binärdatei tatsächlich im Besitz von war caddy.

Keith
quelle

Antworten:

9

Wenn Sie systemd v229 oder höher ausführen, können Sie dies tun, ohne die Binärfunktionen direkt anzugeben:

AmbientCapabilities=CAP_NET_BIND_SERVICE
Duncan X Simpson
quelle
In der Caddy-System-Beispielkonfiguration wird auch using erwähnt CapabilityBoundingSet=CAP_NET_BIND_SERVICE.
Keith
17

Es handelt sich weder um ein Caddy-Problem noch um ein Problem mit den Benutzerberechtigungen. Linux lässt standardmäßig nicht zu, dass Prozesse Low-Level-Ports überwachen.

So gewähren Sie Zugriff:

sudo setcap CAP_NET_BIND_SERVICE=+eip /path/to/caddy

Quelle: Superuser: Nicht-Root-Prozess an Port 80 und 443 binden lassen?

Keith
quelle