v4rrimka-san
Goto Top

Openmediavault LUKS Encryption Unlock Script

Hallo Administratoren,

Ich habe eine Frage, ich habe einen Homeserver mit OMV und darin 6 Festplatten installiert 5 Davon habe ich mit LUKS verschlüsselt.

Ich würde gerne (Nicht beim Start!) die Festplatten per Skript der auf nen Extra USB-Stick liegt der selbst auch nochmal verschlüsselt ist (was heisst darf auch Plain-Text sein) entschlüsseln. Hat wer schon ein BSP für ein Skript womit man das Realisieren kann?

Grund ist das ich nicht bei nem Neustart 5 PWs jedes mal eingeben möchte da ich auch nicht immer vor Ort bin und es meine Mitbewohner erledigen müssen daher wäre das eine Gute Alternative

Ich bedanke mich Jetzt schonmal für die Hilfe

Content-ID: 3749037122

Url: https://administrator.de/contentid/3749037122

Ausgedruckt am: 22.11.2024 um 03:11 Uhr

3714160434
3714160434 25.08.2022 aktualisiert um 14:56:45 Uhr
Goto Top
Ist doch immer die gleiche Vorgehensweise

Mit cryptsetup das verschlüsselte Device öffnen, Passwort eingeben oder alternativ ein Key-File übergeben
cryptsetup luksopen /dev/sdb1 cryptdisk
und anschließend das mapper device ins Ziel mounten
mount /dev/mapper/cryptdisk /mnt/whatever
Fertsch.
UnbekannterNR1
UnbekannterNR1 27.08.2022 um 01:11:52 Uhr
Goto Top
Eine tolle frage ich habe das folgendermaßen gelöst, mit einem Corntab @reboot startet das script. Die schlüssel habe ich auf einem zweiten Server gespeichert. Solange einer von von beiden verfügbar ist kann der andere neu starten, Schlüssel werden dann per VPN ausgetauscht. Sollten beide zufällig gleichzeitig aus sein muss halt von Hand eingegeben werden. Nicht schön aber geht.
#!/bin/bash
sleep 25
mount -t tmpfs -o size=5m tmpfs /mnt/ramd
#Ramdisk für die Key Files 
wget http://<<link-zur-keyfile>> -O /mnt/ramd/<<keyfile>>
/usr/sbin/cryptsetup open /dev/md127 md127-crypt -d /mnt/ramd/<<keyfile>>
/usr/sbin/cryptsetup open /dev/md126 md126-crypt -d /mnt/ramd/<<keyfile>>
shred -fuz /mnt/ramd/<<keyfile>>
#key in Ramdisk schreddern. 
#umount /mnt/ramd
/usr/sbin/omv-salt deploy run fstab
#Mounted alle neu aufgetauchten Laufwerke in OMV ist noch OMV5 müsste aber auch in 6 laufen. 
umount /mnt/ramd
sleep 3
#mount -a
#alternativ mount verfahren. 
/usr/sbin/service smbd restart
/usr/sbin/service plexmediaserver restart
# Dienste neustarten die Probleme haben wenn der Datenspeicher beim start nicht zur verfügung stand. 
echo "Ende erreicht"  
3714160434
3714160434 27.08.2022 aktualisiert um 07:56:41 Uhr
Goto Top
Für ein Network-Unlock gibt es eine sicherere Lösung mit Tang und Clevis .
v4rrimka-san
v4rrimka-san 14.09.2022 um 15:23:39 Uhr
Goto Top
Zitat von @UnbekannterNR1:

Eine tolle frage ich habe das folgendermaßen gelöst, mit einem Corntab @reboot startet das script. Die schlüssel habe ich auf einem zweiten Server gespeichert. Solange einer von von beiden verfügbar ist kann der andere neu starten, Schlüssel werden dann per VPN ausgetauscht. Sollten beide zufällig gleichzeitig aus sein muss halt von Hand eingegeben werden. Nicht schön aber geht.
#!/bin/bash
sleep 25
mount -t tmpfs -o size=5m tmpfs /mnt/ramd
#Ramdisk für die Key Files 
wget http://<<link-zur-keyfile>> -O /mnt/ramd/<<keyfile>>
/usr/sbin/cryptsetup open /dev/md127 md127-crypt -d /mnt/ramd/<<keyfile>>
/usr/sbin/cryptsetup open /dev/md126 md126-crypt -d /mnt/ramd/<<keyfile>>
shred -fuz /mnt/ramd/<<keyfile>>
#key in Ramdisk schreddern. 
#umount /mnt/ramd
/usr/sbin/omv-salt deploy run fstab
#Mounted alle neu aufgetauchten Laufwerke in OMV ist noch OMV5 müsste aber auch in 6 laufen. 
umount /mnt/ramd
sleep 3
#mount -a
#alternativ mount verfahren. 
/usr/sbin/service smbd restart
/usr/sbin/service plexmediaserver restart
# Dienste neustarten die Probleme haben wenn der Datenspeicher beim start nicht zur verfügung stand. 
echo "Ende erreicht"  

Zwar etwas doof (Ich weis kann man auch Googlen) aber wie genau erstellt man ne key File :D Noch nie gebraucht daher weis ich das nicht ansonsten würde ich das Skript denke mal benutzen vllt
UnbekannterNR1
Lösung UnbekannterNR1 16.09.2022 um 23:27:23 Uhr
Goto Top
Zitat von @v4rrimka-san:
Zwar etwas doof (Ich weis kann man auch Googlen) aber wie genau erstellt man ne key File :D Noch nie gebraucht daher weis ich das nicht ansonsten würde ich das Skript denke mal benutzen vllt

steht unter https://linuxwiki.de/cryptsetup recht gut beschrieben.
Für didnotread Generation (mich eingeschlossen)
dd if=/dev/urandom of=/etc/.crypto.keyfile bs=1 count=256
cryptsetup luksAddKey /dev/sdc1 /etc/.crypto.keyfile

Und ich habe mir das script nochmal angeschaut und festgestellt mann sollte die HDDs besser mit der UUID ansprechen.
/usr/sbin/cryptsetup open /dev/disk/by-uuid/xxx-xxx-xxx md127-crypt -d /mnt/ramd/<<keyfile>>

Dafür habe ich es auch getestet läuft auch mit OMV6.