Systemd en efecto, manejar el shutdown
, reboot
y otros comandos, y los privilegios predeterminados asignados son permisivas. Para cambiar esto, debe crear una regla Polkit. Cree un .pkla
archivo en /etc/polkit-1/localauthority/50-local.d
(digamos confirm-shutdown.pkla
) que contenga:
[Confirm shutdown]
Identity=unix-user:*
Action=org.freedesktop.login1.*
ResultActive=auth_admin_keep
Los diversos apagado, reinicio, etc. comandos son, en términos polkit, acciones en org.freedesktop.login1
, por ejemplo, org.freedesktop.login1.power-off
, org.freedesktop.login1.reboot
, etc. El problema específico aquí es la configuración por defecto, que se encuentra en /usr/share/polkit-1/actions/org.freedesktop.login1.policy
:
<action id="org.freedesktop.login1.power-off">
<description>Power off the system</description>
...
<defaults>
<allow_any>auth_admin_keep</allow_any>
<allow_inactive>auth_admin_keep</allow_inactive>
<allow_active>yes</allow_active>
</defaults>
Tenga en cuenta que le permite al usuario activo apagar, reiniciar, etc.
pkaction | grep login1
para otras reglas de interés)