La fermeture La commande planifie une heure d'arrêt d'un système Linux, elle peut également être utilisée pour arrêter, éteindre ou redémarrer la machine lorsqu'elle est invoquée avec des options particulières et redémarrer ordonne au système de redémarrer.
Certaines distributions Linux telles que Ubuntu, Linux Mint, Mandriva pour n'en citer que quelques-unes, permettent de redémarrer/arrêter/arrêter le système en tant qu'utilisateur normal, par défaut. Ce n'est pas un paramètre idéal, en particulier sur les serveurs, cela doit être un sujet de préoccupation, en particulier pour un administrateur système.
Dans cet article, nous allons montrer comment désactiver l'arrêt et redémarrer commandes pour les utilisateurs normaux sous Linux.
Désactiver les commandes d'arrêt et de redémarrage sous Linux
Le moyen le plus simple de désactiver l'arrêt et redémarrer commandes utilisant /etc/sudoers fichier, ici vous pouvez spécifier un utilisateur (tecmint ) ou groupe (développeurs ) qui ne sont pas autorisés à exécuter ces commandes.
# vi /etc/sudoers
Ajoutez ces lignes aux alias de commande rubrique.
Cmnd_Alias SHUTDOWN = /sbin/shutdown,/sbin/reboot,/sbin/halt,/sbin/poweroff # User privilege specification tecmint ALL=(ALL:ALL) ALL, !SHUTDOWN # Allow members of group sudo to execute any command %developers ALL=(ALL:ALL) ALL, !SHUTDOWN
Essayez maintenant d'exécuter shutdown et redémarrer commandes en tant qu'utilisateur normail (tecmint ).
Une autre méthode consiste à supprimer les autorisations d'exécution lors de l'arrêt et redémarrer commandes pour tous les utilisateurs sauf root.
# chmod o-x /sbin/shutdown # chmod o-x /sbin/reboot
Remarque :Sous systemd, ces fichiers (/sbin/shutdown, /sbin/reboot, /sbin/halt, /sbin/poweroff) ne sont que des liens symboliques vers /bin/systemctl :
# ls -l /sbin/shutdown # ls -l /sbin/reboot # ls -l /sbin/halt # ls -l /sbin/poweroff
Pour empêcher d'autres utilisateurs d'exécuter ces commandes, vous devez simplement supprimer les autorisations d'exécution comme expliqué ci-dessus, mais cela n'est pas efficace sous systemd. Vous pouvez supprimer les autorisations d'exécution sur /bin/systemctl
ce qui signifie que tous les autres utilisateurs, à l'exception de root, n'exécuteront que systemctl.
# chmod o-x /bin/systemctl
Vous voudrez peut-être également apprendre à désactiver certaines fonctionnalités telles que la connexion racine SSH et limiter l'accès SSH, SELinux, les services indésirables sous Linux en lisant ces guides :
- Comment activer et désactiver la connexion racine dans Ubuntu
- Comment désactiver temporairement ou définitivement SELinux dans RHEL/CentOS 7/6
- Désactiver ou activer la connexion racine SSH et limiter l'accès SSH sous Linux
- Comment arrêter et désactiver les services indésirables du système Linux
C'est ça! Dans cet article, nous avons montré comment désactiver les commandes d'arrêt et de redémarrage pour les utilisateurs normaux du système sous Linux. Connaissez-vous une autre façon de procéder, partagez-la avec nous dans les commentaires.