Die aktuellen Standardeinstellungen für das Root-Konto in /etc/passwd
sind root:x:0:0:root:/root:/bin/bash
.
Warum nicht auf einstellen root:x:0:0:root:/root:/usr/sbin/nologin
?
Die aktuellen Standardeinstellungen für das Root-Konto in /etc/passwd
sind root:x:0:0:root:/root:/bin/bash
.
Warum nicht auf einstellen root:x:0:0:root:/root:/usr/sbin/nologin
?
Antworten:
Wenn dies der Fall wäre, könnten Sie nur Befehle gleichzeitig ausführen sudo
, aber Sie könnten keine Root-Shell starten. Eine Root-Shell ist in vielen Fällen praktisch, z. B. wenn Sie mehrere Befehle hintereinander als Root ausführen möchten.
Konkret konnte man nicht laufen sudo -i
, wie AlexP feststellte. Von man sudo
:
-i, --login Run the shell specified by the target user's password database entry as a login shell.
sudo /bin/bash
?
sudo -s
ich denke (eine root-shell, aber keine root- login- shell). Es ist jedoch ein guter Punkt - und sudo -s
scheint sogar zu funktionieren, wenn /usr/sbin/nologin
-i
, -s
, /bin/bash
, und so weiter durch nur eine weiße Liste von Befehlen ermöglicht, finden Sie in der Dokumentation für die sudoers - Datei. Dies ist so feinkörnig, dass Benutzer beispielsweise /etc/init.d/someservice restart
als Root ausgeführt werden können, ohne dass sie ausgeführt werden müssen /etc/init.d/someservice stop
. Die Ubuntu-Standardeinstellung ist jedoch, kein Kennwort für zu setzen root
und Administratoren zu erlauben, alles mit sudo zu tun. Wahrscheinlich ist die Begründung a) mehr als ein Administrator-Benutzer und b) der Administrator-Benutzer muss sich kein zweites Passwort für das Root-Konto merken.
Neben Alberto Santinis Sudo-Antwort gibt es noch eine (weitaus bessere) Antwort. Wenn die root-Shell auf etwas eingestellt ist, das keine Shell ist, funktioniert das Booten eines einzelnen Benutzers nicht. Es gibt eine Wiederherstellung sulogin
für Dinge wie nicht vorhandene oder vollständig beschädigte Shell, aber es wird nicht funktionieren, wenn die Shell eine gültige Shell zu sein scheint, aber eigentlich keine Shell ist.
Sie können immer noch sudo
direkt eine Shell erhalten, indem Sie die Shell angeben, sudo
sodass sie nicht einmal einen guten Schutz bietet .
sudo -i
?