Sådan deaktiveres kommandoer til nedlukning og genstart i Linux


Lukningskommandoen planlægger et tidspunkt, hvor et Linux-system slukkes, det kan lige så godt bruges til at standse, slukke eller genstarte maskinen, når den påberåbes med bestemte muligheder og genstart instruerer systemet om at genstarte.

Visse Linux-distroer som Ubuntu, Linux Mint, Mandriva for blot at nævne nogle få gør det muligt at genstarte/stoppe/lukke systemet som en normal bruger som standard. Dette er ikke ideel indstilling, især på servere, det skal være noget at bekymre sig om, især for en systemadministrator.

I denne artikel vil vi vise, hvordan du deaktiverer lukning og genstart af kommandoer for normale brugere i Linux.

Deaktiver kommandoer til nedlukning og genstart i Linux

Den nemmeste måde at deaktivere nedlukning og genstart af kommandoer ved hjælp af filen/etc/sudoers, her kan du angive en bruger (tecmint) eller gruppe (udviklere), som ikke har tilladelse til at udføre disse kommandoer.

# vi /etc/sudoers

Føj disse linjer til sektionen Kommandealiaser.

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

Prøv nu at udføre nedlukning og genstarte kommandoer som normail-bruger (tecmint).

En anden måde er at fjerne eksekveringstilladelser ved lukning og genstart kommandoer for alle brugere undtagen root.

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

Bemærk: Under systemd er disse filer (/ sbin/shutdown,/sbin/reboot,/sbin/halt,/sbin/poweroff) kun symbolske links til/bin/systemctl:

# ls -l /sbin/shutdown
# ls -l /sbin/reboot
# ls -l /sbin/halt
# ls -l /sbin/poweroff

For at forhindre andre brugere i at køre disse kommandoer, skal du blot fjerne eksekveringstilladelser som forklaret ovenfor, men dette er ikke effektivt under systemd. Du kan fjerne tilladelser til udførelse på /bin/systemctl hvilket betyder at alle andre brugere undtagen root kun kører systemctl.

# chmod  o-x /bin/systemctl

Det kan også være en god idé at lære at deaktivere visse funktioner, såsom SSH root login og begrænse SSH-adgang, SELinux, uønskede tjenester i Linux ved at læse gennem disse vejledninger:

  1. Sådan aktiveres og deaktiveres root-login i Ubuntu
  2. Sådan deaktiveres SELinux midlertidigt eller permanent i RHEL/CentOS 7/6
  3. Deaktiver eller aktiver SSH root-login og begræns SSH-adgang i Linux
  4. Sådan stoppes og deaktiveres uønskede tjenester fra Linux-system

Det er det! I denne artikel viste vi, hvordan du deaktiverer lukning og genstart af kommandoer for normale systembrugere i Linux. Kender du nogen anden måde at gøre dette på, del det med os i kommentarerne.