Bestehendes RAID + LVM im Betrieb verschlüsseln?

Alles rund um sicherheitsrelevante Fragen und Probleme.
Benutzeravatar
jph
Beiträge: 1049
Registriert: 06.12.2015 15:06:07
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Greven/Westf.

Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?

Beitrag von jph » 06.03.2017 11:45:26

Ich bin auch bei der Arbeit... Keine Hektik... [emoji23]

mclien
Beiträge: 2427
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?

Beitrag von mclien » 06.03.2017 19:05:50

so da haben wir also die korrekten Werte:
alte boot-Partition (erste Part) sieht so aus:

Code: Alles auswählen

Model: ATA Hitachi HTE54322 (scsi)
Disk /dev/sda: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system     Flags
 1      1049kB  500MB   499MB   primary                  boot, raid
 2      500MB   57.5GB  57.0GB  primary                  raid
 3      57.5GB  60.5GB  3000MB  primary  linux-swap(v1)
 4      60.5GB  245GB   185GB   primary                  raid
neue (noch nicht) boot Partition (erste Part):

Code: Alles auswählen

Model: ATA WDC WD30EFRX-68E (scsi)
Disk /dev/sdc: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  524MB   523MB   ext2         1     bios_grub
 2      524MB   4744MB  4219MB               2
 3      4744MB  75.2GB  70.4GB               3     raid
 4      75.2GB  3001GB  2925GB               4     raid
Die Frage ist jetzt also, wie muss die 1.Part korrekt konfiguriert werden, damit sowohl grub im MBR landet, als auch das RAID (sdc1/sdd1) erkannt wird?
EDIT:
laut diesem Beitrag: http://serverfault.com/questions/320697 ... tion-types ist bios_grubwohldie richtigeOption,wie ich es verstehe.
So bin ich vorgegangen:
cryptsetup open --type luks /dev/md128 cryptroot
/dev/mapper/cryproot als /new/ gemounted
md127 als /new/boot gemounted
mount -o bind /sys /new/sys
mount -o bind /proc /new/proc
mount -o bind /dev /new/dev
chroot /new /bin/bash #sysrescuenutzt die zsh, die auf dem Zielsystem nicht installiert ist
Danach halt grub installiert (einmal ohne Meldung,einmal mit Fehler).Bootenkonnte aber keine der Platten.

Einzige Idee die ich momentan habe: /boot hat metadata v0.9 und auf dem alten System war es v1.2. Ich könnte natürlich das RAID der boot-Partition jetzt nochmal mit v 1.2neu aufsetzen,ist ja klein und damit schnell gemacht..

EDIT2:
initramfs hat ja seine eigene Kopie von mdadm.conf. Aber: holt sich initramfs die von /etc/mdadm/mdadm.conf oder legt es die selbst an?
In ersterem Fall scheint mir die aufegelesene version immernoch strange:

Code: Alles auswählen

ARRAY /dev/md/127_0 metadata=0.90 UUID=3de7d48a:7c67c842:c44c77eb:7ee19756
ARRAY /dev/md/128 metadata=1.2 name=sysresccd:128 UUID=883b5984:310045c3:94bb2809:4d46bc9e
ARRAY /dev/md129 metadata=1.2 name=sysresccd:129 UUID=b360b8e5:b30a047e:dd887155:2a75262f
wie kommen diese Unterschiede zustande? md129 md/128 md/127_0?

In zweiterem:Sollte ich dann das System ohne die alten RAID Verbünde starten?

mclien
Beiträge: 2427
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?

Beitrag von mclien » 06.03.2017 20:35:11

Hier scheint es noch ein paar Hinweise auf zu korrigierende confs zu geben:
http://unix.stackexchange.com/questions ... otup#71209
innerhalb von chroot:
/boot/grub/devicemap
/etc/default/grub

dann nochmalinitramfs neu bauen und grub installieren/ updaten ist die kurzversion.
Mal schauen
EDIT:
Mist: das hat gestern definitiv noch funktioniert:

Code: Alles auswählen

% mount /dev/md127 /new/boot 
mount: wrong fs type, bad option, bad superblock on /dev/md127,
       missing codepage or helper program, or other error

       In some cases useful info is found in syslog - try
       dmesg | tail or so.
und der Parttable von md127 sieht auch merkwürdig aus:

Code: Alles auswählen

Model: Linux Software RAID Array (md)
Disk /dev/md127: 523MB
Sector size (logical/physical): 512B/4096B
Partition Table: loop
Disk Flags: 

Number  Start  End    Size   File system  Flags
 1      0.00B  523MB  523MB  ext2

breakthewall
Beiträge: 507
Registriert: 30.12.2016 23:48:51

Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?

Beitrag von breakthewall » 07.03.2017 02:50:01

mclien hat geschrieben:Momentan sieht das Datenerzeichnis auf mein Server so aus:
RAID1 (sda3 und sdb3) + RAID1 (sdc1 und sdd1) -> LVM -> /daten
nun würde ich das ganze gerne Verschlüsseln ohne alles neu aufsetzten zu müssen.
Ich kann beim besten Willen nicht verstehen, wie man so etwas auch nur in Erwägung ziehen kann. In der ganzen Zeit nun seit in diesem Thread das Problem durchgekaut wird, hätte man das ganze System locker x-mal neu aufsetzen und die Daten entsprechend zurück spielen können. Eigentlich müsste doch inzwischen klar sein wie kompliziert das ist. Aber muss jeder selbst wissen.

