$cat /etc/passwd |grep -i root
root:x:0:0:root:/root:/bin/bash
$sudo cat /etc/shadow |grep -i root
root:!:17179:0:99999:7:::
Bedeutet im zweiten Feld der Schattendatei, !
dass sich der Root-Benutzer nicht anmelden kann, aber warum kann ich mich beim Root-Benutzer anmelden sudo su
?
Warum kann ich mich nicht mit su root
oder beim Root-Benutzer anmelden su -
?
permissions
sudo
passwd
shadow
Sinoosh
quelle
quelle
Antworten:
Ein
!
imshadow
verschlüsselten Passwortfeld des Eintrags bedeutet, dass sich kein Passwort dafür authentifizieren kann. Vonman shadow
:Wie im Handbuch angegeben, bedeutet dies nicht , dass Sie sich nicht als root anmelden können. Dies bedeutet lediglich, dass Sie sich nicht mit einem Kennwort für das Root-Konto als root anmelden können. (Sie können sich über SSH mit SSH-Schlüsseln als root anmelden, wenn Sie es zuvor konfiguriert haben, auch wenn das Konto gesperrt ist.)
sudo
Normalerweise authentifiziert er sich mit Ihrem Passwort, nicht mit dem von root. Dies kann durch Setzen eines geändert werdentargetpw
,rootpw
oderrunaspw
insudoers
. Wenn Sie eine dieser Optionen festlegen und versuchen, ein Kennwort zu verwenden, wenn das Kennwort gesperrt ist , schlägt dies fehl .quelle
Schauen wir uns nun die Befehle entsprechend an:
sudo su
::sudo
führt den Befehlsu
(Ersatzbenutzer) mit Root-Rechten aus, sodass auch dann Befehle mit Root-Rechten ausgeführt werden, wenn der/etc/shadow
sagt oder hatroot:!:17179:0:99999:7:::
.su -
odersu root
:/etc/shadow
Datei nicht einloggen kann , um diese Befehle nicht funktionieren. Wenn Sie möchten, dass sie funktionieren, muss das Root-Konto durch Eingabe eines Kennworts entsperrt werden.Zusammenfassung:
su -
0rsu root
wechselt zu Benutzer root , ist nicht vorhanden, kann also nicht passieren,sudo su
führt jedoch den Befehl switch mitroot
Berechtigungen aus. In diesem Fall wird er ausgeführt, wenn Sie in dersudo
Gruppe sind. In diesem Fall melden Sie sich nicht als root an , sondern nur als root, damit es losgeht.Quelle: Was ist der Unterschied zwischen 'su -' und 'su root'?
quelle
sudo su
es, dass keine Passfelder in der Schattendatei angezeigt werden?sudo su
ist der falsche Weg zu laufensudo sh
odersudo bash
.