[erledigt] Booten mit nur einer Passworteingabe
[erledigt] Booten mit nur einer Passworteingabe
Für meine Tochter habe ich auf ihrem neuen Laptop Dualboot mit Debian 12 und Windows eingerichtet. /boot ist unverschlüsselt, Swap und Root-Partition sind verschlüsselt und haben beide dasselbe Passwort.
Nun ist es natürlich umständlich, zweimal das Passwort einzugeben. Lässt sich das auf die Schnelle (ich übergebe ihr den Laptop am Wochenende) ändern, dass das Passwort nur einmal eingegeben werden muss? Ich habe eine 12½ Jahre alte Anleitung gefunden, wie man die verschlüsselte Swap nachträglich mit einem Keyfile versorgen kann, so dass die Passwortabfrage dafür entfällt. Aber das scheint mir sehr aufwendig und nicht mehr up to date zu sein. Gibt es eine aktuelle Anleitung dafür?
Nun ist es natürlich umständlich, zweimal das Passwort einzugeben. Lässt sich das auf die Schnelle (ich übergebe ihr den Laptop am Wochenende) ändern, dass das Passwort nur einmal eingegeben werden muss? Ich habe eine 12½ Jahre alte Anleitung gefunden, wie man die verschlüsselte Swap nachträglich mit einem Keyfile versorgen kann, so dass die Passwortabfrage dafür entfällt. Aber das scheint mir sehr aufwendig und nicht mehr up to date zu sein. Gibt es eine aktuelle Anleitung dafür?
Zuletzt geändert von Ulidor am 17.11.2023 23:59:11, insgesamt 1-mal geändert.
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.
Re: Booten mit nur einer Passworteingabe
Bei mir mache ich die Verschlüsselung mit luks, eine Partition gross genug für / und /swap, darin dann ein LVM mit 2 logischen Volumes für / und /swap. In diesem Setup wird nur ein PW benötigt. Dazu müsste es viele Tutorials im Netz geben.
/home liegt immer auf einem separaten Laufwerk, auch luks-verschlüsselt. Da ich Devuan nutze weil ich vor vielen Jahren eine 2te und weitere Entschlüsselung(en) mit systemd nicht hinbekommen habe, ist mein Vorgehen anders als bei Debian.
Aber Du könntest z.B. auch ein Skript @reboot für /swap versuchen, es gibt auch keyfiles und eine Ableitung ala Arch Linux in der crypttab.
Du hast jedenfalls mehrere Möglichkeiten.
/home liegt immer auf einem separaten Laufwerk, auch luks-verschlüsselt. Da ich Devuan nutze weil ich vor vielen Jahren eine 2te und weitere Entschlüsselung(en) mit systemd nicht hinbekommen habe, ist mein Vorgehen anders als bei Debian.
Aber Du könntest z.B. auch ein Skript @reboot für /swap versuchen, es gibt auch keyfiles und eine Ableitung ala Arch Linux in der crypttab.
Du hast jedenfalls mehrere Möglichkeiten.
Re: Booten mit nur einer Passworteingabe
Wie gesagt, das System ist ja schon fertig aufgesetzt und soll auch so bleiben. Einzig mit der Änderung, dass die Passwortabfrage für die Swap-Partition entfallen soll. Von Arch-Linux habe ich auch Anleitungen gefunden. Aber auch das schien mir eher kompliziert zu sein.rhHeini hat geschrieben:16.11.2023 19:15:53Aber Du könntest z.B. auch ein Skript @reboot für /swap versuchen, es gibt auch keyfiles und eine Ableitung ala Arch Linux in der crypttab.
Würde es denn reichen, dass ich für die Swap-Partition ein Keyfile erstellen und nur die crypttab anpassen würde?
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.
Re: Booten mit nur einer Passworteingabe
Sollte gehen. Auf meinen Devuans hab ich das schon gemacht. Brauchst Du ein Kochrezept?
Re: Booten mit nur einer Passworteingabe
Ein Kochrezept wäre nett. Dann könnte ich direkt loslegen.
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.
Re: Booten mit nur einer Passworteingabe
Kannst das natürlich nach Deinen Vorstellungen abwandeln.
Ich würd die entsprechende Zeile für die swap-Partition kopieren, und in der Kopie das none durch keyfile=/root/swap.key ersetzen.
Hinweis zum Key bekanntmachen: Du wirst nach dem Entschlüsselungspasswort gefragt werden.
Wenn das alles durchgelaufen ist, ein update-grub und ein update-initramfs -u -k all hinterher.
Leg Dir eine Kopie des Keyfiles sicher als Backup ab.
Ich hoffe das das bei Bookworm auch so funktioniert wie bei allen Devuan-Versionen mit sysv-init.
Code: Alles auswählen
~$ su -
# cd /root
# dd if=dev/urandom bs=512 count=8 of=swap.key # Erzeugt einen 4k grossen File als Key
# chmod 400 swap.key
# cryptsetup luksAddKey /dev/swap-Partition swap.key # Das richtige Device kennst nur Du
# cd /etc
# nano crypttab
Hinweis zum Key bekanntmachen: Du wirst nach dem Entschlüsselungspasswort gefragt werden.
Wenn das alles durchgelaufen ist, ein update-grub und ein update-initramfs -u -k all hinterher.
Leg Dir eine Kopie des Keyfiles sicher als Backup ab.
Ich hoffe das das bei Bookworm auch so funktioniert wie bei allen Devuan-Versionen mit sysv-init.
- cosinus
- Beiträge: 4227
- Registriert: 08.02.2016 13:44:11
- Lizenz eigener Beiträge: GNU General Public License
- Wohnort: Bremen
Re: Booten mit nur einer Passworteingabe
Auf die Schnelle drei Optionen:Ulidor hat geschrieben:16.11.2023 19:47:20Wie gesagt, das System ist ja schon fertig aufgesetzt und soll auch so bleiben. Einzig mit der Änderung, dass die Passwortabfrage für die Swap-Partition entfallen soll. Von Arch-Linux habe ich auch Anleitungen gefunden. Aber auch das schien mir eher kompliziert zu sein.
Würde es denn reichen, dass ich für die Swap-Partition ein Keyfile erstellen und nur die crypttab anpassen würde?
1.) Prüfen of SWAP überhaupt notwendig ist. Wenn nicht, einfach deaktivieren und die SWAP-Partition löschen.
2.) SWAP nicht mehr als Partition, sondern als Datei zB nach /var/swapfile einrichten.
3.) LUKS-Verschlüsselung deaktivieren und stattdessen im BIOS ein Passwort für die interne SSD setzen, ohne dieses lässt sie sich nicht ansprechen.
Die 4. Option, also LVM, wurde ja schon von @rhHeini erwähnt. Aber da wird wohl eine Neuinstallation fällig.
Re: Booten mit nur einer Passworteingabe
Erst mal vielen Dank, rhHeini, für das Kochrezept!
Ich hab alles so weit erledigt, bis auf die initrd. Die hat anscheinend ein Problem mit meiner Änderung.
Muss noch dazu sagen, dass ich
# update-initramfs: -u -k $(uname -r)
verwendet habe.
(Ich tippe die wichtigste Meldung von Hand ein, da ich ja an einem anderen Rechner sitze:)
cryptsetup: WARNING: nvme0n1p6_crypt: keyfile 'keyfile=/root/swap.key' not found
Die Datei existiert aber. Und für mich klingt das so, als würde „keyfile=" gar nicht erwartet, sondern direkt der Name des Keyfiles(?) Ich probiere das mal...
@ cosinus:
Vermutlich braucht sie gar keine Swap-Partition. Aber ich habe nun 8GiB dafür eingerichtet und vielleicht ist sie ja doch mal nützlich. Wenn ich das nicht hinbekommen sollte, werde ich sie wohl löschen, oder meine Tochter muss damit leben, das Passwort immer zweimal einzugeben.
Ich hab alles so weit erledigt, bis auf die initrd. Die hat anscheinend ein Problem mit meiner Änderung.
Muss noch dazu sagen, dass ich
# update-initramfs: -u -k $(uname -r)
verwendet habe.
(Ich tippe die wichtigste Meldung von Hand ein, da ich ja an einem anderen Rechner sitze:)
cryptsetup: WARNING: nvme0n1p6_crypt: keyfile 'keyfile=/root/swap.key' not found
Die Datei existiert aber. Und für mich klingt das so, als würde „keyfile=" gar nicht erwartet, sondern direkt der Name des Keyfiles(?) Ich probiere das mal...
@ cosinus:
Vermutlich braucht sie gar keine Swap-Partition. Aber ich habe nun 8GiB dafür eingerichtet und vielleicht ist sie ja doch mal nützlich. Wenn ich das nicht hinbekommen sollte, werde ich sie wohl löschen, oder meine Tochter muss damit leben, das Passwort immer zweimal einzugeben.
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.
- cosinus
- Beiträge: 4227
- Registriert: 08.02.2016 13:44:11
- Lizenz eigener Beiträge: GNU General Public License
- Wohnort: Bremen
Re: Booten mit nur einer Passworteingabe
Wie gesagt, richte SWAP als File ein. Hab ich auch.Ulidor hat geschrieben:16.11.2023 21:32:43@ cosinus:
Vermutlich braucht sie gar keine Swap-Partition. Aber ich habe nun 8GiB dafür eingerichtet und vielleicht ist sie ja doch mal nützlich. Wenn ich das nicht hinbekommen sollte, werde ich sie wohl löschen, oder meine Tochter muss damit leben, das Passwort immer zweimal einzugeben.
Re: Booten mit nur einer Passworteingabe
Ohne „keyfile=" kommt:
cryptsetup: WARNING: Resume target nvme0n1p6_crypt uses a key file
Ich weiß nicht, warum das eine Warnung wert ist, aber es sieht so aus, als würde update-initramfs das akzeptieren.
Ich boote dann mal...
cryptsetup: WARNING: Resume target nvme0n1p6_crypt uses a key file
Ich weiß nicht, warum das eine Warnung wert ist, aber es sieht so aus, als würde update-initramfs das akzeptieren.
Ich boote dann mal...
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.
Re: Booten mit nur einer Passworteingabe
I am sorry, ich hab das aus dem Gedächtnis erstellt ohne nachzusehen wo ich das mal verwendet habe.
Richtig ist: das "none" ersetzen durch den Pfad und den Filenamen des Keys ohne Leerzeichen, das geht bei meinem Laptop. Das "keyfile=" brauchts nicht.
Richtig ist: das "none" ersetzen durch den Pfad und den Filenamen des Keys ohne Leerzeichen, das geht bei meinem Laptop. Das "keyfile=" brauchts nicht.
Re: Booten mit nur einer Passworteingabe
Also ich werde jetzt nur noch nach dem Passwort für die Root-Partition gefragt. Danach kommt aber geschätzt fünfzehn Sekunden nichts. Und dann diese Meldung:
Gave up waiting for suspend/resume device
Dann läuft der Rechner normal hoch.
Und ein
# swapon -s
zeigt mir die Swap-Partition an.
Wer wartet denn auf was und gibt dann das Warten auf? Wird nicht irgendwo in einer Datei in /etc auch eingegeben, welche Partition für suspend/resume verwendet werden soll? Aber da hat sich ja eigentlich nichts geändert.
Gave up waiting for suspend/resume device
Dann läuft der Rechner normal hoch.
Und ein
# swapon -s
zeigt mir die Swap-Partition an.
Wer wartet denn auf was und gibt dann das Warten auf? Wird nicht irgendwo in einer Datei in /etc auch eingegeben, welche Partition für suspend/resume verwendet werden soll? Aber da hat sich ja eigentlich nichts geändert.
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.
Re: Booten mit nur einer Passworteingabe
Das "suspend/resume device" ist die Swap-Partition. Da hat systemd einen Schluckauf. Da weiss ich nicht weiter.
Re: Booten mit nur einer Passworteingabe
Dann muss ich morgen weiter machen und evtl. alles wieder rückgängig machen.rhHeini hat geschrieben:16.11.2023 22:03:47Das "suspend/resume device" ist die Swap-Partition. Da hat systemd einen Schluckauf. Da weiss ich nicht weiter.
Vielen Dank erst mal!
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.
- cosinus
- Beiträge: 4227
- Registriert: 08.02.2016 13:44:11
- Lizenz eigener Beiträge: GNU General Public License
- Wohnort: Bremen
Re: Booten mit nur einer Passworteingabe
Wieso müsst ihr immer zuerst die umständlichsten Wege als erstes gehen?Ulidor hat geschrieben:16.11.2023 22:11:15Dann muss ich morgen weiter machen und evtl. alles wieder rückgängig machen.
Es kann so einfach sein: SWAP deaktivieren, wenn es Probleme gibt einfach als Datei innerhalb von /var einrichten. Da /var auf deiner root partition liegt, musst du auch nur die root partition beim Booten entsperren.
Re: Booten mit nur einer Passworteingabe
Der Kernel wartet darauf, dass er auf das genannte Device (die Swap-Partition) zugreifen kann. Vermutlich hat sich deren UUID geändertUlidor hat geschrieben:16.11.2023 22:02:00... Und dann diese Meldung:
Gave up waiting for suspend/resume device
...
Wer wartet denn auf was und gibt dann das Warten auf? Wird nicht irgendwo in einer Datei in /etc auch eingegeben, welche Partition für suspend/resume verwendet werden soll? Aber da hat sich ja eigentlich nichts geändert.
Vergleiche mal die Ausgabe von
Code: Alles auswählen
blkid <swap-device>
HTH
Gregor
Wenn man keine Probleme hat, kann man sich welche machen. ("Großes Lötauge", Medizinmann der M3-Hopi [und sog. Maker])
Re: Booten mit nur einer Passworteingabe
Auch wenn es jetzt (wahrscheinlich) hinfaellig ist, kann ich die doppelte
Abfrage des Passwortes bei einem aehnichen Setup nicht bestaetigen.
Mein Setup laeuft mit zwei SSDs. Eine fuer Systemzeugs und die andere
fuer Daten.
Beide unabhaengig voneinander mit LUKS Encryption und LVM eingerichtet.
Beide haben die identische Passphrase.
Bei Reboot, bzw. Kaltstart wird nur einmal(!) die Passphrase abgefragt.
Allerdings kann ich mich erinnern, dass nach der Installation und dem ersten
Neustart, ich zweimal die Passphrase eingeben musste. Danach nie mehr.
RootRat
Abfrage des Passwortes bei einem aehnichen Setup nicht bestaetigen.
Mein Setup laeuft mit zwei SSDs. Eine fuer Systemzeugs und die andere
fuer Daten.
Beide unabhaengig voneinander mit LUKS Encryption und LVM eingerichtet.
Beide haben die identische Passphrase.
Code: Alles auswählen
sda disk
├─sda1 part /boot/efi
├─sda2 part /boot
└─sda3 part
└─sda3_crypt crypt
├─server02--vg-swap_1 lvm [SWAP]
├─server02--vg-LOG lvm /var/log
├─server02--vg-TEMP lvm /tmp
├─server02--vg-ROOT lvm /
└─server02--vg-HOME lvm /home
sdb disk
└─sdb1 part
└─sdb1_crypt crypt
└─data02--vg-DATA lvm /data
Allerdings kann ich mich erinnern, dass nach der Installation und dem ersten
Neustart, ich zweimal die Passphrase eingeben musste. Danach nie mehr.
RootRat
Re: Booten mit nur einer Passworteingabe
Da gebe ich dir vollkommen recht. Im Nachhinein sehe ich auch, dass ich das so hätte machen sollen. Aber da ich nun schon eine Partition mit 8GB für Swap eingerichtet habe, möchte ich das nun lieber so zum Laufen bekommen.cosinus hat geschrieben:16.11.2023 22:23:58Wieso müsst ihr immer zuerst die umständlichsten Wege als erstes gehen?
Es kann so einfach sein: SWAP deaktivieren, wenn es Probleme gibt einfach als Datei innerhalb von /var einrichten. Da /var auf deiner root partition liegt, musst du auch nur die root partition beim Booten entsperren.
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.
Re: Booten mit nur einer Passworteingabe
In /etc/fstab ist Swap mit dem Device-Namen angegeben:GregorS hat geschrieben:16.11.2023 22:30:56Der Kernel wartet darauf, dass er auf das genannte Device (die Swap-Partition) zugreifen kann. Vermutlich hat sich deren UUID geändert
/dev/mapper/nvme0n1p6_crypt none swap sw 0 0
Der hat sich ja nicht geändert. (Nur /boot wird per UUID eingebunden.)
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.
- cosinus
- Beiträge: 4227
- Registriert: 08.02.2016 13:44:11
- Lizenz eigener Beiträge: GNU General Public License
- Wohnort: Bremen
Re: Booten mit nur einer Passworteingabe
Ist die interne Disk denn sooo klein, dass du diese 8 GB nicht verschmerzen kannst?
Mit gparted solltest du die aber problemlos vergrößern können. Vergrößern, wenn genug Platz dahinter ist (nach dem Löschen der swap partition), ist eigentlich immer problemlos. Verkleinern ist viel problematischer.
Mit gparted solltest du die aber problemlos vergrößern können. Vergrößern, wenn genug Platz dahinter ist (nach dem Löschen der swap partition), ist eigentlich immer problemlos. Verkleinern ist viel problematischer.
Re: Booten mit nur einer Passworteingabe
Die Swap-Partition liegt vor der Root-Partition, welche ja auch verschlüsselt ist. Ich vermute, das würde mit gparted nicht gehen.
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.
- cosinus
- Beiträge: 4227
- Registriert: 08.02.2016 13:44:11
- Lizenz eigener Beiträge: GNU General Public License
- Wohnort: Bremen
Re: Booten mit nur einer Passworteingabe
Ach davor liegt. Nee, dann geht das nicht.
Re: Booten mit nur einer Passworteingabe
Ich hab den Laptop erst mal wieder auf den Stand der Ausgangssituation gebracht, da ich ihn ja spätestens Sonntag abgeben muss. Bis dahin hätte ich noch Zeit, etwas auszuprobieren, wenn es nicht zu tief ins System eingreift.
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.
- cosinus
- Beiträge: 4227
- Registriert: 08.02.2016 13:44:11
- Lizenz eigener Beiträge: GNU General Public License
- Wohnort: Bremen
Re: Booten mit nur einer Passworteingabe
Also das einfachste ist wie gesagt swap deaktivieren und aus der crypttab dann auch rauszunehmen. Selbst wenn die interne SSD nur 120 oder 250 GB groß ist, die "toten" 8 GB der jetzigen swap wären zu verschmerzen.Ulidor hat geschrieben:17.11.2023 18:37:03Ich hab den Laptop erst mal wieder auf den Stand der Ausgangssituation gebracht, da ich ihn ja spätestens Sonntag abgeben muss. Bis dahin hätte ich noch Zeit, etwas auszuprobieren, wenn es nicht zu tief ins System eingreift.
Wenn du es vernünftig machen willst: alle Daten sichern, auch die Liste der installierten Pakete (mit dpkg -l) dann sauber neu installieren.
Im Setup sollte dann die Partitionierung so aussehen:
1. Partition: EFI System Partition (welche Größe, da scheiden sich die Geister, mit 100 MiB machst du aber nix verkehrt)
2. Partition: /boot (auch hier sind sich die Leute uneins wie groß /boot sein sollte, mit 1 GiB machst du aber nicht viel verkehrt)
3. Partition: Verschlüsselter Container über den gesamten Rest der internen Disk der dann mit LVM eingerichtet wird. Das hat den Vorteil, dass du hier beliebig viele logische Volumes u.a. auch für /home und swap statt traditionellen starren Partitionen definieren kannst und trotzdem muss beim Booten nur 1x der verschlüsselte Container entsperrt werden um an alle Dateisysteme zu kommen
Für Ungeübte kann da aber viel Zeit bei draufgehen und evtl. ist es auch vorteilhafter, bei Bedarf schnell um alten Zustand zurückzukommen. Sprich: neue SSD besorgen, alte ausbauen, neue rein, dann neu installieren wie oben beschrieben. Wenn alles richtig lief kann man per Adapter von der alten SSD Daten zurückkopieren oder wenn alles nichts war, die alte SSD einfach wieder einbauen. Ist aber alles mit Geld, Zeit und Hirnschmalz verbunden. Aber von nix kommt nix!
Re: Booten mit nur einer Passworteingabe
Ja, die 8GB wären zu verschmerzen, da sie ja wahrscheinlich nie zum Einsatz kommen. Aber ich traue mich nicht, swap zu deaktivieren, weil dann sicherlich wieder Warten beim Booten angesagt ist.cosinus hat geschrieben:17.11.2023 18:58:39Also das einfachste ist wie gesagt swap deaktivieren und aus der crypttab dann auch rauszunehmen. Selbst wenn die interne SSD nur 120 oder 250 GB groß ist, die "toten" 8 GB der jetzigen swap wären zu verschmerzen.
Ich kenne ja nur drei Dateien, wo die Swap-Partition eingetragen ist:
/etc/crypttab
/etc/fstab
/etc/initramfs-tools/conf.d/resume
Es scheint aber noch mehr zu geben, sonst wüsste ich nicht, warum das Keyfile zur Wartezeit geführt hat.
Zuerst dachte ich, der Fehler könnte daran liegen, dass sich die UUID geändert hat (hab nicht überprüft, ob das so ist) und in /etc/initramfs-tools/conf.d/resume noch die alte steht. Aber auch in dieser Datei ist die Swap-Partition nicht mit der UUID, sondern mit dem Device-Namen eingetragen, der sich ja nicht geändert hat. Ich hab keine Ahnung, wo da noch was von swap eingetragen sein könnte. grub und initram hatte ich ja angepasst.
Danke für die Tipps zum Neuaufsetzen des Systems, aber so viel Zeit habe ich leider nicht, das jetzt noch hinzubekommen. Damit wäre es noch nicht mal getan, denn ich habe einen Vollständigen Umzug vom alten Laptop meiner Tochter auf den neuen durchgeführt. Sie kann also quasi mit dem neuen da weiter machen, wo sie mit dem alten aufgehört hat. Naja, so in etwa.
Was erhält man, wenn man einen Windows-PC abschaltet? – Ausgemachten Blödsinn.