web-dev-qa-db-fra.com

Comment empêcher la mise hors tension / arrêt / redémarrage / suspension / veille prolongée par des utilisateurs non root dans Ubuntu Xenial 16.04?

Des questions similaires ont été posées à ce sujet ici, mais je les ai essayées en vain. Je soupçonne que ce qui fonctionnait dans le passé n’a pas fonctionné dans les dernières versions d’Ubuntu. J'utilise Ubuntu Xenial 16.04.

J'ai essayé ce qui suit:

1.

pico /etc/polkit-1/50-local.d/disable-shutdown.pkla

Puis remplissez le fichier avec:

[Disable shutdown/restart etc. for users]
Identity=unix-user:a;unix-group:b;
Action=org.freedesktop.login1.reboot;org.freedesktop.login1.reboot-multiple-sessions;org.freedesktop.login1.power-off;org.freedesktop.login1.power-off-multiple-sessions;org.freedesktop.consolekit.system.stop;org.freedesktop.consolekit.system.restart;org.freedesktop.upower.suspend;org.freedesktop.upower.hibernate;org.freedesktop.login1.suspend;org.freedesktop.login1.suspend-multiple-sessions;org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultAny=no
ResultInactive=no
ResultActive=no

2.

chmod o-x /sbin/shutdown
chmod o-x /sbin/reboot

Ces méthodes n'ont pas fonctionné pour moi. Je pouvais toujours redémarrer le serveur avec un compte non root après avoir entré le mot de passe:

 Sudo reboot

EDIT: Avec le compte de xxx:

Sudo -l

donne

Matching Defaults entries for xxx on scw-415fa7:
    env_reset, mail_badpass,
    secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:
                /usr/bin\:/sbin\:/bin\:/snap/bin

User xxx may run the following commands on scw-415fa7:
    (ALL : ALL) ALL

.

Sudo grep xxx /etc/sudoers* -R

donne

/etc/sudoers:xxx ALL=(ALL:ALL) ALL
1
Chong Lip Phang

Je pense avoir résolu mon problème avec ceci sur le compte root:

visudo

Puis commentez cette ligne:

#xxx ALL=(ALL:ALL) ALL
0
Chong Lip Phang

Si vous voulez donner accès uniquement à root, vous pouvez faire:

chmod 700 /sbin/reboot
chmod 700 /sbin/shutdown
0