Benutzeravatar
jph
Beiträge: 1049
Registriert: 06.12.2015 15:06:07
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Greven/Westf.

Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?

Beitrag von jph » 07.03.2017 17:56:53

Und ich kann beim besten Willen nicht verstehen, wie man einen Thread nicht vollständig lesen kann, bevor man seinen Senf dazugibt.

mclien
Beiträge: 2427
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?

Beitrag von mclien » 07.03.2017 19:16:24

So habe mein Wissen zu gpt Part tables ein wenig erweitert.
So wie ich es verstehe, kennt gpt keinen MBR. Die Bedeutet, dass gpt eine ZUSÄTZLICHE Partition dafür braucht, die dann das flag bios_grub haben muss.
Also statt:

Code: Alles auswählen

number  Start   End     Size    File system  Name  Flags
 1      1049kB  524MB   523MB   ext2         1     bios_grub
 2      524MB   4744MB  4219MB               2
 3      4744MB  75.2GB  70.4GB               3     raid
 4      75.2GB  3001GB  2925GB               4     raid
muss ich den wohlso aufbauen:

Code: Alles auswählen

number  Start   End     Size    File system  Name  Flags
 0      0kB 1048kB   1MB   ext2         0     bios_grub   # neue part
 1      1049kB  524MB   523MB   ext2         1     raid  # das müsste das RAID wieder lesbar machen
 2      524MB   4744MB  4219MB               2
 3      4744MB  75.2GB  70.4GB               3     raid
 4      75.2GB  3001GB  2925GB               4     raid
Die Frage ist nun, ob ich die bios_grub partition noch or die /boot RAID Partition bauen kann. Was möglicherweis eklappt,da ich die 1.Part ja erst bei 1049KB angefangen habe.
Ansonsten muss ich wohl die 1.Part nochmal neu bauen. Ausserdme stellt sich die Frage, ob ich "0" als nummer vergeben darf, wobei das nicht weiter relevant sein dürfte solange bios_grub am Anfang der Platte steht.
EDIT:
funktioniert ungefähroder zumindest besser (die Part number "0" gibts natürlich nicht,ist dei "5" geworden).
- md127 nochmal mit neuem file system bestückt
- per chroot initramfs neu
- grub install
Zumindest läd Grub jetzt schonma,findet allerdings die /boot Platte nicht (keine disc zur UUID)
checke jetzt nochmal configs.
EDIT2:
OK, die UUID,die Grub laden will ist die alte ID der /boot RAID PArtition.
Irgendetwas in Grub muss wohlnoch korrigiert werden...

mclien
Beiträge: 2427
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?

Beitrag von mclien » 10.03.2017 14:29:47

Weitest gehend abschließende Melldungen:
/etc/fstab und
/etc/cryptab
korrekt editierenud alles läuft wieder. Diesmal auf einem verschlüsseltem RAID 1.
Momentan muss ich halt beim boot 2x eine Passphrase eingeben (cryptroot und cryptdata).Ob ich mir die Mühe mache cryptdata noch auf keyfile umzubauen, weiß ich noch nicht. Kommt drauf an wie oft ich die Kiste booten muß..

Benutzeravatar
jph
Beiträge: 1049
Registriert: 06.12.2015 15:06:07
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Greven/Westf.

Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?

Beitrag von jph » 11.03.2017 09:57:24

Sehr schön. :) Was war denn letztendlich falsch bzw. was hast du noch geändert, um die Sache zum Laufen zu bringen?

Noch ein Tipp: leg doch für die verschlüsselten Daten eine systemd-mount-unit an, die das während des Starts entschlüsselt und mountet. Wenn diese Unit auf verschlüsseltem / liegt, kannst du da ja das Passwort reinschreiben.

(Schmuck am Nachthemd: Debian bildet die Namen der entschlüsselten Devices aus dem Namen des verschlüsselten Device mit angehängtem _crypt. Dadurch kann man die Geräte einfach einander zuordnen. Auf dem Laptop, auf dem ich gerade tippe, gehört sda3_crypt zu sda3.)

mclien
Beiträge: 2427
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?

Beitrag von mclien » 11.03.2017 21:48:47

Der wesentlich fail, war halt die zusätzlcihe Part. die gpt braucht. Durch den missglückten Install auf die /boot Part war die jetzt geschrottet.
Also nochmal das RAID md127 für bootmit neuem Dateisystem bestückt
die daten vom alten /boot aufs neue /boot gesynct
chroot und dann
- grub-install
- update-grub

Und offenbar hatte ich in der /etc/fstab nur die überflüssigen Dinge auskommentiert, aber die UUID für boot noch nicht mit der neuen Ausgetauscht.
Danach ohne Probleme gebootet und dann noch die /daten Part eingehängt (fstab und crypttab).

Bin am überlegen, ob ein WIKI EIntrag für das ganze lohnt...

Oh und Danke für Deinen "Beistand"

Antworten