Назад | Перейти на главную страницу

Кэдди «слушай tcp: 443: bind: в разрешении отказано»

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

listen tcp :443: bind: permission denied

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

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

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

sudo setcap CAP_NET_BIND_SERVICE=+eip $(which caddy)

источник: суперпользователь: разрешить некорневому процессу связываться с портами 80 и 443?

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

AmbientCapabilities=CAP_NET_BIND_SERVICE