Abseits der aktuellen FreeBSD-Serie, möchte ich heute kurz zeigen, wie man unter FreeBSD eine Password Reset für den Nutzer root umsetzt. Es mag durchaus mal vorkommen, dass man mal sein Passwort vergisst und schon war’s das mit den Root-Rechten und der System-Administration. Empfehlungen für Passwort-Manager gibt es hier, damit so etwas nicht vorkommt. Andernfalls besteht bei FreeBSD, sowie auch bei vielen anderen Linux- oder UNIX-Systemen die Möglichkeit im so genannten Single-User Mode das Passwort für root zu ändern.
Was ist der Single-User-Mode?
Gute Frage. Der Single-User Mode ist ein Modus, den man auf dem Startbildschirm von FreeBSD auswählen kann. In der Regel wird der Modus dafür genutzt, ein System zu reparieren oder eben das Passwort von root zu ändern. Hierbei ist keine Netzwerkverbindung vorhanden und daraus resultierend auch keine Remote-Verbindung. Aber es ist dem Administrator möglich vollständig, ohne Passwort, auf das System zu zugreifen. Halten wir fest, es ist also ein Zugriff auf den physischen Server mit Tastatur möglich, sofern es keine virtualiserte Maschine, wie in diesem Beispiel ist. [2]
Password Reset durchführen
Zuerst Booten wir ganz normal das System und warten auf den Startbildschirm. Hierbei laufen 10 Sekunden herunter. Diesen Timer können wir unterbrechen, indem wir die Leertaste drücken. Nun können wir in Ruhe lesen, welche Auswahloptionen uns zur Verfügung stehen. Hier sehen wir, dass der Single-User Mode an zweiter Stelle steht. Diesen können wir mit dem Drücken der Taste 2 auswählen.
Nachdem das System erfolgreich in den Single-User Mode gestartet ist, sollte FreeBSD folgenden Output anzeigen:
When prompted Enter full pathname of shell or RETURN for /bin/sh:
Das ist der Punkt, an dem wir die Password Reset ausführen können. Drückt die ENTER-Taste und schon habt ihr Zugriff auf das System als root-Nutzer ohne Passwort. Doch an der Stelle muss das Filesystem / (root) neu als read/write (rw) gemountet werden, damit unsere Änderungen überhaupt wirksam werden.
mount -u /
mount -a
Als letzten Schritt, erfolgt die Password Recovery:
passwd
Nun kann ein neues Passwort vergeben werden, welches nochmals bestätigt werden muss. Und schon ist das neue root-Kennwort vergeben und wir können entweder mittels dem Kommando exit aus dem Single-User Mode heraus.
exit
Oder alternativ für einen Neustart:
reboot
Nun könnt ihr euch wie gewohnt direkt als root anmelden oder falls ihr euren eigenen Benutzer verwendet, im Nachgang mit dem Kommando su root-Rechte verschaffen.
Password Reset birgt ein hohes Risiko
Dieses HowTo hat die Password Reset unter FreeBSD gezeigt. Aber nicht nur FreeBSD, sondern auch RHEL (Red Hat Enterprise Linux) oder OpenBSD unterstützen dieses Vorgehen (bestimmt auch weitere). Natürlich ist das auch eine Art von Schwachstelle bzw. bringt ein enormes Risko mit sich. So kann sich jeder, der vor einem Server steht, innerhalb von Sekunden Zugang zum verschaffen. Also, was tun? Genau, wir müssen unser System entsprechend härten. Dazu öffnen wir mit einem Texteditor /etc/ttys.
vi /etc/ttys
Etwas mit der Pfeiltaste runter navigiert findet sich dann folgende Zeile
console none unknown off secure
Um den Single-User Mode abzusichern, müssen wir die obige Zeile anpassen
console none unknown off insecure
Dadurch wird beim Booten in den Single-User Mode nicht kommentarlos eine root-Shell präsentiert, sondern es wird das root-Passwort verlangt. So bleiben also ungebetene Gäste weg von unserem System.
Abschluss
Das beendet auch meinen Artikel zur Password Reset unter FreeBSD. Natürlich hat dieser Vorgang sein Nutzen, aber jeder sollte für sich abwägen, ob das so sinnvoll ist. Deshalb habe ich im letzten Abschnitt auch eine Methode gezeigt, wie man den Single-User Mode zumindest absichert oder für interne Angreifer unzugänglich macht. Nachteil natürlich, ist einem das Passwort entfallen, lässt es sich nicht wiederherstellen. In diesem Sinne, bis zum nächsten Mal!
Start the discussion