Ich habe nur wenige Systemadministratoren gesehen, die /sbin/nologin verwenden und wenige verwenden /bin/false um einem bestimmten Benutzer auf Unix-Rechnern den Shell-Zugriff zu verweigern. Aber ich habe mich gefragt, was der Unterschied zwischen /bin/false ist &/sbin/nologin und was ist der richtige Weg, einem Benutzer den Zugriff auf eine Shell zu verweigern. Nun, dieses Tutorial erklärt, was der Unterschied zwischen /bin/false ist &/sbin/nologin .
Was ist der Unterschied zwischen /bin/false &/sbin/nologin?
Zunächst einmal sollte ich in Bezug auf die Funktionalität sagen, dass es keinen Unterschied zwischen /bin/false gibt &/sbin/nologin . Das bedeutet, dass beide einer Shell den Zugriff auf ein bestimmtes Benutzerkonto verweigern.
Allgemeine Verwendung von /sbin/login &/bin/false
test:x:2935:2936::/home/test:/sbin/nologin
test:x:2935:2936::/home/test:/bin/false
Aber es gibt einen kleinen Unterschied –
/bin/false tut nichts und wird nur mit einem Statuscode beendet, der einen Fehler anzeigt, wenn ein Benutzer versucht, sich bei der Maschine anzumelden. Es gibt keine Meldung aus, die darauf hinweist, dass das Benutzerkonto keinen Shell-Zugriff hat.
Wohingegen /sbin/nologin verweigert höflich einen Shell-Zugriff für ein bestimmtes Benutzerkonto und existiert mit einem Statuscode ungleich Null. Zum Beispiel, wenn ein Benutzerkonto auf /sbin/nologin eingestellt ist als Shell, dann nologin zeigt „Dieses Konto ist derzeit nicht verfügbar an ‘.
#su - test This account is currently not available.
nologin kann auch eine benutzerdefinierte Nachricht aus /etc/nologin.txt lesen , falls vorhanden.
#vim /etc/nologin.txt
Geben Sie eine benutzerdefinierte Nachricht mit dem Inhalt „Dies ist kein gültiges Anmeldekonto – Administrator ein “.
Beide /bin/false &/sbin/nologin protokolliert die Anmeldeversuche in /var/log/secure .
Oct 26 09:43:37 test.tg.in su: pam_unix(su-l:session): session opened for user test Oct 26 09:43:37 test.tg.in su: pam_unix(su-l:session): session closed for user test
Blick auf die Manpages von nologin und falsch .
# man nologin # man false
Erfahren Sie mehr über Best Practices zum Sichern von Betriebssystem, Datenbank, Webserver und WordPress .
nologin oder false, was ist besser?
false ist ein traditioneller Ansatz, der viel vor nologin aufkam . /sbin/nologin hat die Fähigkeit, eine benutzerdefinierte Nachricht anzuzeigen, sodass jeder Administrator diese verwenden möchte. In Bezug auf die Funktionalität tun beide dasselbe, indem sie keinen Shell-Zugriff zulassen.
Standardmäßig wird MySQL als mysql-Benutzer mit /bin/bash-Shell-Zugriff ausgeführt. Warum? Erfahren Sie hier
Also welches verwendest du? Sagen Sie es uns im Kommentarbereich.