Um sicherzustellen, dass ein Benutzer, der das System rebootet und Zugriff auf die Konsole hat, nicht einfach am Bootprompt
init=/bin/sh
eingibt und sich damit eine Single-User-Shell erschleicht und einfach in das System einbrechen kann, sollte man den Bootprompt absichern. Nichts einfacher als das.
Zuerst sollte man sich einen md5-Hash für das Grub-Passwort erzeugen. Schön, dass Grub dafür gleich das entsprechende Werkzeug mitbringt:
grub-md5-crypt Password: Retype password: $1$Ki6fc/$TdYOWM/XokvdhZoF/B/8v.
Dazu also einfach den o.g. Befehl aufrufen, zwei Mal das gewünschte Passwort eingeben und man erhält einen md5-Hash, den Grub verwenden kann. Wer es gerne ausprobieren möchte, das Passwort ist „test“.
Jetzt zur Konfiguration. Die erfolgt in
/boot/grub/menu.lst
Hier unter dem Bereich
## password ['--md5'] passwd
folgende Zeile hinzufügen
password --md5 $1$Ki6fc/$TdYOWM/XokvdhZoF/B/8v.
Als MD5-Passwort-String ist der vorher generierte zu verwenden. Wie man der Beschreibung des Bereiches entnehmen kann, kann man das Passwort auch im Klartext setzen. Aber warum ein Sicherheitsrisiko eingehen, wenn es nicht notwendig ist.
Damit kann man die Boot-Prompt-Zeilen nicht mehr ohne Passwort editieren.
Schön und gut. Aber den Single-User-Modus, der automatisch von Grub immer mit eingerichtet wird kann immer noch gestartet werden. Um das zu verhindern, muss folgender Parameter geändert werden:
Von
# lockalternative=false
auf
# lockalternative=true
Damit muss dass Passwort auch für das Starten aller nicht-Default-Zeilen eingegeben werden.
Zum Schluss noch ein
update-grub
damit Grub, die lockalternative-Direktive übernimmt.