Als Systemadministrator werden Sie früher oder später unvermeidlich geplante Systemwartungsarbeiten durchführen. Ein paar Mal kann es auch vorkommen, dass Ihr System auf ein(e) Problem(e) stößt und Sie gezwungen sind, es herunterzufahren, um das Problem(e) zu beheben. In jeder Situation ist es eine gute Idee, zu verhindern, dass Nicht-Root-(normale) Benutzer eine Verbindung zum System herstellen.
Weiterlesen: SSH-Root-Anmeldung deaktivieren oder aktivieren und den SSH-Zugriff in Linux einschränken
In diesem Artikel werden wir beschreiben, wie man Benutzeranmeldungen von Nicht-Root-Benutzern mithilfe der Datei /etc/nologin sowie einer nologin-Shell in Linux blockiert. Wir werden uns ansehen, wie man eine Nachricht einrichtet, die den Benutzern erklärt, was tatsächlich passiert.
So blockieren Sie Benutzeranmeldungen mithilfe der Datei /etc/nologin
Die Hauptfunktion der Datei /etc/nologin besteht darin, eine Nachricht (die in der Datei gespeichert ist) an Benutzer anzuzeigen, die versuchen, sich während des Herunterfahrens am System anzumelden.
Nachdem die Nachricht dem Benutzer angezeigt wurde, wird das Anmeldeverfahren beendet, wodurch verhindert wird, dass der Benutzer sich am System anmeldet.
Dies kann verwendet werden, um die Benutzeranmeldung zu blockieren, indem Sie die Datei manuell wie folgt erstellen.
# vi /etc/nologin
Fügen Sie die unten stehende Nachricht der Datei hinzu, die Benutzern, die versuchen, sich am System anzumelden, angezeigt wird.
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 protected].
Nun können Sie testen, ob alles funktioniert; wie Sie auf dem Bildschirmfoto unten sehen können, kann sich ein normaler Benutzer tecmint
nicht anmelden.

Wie man Benutzeranmeldungen mit dem nologin-Shell sperrt
Diese Methode funktioniert etwas anders: Sie sperrt nur den Zugriff eines Benutzers auf eine Shell. Aber er oder sie kann sich über Programme wie ftp, die keinen Shellzugriff für die Verbindung zum System erfordern, anmelden.
Zusätzlich kann es Ihnen ermöglichen, den Shellzugriff auf bestimmte Benutzer in speziellen Szenarien zu sperren.
Auf RHEL/CentOS/Fedora
Verwenden Sie einfach den Befehl chsh (Shell ändern), um die Shell des Benutzers in der Datei /etc/passwd von etwas wie /bin/bash
oder /bin/sh
in /sbin/nologin
zu ändern, was eine Anmeldung verweigert.
# chsh -s /bin/nologin tecmint
Auf Debian/Ubuntu
Hier müssen Sie die Datei /bin/false verwenden. Der folgende Befehl ändert die Shell des Benutzers tecmint in /bin/false
, was bedeutet, dass nichts passiert (nachdem der Benutzer Anmeldeinformationen bereitgestellt hat):
$ sudo chsh -s /bin/false tecmint
Sie möchten vielleicht auch diese folgenden verwandten Artikel lesen.
- Root-Anmeldung in Ubuntu aktivieren und deaktivieren
- Root-Benutzerkennwort in RHEL/CentOS 7 zurücksetzen/wiederherstellen
- Wie man SFTP-Benutzer auf ihre Home-Verzeichnisse mit Chroot-Jail beschränkt
- Wie man lokale, Benutzer- und systemweite Umgebungsvariablen in Linux setzt und aufhebt
Das war’s für jetzt! Wenn Sie Fragen haben oder zusätzliche Ideen zu diesem Thema teilen möchten, nutzen Sie das Kommentarformular unten.
Source:
https://www.tecmint.com/block-or-disable-normal-user-logins-in-linux/