Hvordan passordbeskytte enkeltbrukermodus i CentOS 7


I en av våre tidligere artikler beskrev vi hvordan du starter opp i enkeltbrukermodus på CentOS 7. Det er også kjent som «vedlikeholdsmodus», der Linux bare starter en håndfull tjenester for grunnleggende funksjonalitet for å tillate en enkelt bruker (vanligvis en superbruker) utføre visse administrative oppgaver som å bruke fsck for å reparere korrupte filsystemer.

I enkeltbrukermodus kjører systemet et enkeltbrukerskall hvor du kan kjøre kommandoer uten noen påloggingsinformasjon (brukernavn og passord), du lander rett i et begrenset skall med tilgang til hele filsystemet.

Dette er et massivt sikkerhetshull siden det gir inntrengere direkte tilgang til et skall (og mulig tilgang til hele filsystemet). Derfor er det viktig å passordbeskytte enkeltbrukermodusen på CentOS 7 som forklart nedenfor.

I CentOS/RHEL 7 er rednings- og nødmålene (som også er enkeltbrukermoduser) passordbeskyttet som standard.

For eksempel når du prøver å endre målet (runlevel) via systemd til rescue.target (også emergency.target), vil du bli bedt om et root-passord som vist i følgende skjermbilde.

# systemctl isolate rescue.target
OR
# systemctl isolate emergency.target

Imidlertid, hvis en inntrenger har fysisk tilgang til en server, kan han eller hun velge en kjerne som skal startes opp fra grub-menyen ved å trykke e-tasten for å redigere det første oppstartsalternativet.

På kjernelinjen som starter med \linux16\, kan han/hun endre argumentet ro til \rw init=/sysroot/bin/ sh” og start opp i enkeltbrukermodus på CentOS 7 uten at systemet ber om et root-passord, selv om linjen SINGLE=/sbin/sushell endres til SINGLE=/ sbin/sulogin i filen /etc/sysconfig/init.

Så den eneste måten å passordbeskytte enkeltbrukermodus i CentOS 7 er å beskytte GRUB med passord ved å bruke følgende instruksjoner.

Hvordan passordbeskytte Grub i CentOS 7

Lag først et sterkt kryptert passord ved å bruke grub2-setpassword-verktøyet som vist.

# grub2-setpassword

Hash for passordet er lagret i /boot/grub2/user.cfg og bruker dvs. root er definert i filen /boot/grub2/grub.cfg, du kan se passordet ved å bruke cat-kommandoen som vist.

# cat /boot/grub2/user.cfg

Åpne nå filen /boot/grub2/grub.cfg og søk etter oppstartsoppføringen du vil passordbeskytte, den starter med menyoppføring. Når oppføringen er funnet, fjern parameteren --unrestricted fra den.

Lagre filen og lukk, prøv nå å starte CentOS 7-systemet på nytt og endre oppstartsoppføringene ved å trykke e-tasten, du vil bli bedt om å oppgi legitimasjonen som vist.

Det er det. Du har passordbeskyttet CentOS 7 GRUB-menyen.