Permission Denied Issue in Acme.sh Standalone Mode

Mindwatering Incorporated

Author: Tripp W Black

Created: 11/09 at 10:25 PM

 

Category:
Linux
NGINX

Issue:


Container with acme.sh failing on LetsEncrypt production renewal.
Error:
...
socat[6789] E bind(5, {AF=2 0.0.0.0:80}, 16): Permission denied
...

Solution:


Acme.sh is not intended to be run w/root or sudo. Non root containers cannot use lower ports. Therefore, socot cannot check port 80.

Workaround/Solution:
Run in container before the acme.sh run (if not using persistent storage). Otherwise, just run once.
If container doesn't have the current user w/sudo (which is likely), will have to manually set first with a root login.
$ sudo setcap 'cap_net_bind_service=+ep' /usr/bin/socat



previous page

×