Come disabilitare i comandi di spegnimento e riavvio in Linux
Il comando shutdown pianifica un orario per lo spegnimento di un sistema Linux, può anche essere utilizzato per arrestare, spegnere o riavviare la macchina quando richiamato con opzioni particolari e riavviare ordina al sistema di riavviarsi.
Alcune distribuzioni Linux come Ubuntu, Linux Mint, Mandriva, solo per citarne alcune, consentono di riavviare/arrestare/spegnere il sistema come utente normale, per impostazione predefinita. Questa non è l'impostazione ideale soprattutto sui server, deve essere qualcosa di cui preoccuparsi soprattutto per un amministratore di sistema.
In questo articolo, mostreremo come disabilitare i comandi di spegnimento e riavvio per i normali utenti di Linux.
Disabilita i comandi di spegnimento e riavvio in Linux
Il modo più semplice per disabilitare i comandi shutdown e reboot utilizzando il file /etc/sudoers, qui puoi specificare un utente (tecmint<) o gruppo (sviluppatori) a cui non è consentito eseguire questi comandi.
vi /etc/sudoers
Aggiungi queste righe alla sezione Alias di comando.
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
Ora prova ad eseguire i comandi shutdown e reboot come utente normale (tecmint).
Un altro modo è rimuovere i permessi di esecuzione sui comandi di spegnimento e riavvio per tutti gli utenti tranne root.
chmod o-x /sbin/shutdown
chmod o-x /sbin/reboot
Nota: sotto systemd, questi file (/sbin/shutdown, /sbin/reboot, /sbin/halt, /sbin/poweroff) sono solo collegamenti simbolici a /bin /sistemactl:
ls -l /sbin/shutdown
ls -l /sbin/reboot
ls -l /sbin/halt
ls -l /sbin/poweroff
Per impedire ad altri utenti di eseguire questi comandi, rimuoveresti semplicemente i permessi di esecuzione come spiegato sopra, ma ciò non è efficace con systemd. Puoi rimuovere i permessi di esecuzione su /bin/systemctl
, il che significa che tutti gli altri utenti tranne root eseguiranno solo systemctl.
chmod o-x /bin/systemctl
Potresti anche voler imparare come disabilitare alcune funzionalità come l'accesso root SSH e limitare l'accesso SSH, SELinux, servizi indesiderati in Linux leggendo queste guide:
- Come abilitare e disabilitare l'accesso root in Ubuntu
- Come disabilitare SELinux temporaneamente o permanentemente in RHEL/CentOS 7/6
- Disabilita o abilita l'accesso root SSH e limita l'accesso SSH in Linux
- Come arrestare e disattivare i servizi indesiderati dal sistema Linux
Questo è tutto! In questo articolo, abbiamo mostrato come disabilitare i comandi di spegnimento e riavvio per i normali utenti del sistema Linux. Conosci qualche altro modo per farlo, condividilo con noi nei commenti.