Nach Anleitung hier: https://hamy.io/post/0009/how-to-install-luks-encrypted-ubuntu-18.04.x-server-and-enable-remote-unlocking/
Zuerst Ubunutu installieren mit „LVM auf ganzer Platte“ (oder so ähnlich). Dann ist schon alles verschlüsselt, aber man muss die Passphrase immer in der Konsole eingeben. Das kann man ach remote machen:
Dropbear für initramfs installieren:
apt-get install dropbear-initramfs
Angepasste Files:
- In
/etc/initramfs-tools/initramfs.conf
: Nichts – ist aber interessant. - In
/etc/dropbear-initramfs/authorized_keys
die public keys eintragen, von denen aus man später das System entsperren will. - In
/etc/dropbear-initramfs/config
ein paar zusätzliche Sicherheitsoptionen:
DROPBEAR_OPTIONS="-s -j -k -I 60"
Außerdem ließe sich hier der Port verstellen (-p 4748
), damit es nicht zu „REMOTE HOST IDENTIFICATION HAS CHANGED“-Meldungen kommt. Das habe ich aber anders gelöst – s.u. - In
/etc/default/grub
wird eine statische IP für die initramfs-Phase eingesetellt (nicht nötig, wenn DHCP vorhanden):GRUB_CMDLINE_LINUX_DEFAULT="ip=212.11.233.24::212.11.233.30:255.255.255.224"
Danach immer update-initramfs -u
bzw. update-grub
.
Nach dem Reboot läuft dann der dropbear-sshd und man kann sich einloggen ssh -o UserKnownHostsFile=~/.ssh/known_hosts_martinif_initramfs root@myhost
und das Crypt-Passwort mit cryptroot-unlock
eingegeben. Da geht dann auch Cut-Paste 🙂
Noch einfacher geht es „in einem Rutsch“ (dann hat man die Passphrase aber lokal in der Kommandozeile und der History stehen, was je nach Situation ein No-Go ist):
ssh -o UserKnownHostsFile=~/.ssh/known_hosts_myhost root@myhost "echo -ne \"superpassphrase\" > /lib/cryptsetup/passfifo"
Links
- Von mir v.a. verwendete Anleitung für die Remote-Entschlüsselung: https://hamy.io/post/0009/how-to-install-luks-encrypted-ubuntu-18.04.x-server-and-enable-remote-unlocking/
- Es gibt noch div. andere Anleitungen – ich habe z.B. auch mal hier reingeschaut: https://www.thomas-krenn.com/de/wiki/Voll-verschlüsseltes-System_via_SSH_freischalten