Recargar Apache usando el usuario ACME

Recargar Apache usando el usuario ACME

Ejecuto un servidor web en Debian 10 (Buster) y Apache 2.4.38. Creé un usuario especial acmeque ejecuta scripts para renovar certificados TLS.

$ cat /etc/passwd | grep ^acme
acme:x:1002:1002::/var/acme:/usr/bin/nologin
$ cat /etc/group | grep ^acme
acme:x:1002:

A este acmeusuario se le debe permitir recargar la configuración de Apache 2 después de que se renovaron los certificados. Entonces agregué esta línea a mi /etc/sudoersuso visudo(8):

%acme   ALL=(root) NOPASSWD: /etc/init.d/apache2 reload

Desafortunadamente, esto no funciona:

$ 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!

¿Me he perdido algo?

Respuesta1

NecesitasSERel usuario acme cuando ejecuta Sudo, no con -u acme.

acme@host:~ $ sudo /etc/init.d/apache2 reload

Otro posible problema:

El %contenido en su archivo sudoers indica que acmees un grupo. Esto no es un problema cuando su usuario está en un grupo llamado acme, pero sí lo es si no lo está.

información relacionada