Die folgende Anleitung erklärt, wie man auf einem Barebone (Intel NUC, Zotac, etc.) ein per LUKS voll verschlüsseltes Debian installiert und darüber dann Proxmox installiert. Beim Neustart des Barebone kann man sich dann von Windows aus über SSH verbinden und das Verschlüsselungspasswort eingeben.
Bei Diebstahl des Barebones oder etwa bei defekter Festplatte kommt keiner ohne Passphrase an die Daten.
- Barebone-Rechner (Intel NUC, Zotac, etc.) mit einer Festplatte. Weitere angeschlossene Laufwerke werden in dieser Anleitung nicht berücksichtigt
- Grundinstallation auf Barebone erfolgt mit angeschlossenem Monitor, Tastatur, Maus, später braucht man das natürlich nicht mehr ("headless")
- Windows-PC (Windows 10) zur Einrichtung/Steuerung wird verwendet. Putty ist installiert.
- USB-Stick für das Debian-Image zur Installation auf dem Barebone
- Erweiterte Kenntnisse zu Linux und Windows
- Windows: Debian-Linux (11.5, Bullseye) herunterladen: https://www.debian.org/CD/http-ftp/#stable -> CD -> "amd64" -> runterscrollen -> Datei:
debian-11.5.0-amd64-netinst.iso
- Windows: Etcher (Portable) installieren und ausführen, und Image auf USB-Stick schreiben.
- Bildschirm, Tastatur/Maus, Netzwerkkabel und USB-Stick an Barebone anschließen, starten, Boot-Menü aufrufen und USB-Stick auswählen
- Graphical install, Sprache Deutsch etc.
- Netzwerk einrichten: Entsprechende Netzwerkbuchse wählen
- Rechnername: z.B. "prx"
- Domainname: z.B. "local"
- Kein Root-Passwort vergeben
- Neuer Benutzer: (Benutzername eingeben)
- Passwort: (PW eingeben)
- Festplatte partitionieren: "Geführt - gesamte Platte mit verschlüsseltem LVM"
- Alle Dateien auf eine Partition, mit "Ja" bestätigen
- Nun startet das überschreiben mit zufälligen Daten, dauert ewig, aber sollte man machen, es sei denn die Festplatte ist neu oder war zuvor schon komplett verschlüsselt. Kann man mit "Abbrechen" abbrechen und die Installation weiter fortführen.
- Passphrase für die Verschlüsselung vergeben. Bitte sehr gutes Passwort verwenden.
- Größe: "max" eingeben oder so belassen
- "Partitionierung beenden und Änderungen übernehmen" bestätigen
- Deutsch als Spiegelserver, kein Proxy
- Statistiken: wie gewünscht ja oder nein
- Software: nur SSH Server und Standard-Systemwerkzeuge, kein Desktop
- Fertig. Neu starten, nun Verschlüsselungspasswort eingeben.
- Einloggen mit zuvor vergebenem Account und mit
ip addr
oderip route
die IP-Adresse ausgeben - Zu Windows wechseln, Putty öffnen, die IP eingeben, verbinden und einloggen.
Ich belasse die Einstellungen (DHCP) und weise die vergebene IP im Router fest zu (z.B. in Fritzbox: Heimnetz > Netzwerk > (Barebone) > Option: "Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen.")
sudo apt install dropbear-initramfs
Folgende Ausgabe fixen wir später: "WARNING: Invalid authorized_keys file, SSH login to initramfs won't work!"- Windows-Konsole:
ssh-keygen -t rsa -f c:\Users\<user>\Downloads\unlock_luks
- dabei ggf. Pfad und Dateiname entsprechend anpassen. Passwort vergeben sudo nano /etc/dropbear-initramfs/authorized_keys
und Dateiinhalt vonunlock_luks.pub
einfügen, speichern.- Change File Permissions (lt. Anleitung, aber wirklich notwendig? - ich habe es jedenfalls gemacht):
sudo chmod 600 /etc/dropbear-initramfs/authorized_keys
sudo nano /etc/dropbear-initramfs/config
-> Zeile#DROPBEAR_OPTIONS
ändern in:DROPBEAR_OPTIONS="-I 300 -j -k -p 2222 -s"
ip route
, gibt z.B. in erster Zeile "default via 180.0.0.1 dev enp1s0" aus, hier entspricht DEVICE=enp1s0 und 180.0.0.1 dem Gatewaysudo nano /etc/initramfs-tools/initramfs.conf
- Für DHCP folgende zwei Zeilen hinzufügen, dabei 2x "enp1s0" ggf. ersetzen durch Ausgabe von ip route:
DEVICE=enp1s0
IP=:::::enp1s0:dhcp
sudo update-initramfs -u
- aktualisieren- Server neu starten -
sudo reboot
- Windows-Konsole:
ssh -i c:\Users\<user>\Downloads\unlock_luks -p 2222 -o "HostKeyAlgorithms ssh-rsa" root@180.0.0.22
- IP entsprechend anpassen - Are you sure you want to continue connecting -> yes
- Passwort für SSH-Schlüssel eingeben
cryptroot-unlock
eingeben- Verschlüsselungspasswort eingeben
- Wenn erfolgreich, erscheint: "cryptsetup: xxx_crypt set up successfully"
(per: https://www.dwarmstrong.org/remote-unlock-dropbear/)
Vorgehensweise gemäß: https://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_11_Bullseye
-
Zum Einloggen in Proxmox (https://IP-Adresse:8006/) dann doch ein Root-Passwort vergeben, da man ansonsten sich nicht in Proxmox einloggen konnte (dies gilt es noch zu optimieren):
-sudo passwd root
, 2x das Passwort für root eingeben.
- Proxmox-Webinterface: Benutzername "root" und entsprechendes Passwort eingeben, bei Domäne "Linux PAM standard authentication" auswählen -
Proxmox-Webinterface: Beim Anlegen einer Linux Bridge unter Rechenzentrum > prx > System > Netzwerk:
Name:vmbr0
IPv4/CIDR:180.0.0.22/24
(IP gemäßip addr
, dahinter/24
)
Gateway:180.0.0.1
(gemäßip route
)
Bridge ports:enp1s0
(Name der aktiven Netzwerkkarte)
(nach dem Speichern oben auf "Konfiguration anwenden" klicken)