![ACME 사용자를 사용하여 Apache 다시 로드](https://rvso.com/image/768945/ACME%20%EC%82%AC%EC%9A%A9%EC%9E%90%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20Apache%20%EB%8B%A4%EC%8B%9C%20%EB%A1%9C%EB%93%9C.png)
저는 Debian 10(Buster) 및 Apache 2.4.38에서 웹 서버를 실행합니다. acme
TLS 인증서 갱신을 위한 스크립트를 실행하는 특수 사용자를 만들었습니다 .
$ cat /etc/passwd | grep ^acme
acme:x:1002:1002::/var/acme:/usr/bin/nologin
$ cat /etc/group | grep ^acme
acme:x:1002:
이 acme
사용자는 인증서가 갱신된 후 Apache 2 구성을 다시 로드할 수 있어야 합니다. 그래서 나는 다음을 /etc/sudoers
사용 하여 다음 줄을 추가했습니다 visudo(8)
.
%acme ALL=(root) NOPASSWD: /etc/init.d/apache2 reload
불행히도 이것은 작동하지 않습니다.
$ sudo -u acme /etc/init.d/apache2 reload
[....] Reloading apache2 configuration (via systemctl): apache2.serviceFailed to reload apache2.service: Access denied
See system logs and 'systemctl status apache2.service' for details.
failed!
내가 뭔가를 놓친 걸까요?
답변1
당신은BE가 아닌 sudo를 실행할 때 사용자 acme입니다 -u acme
.
acme@host:~ $ sudo /etc/init.d/apache2 reload
또 다른 가능한 문제:
%
sudoers 파일의 는 그룹임을 나타 냅니다 acme
. 사용자가 라는 그룹에 있을 때는 문제가 되지 않지만 acme
그렇지 않은 경우에는 문제가 됩니다.