Caddy «слушай tcp: 443: bind: в доступе отказано»

13

Сервер Caddy не запускается и отображает эту ошибку после обновления до v0.9.3:

listen tcp :443: bind: permission denied

Я работал caddy с systemd в качестве пользователя caddy. Я проверил, что бинарный файл действительно принадлежит caddy.

Кит
источник

Ответы:

9

Если вы используете systemd v229 или новее, вы можете сделать это, не предоставляя двоичные возможности по сути:

AmbientCapabilities=CAP_NET_BIND_SERVICE
Дункан Х Симпсон
источник
Кэддите Systemd примера конфигурация также упоминает использование CapabilityBoundingSet=CAP_NET_BIND_SERVICE.
Кит
17

Это не проблема кэдди и не проблема с разрешениями пользователей. Linux не позволяет процессам прослушивать порты низкого уровня по умолчанию.

Чтобы предоставить доступ:

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

source: superuser: Разрешить привязку процесса без полномочий root к портам 80 и 443?

Кит
источник