Zoeken op website

Hoe u normale gebruikersaanmeldingen in Linux kunt blokkeren of uitschakelen


Als systeembeheerder zult u op een gegeven moment onvermijdelijk gepland systeemonderhoud uitvoeren. Een paar keer kan uw systeem ook een of meer problemen tegenkomen en zult u gedwongen worden het neer te leggen om de problemen op te lossen. Wat de situatie ook is, het is een goed idee om te voorkomen dat niet-root (normale) gebruikers verbinding maken met het systeem.

Lees ook: SSH Root Login in- of uitschakelen en SSH-toegang beperken in Linux

In dit artikel beschrijven we hoe je aanmeldingen van niet-rootgebruikers kunt blokkeren met behulp van het bestand /etc/nologin en een nologin-shell in Linux. We zullen bekijken hoe u een bericht kunt instellen dat aan gebruikers uitlegt wat er feitelijk gebeurt.

Hoe u gebruikersaanmeldingen kunt blokkeren met het bestand /etc/nologin

De primaire functie van het bestand /etc/nologin is het weergeven van een bericht (opgeslagen in het bestand) voor gebruikers die proberen in te loggen op een systeem tijdens het afsluitproces.

Zodra het bericht aan de gebruiker is weergegeven, wordt de aanmeldingsprocedure beëindigd, waardoor de gebruiker niet meer op het systeem kan inloggen.

Dit kan worden gebruikt om het inloggen van gebruikers te blokkeren door het bestand als volgt handmatig te maken.

vi /etc/nologin

Voeg het onderstaande bericht toe aan het bestand, dat wordt getoond aan gebruikers die proberen in te loggen op het systeem.

The Server is down for a routine maintenance. We apologize for any inconvenience caused, the system will be up and running in 1 hours time. For more information, contact the system admin [email . 

Nu kun je testen of het allemaal werkt; zoals je kunt zien in de onderstaande schermafdruk, kan een normale gebruiker tecmint niet inloggen.

Hoe u gebruikersaanmeldingen kunt blokkeren met nologin Shell

Deze methode werkt een beetje anders: het blokkeert alleen de toegang van een gebruiker tot een shell. Maar hij of zij kan inloggen op het systeem via programma's zoals ftp, die niet noodzakelijkerwijs een shell nodig hebben voordat de gebruiker verbinding kan maken met een systeem.

Bovendien kunt u hiermee shell-toegang voor specifieke gebruikers blokkeren in speciale scenario's.

Op RHEL/CentOS/Fedora

Gebruik eenvoudigweg de opdracht chsh (shell wijzigen) om de gebruikersshell in het bestand /etc/passwd te wijzigen van iets als /bin/bash of /bin/sh naar /sbin/nologin betekent een login weigeren.

chsh -s /bin/nologin tecmint

Op Debian/Ubuntu

Hier moet u het bestand /bin/false gebruiken. Met de onderstaande opdracht wordt de tecmint shell van de gebruiker gewijzigd in /bin/false, wat betekent dat er niets moet worden gedaan (nadat de gebruiker inloggegevens heeft opgegeven):

sudo chsh -s /bin/false tecmint

Misschien vindt u het ook leuk om de volgende gerelateerde artikelen te lezen.

  1. Hoe u root-login in Ubuntu in- en uitschakelt
  2. Opnieuw instellen/herstellen van het vergeten rootgebruikersaccountwachtwoord in RHEL/CentOS 7
  3. Hoe u SFTP-gebruikers kunt beperken tot thuismappen met behulp van chroot Jail
  4. Hoe lokale, gebruikers- en systeembrede omgevingsvariabelen in Linux in en uit te schakelen

Dat is het voor nu! Als u vragen of aanvullende ideeën heeft over dit onderwerp, kunt u gebruik maken van het onderstaande opmerkingenformulier.