Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Verschlüsseltes Root
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
Yikity
n00b
n00b


Joined: 10 May 2011
Posts: 10

PostPosted: Tue May 10, 2011 1:33 pm    Post subject: Verschlüsseltes Root Reply with quote

Hallo :)

ich kam auf die Idee mein Root zu verschlüsseln, das hat auch geklappt, mit der Minimal CD kann ich das auch mounten, alles gut.

Evtl hab ich was auch nicht richtig verstanden...

Also ich muss ja dann mein Initramfs anpassen das dort das Laufwerk entschlüsselt und gemountet wird. Ich hab wie in der Wiki beschrieben ein neues Ramfs erstellt, die init sieht so aus. Die sleeps sind dazu da damit ich das besser verfolgen kann.

Code:


#!/bin/busybox sh

# Some useful functions
rescue_shell() {
    echo "Something went wrong. Dropping you to a shell."
    busybox --install -s
    exec /bin/busybox sh
}

# GPG workaround
cp -a /dev/console /dev/tty

# Mount the /proc and /sys filesystems.
mount -t proc none /proc
mount -t sysfs none /sys

busybox --install -s
mdev -s
echo /bin/mdev > /proc/sys/kernel/hotplug
sleep 10

# root key
mount -t vfat /dev/sdc1 /mnt/flash
sleep 10

# Unlock partition
cryptsetup -d /mnt/flash/ARRAKIS.HSQ luksOpen /dev/sda1 root
sleep 10


# Mount new root
mount /dev/mapper/root /new-root
sleep 10

# Create swap device
cryptsetup -c twofish -h sha256 -d /dev/urandom create swap /dev/sda2
mkswap /dev/mapper/swap

# umount USB
umount /dev/sdc1

# Unmount old root
umount -l /proc
umount -l /sys

# Start new system
exec switch_root /new-root /sbin/init || rescue_shell
sleep 10



Die ersten Fehler gibt es bereits beim Mounten des USB Sticks, ohne "t vfat" bekam ich ein "invalid argument" und mit findet er das gerät nicht :(

Mein andere Lösungsansatz ist die vorhandene init aus der vom Genkernel zu bearbeiten, die ist allerdings sehr umfangreich, etwa 700 Zeilen, weis jemand evtl wo ich da meinen Code zum Mounten einfügen kann?

Dann habe ich auch einiges über die Crypttab gelesen, wiewowann wird die denn verarbeitet?

Vielen dank für die Hilfe! Hoffe jeder versteht mein Problem :)
Back to top
View user's profile Send private message
forrestfunk81
Guru
Guru


Joined: 07 Feb 2006
Posts: 483
Location: münchen.de

PostPosted: Tue May 10, 2011 1:42 pm    Post subject: Reply with quote

Hast du das Fat-Dateisystem auch fest in den Kernel kompiliert? Als Modul wird das so nicht funktionieren, da ja noch kein Zugriff auf die Festplatte besteht und dementsprechend das Modul noch nicht geladen werden kann. [Edit] Das gilt natürlich auch für das USB-Subsystem und überhaupt alles aus dem Kernel, was du während des initramfs benötigst. [/Edit]

Wenn du dein Swap mit zufälligem Key verschlüsseln willst kannst du das auch in /etc/conf.d/dmcrypt konfigurieren. DMcrypt wird vor dem mounten der fstab ausgeführt.
_________________
# cd /pub/
# more beer
Back to top
View user's profile Send private message
Yikity
n00b
n00b


Joined: 10 May 2011
Posts: 10

PostPosted: Tue May 10, 2011 1:59 pm    Post subject: Reply with quote

Ok, du hast vollkommen recht, ich denke das habe ich nicht :) ich werde das prüfen!
Back to top
View user's profile Send private message
Max Steel
Advocate
Advocate


Joined: 12 Feb 2007
Posts: 2042
Location: My own world! I and Gentoo!

PostPosted: Tue May 10, 2011 2:07 pm    Post subject: Reply with quote

forrestfunk81 wrote:
Wenn du dein Swap mit zufälligem Key verschlüsseln willst kannst du das auch in /etc/conf.d/dmcrypt konfigurieren. DMcrypt wird vor dem mounten der fstab ausgeführt.


Da aber der Kernel bereits /dev/sdc1 (als root) mounten will, wird das (imho) fehlschlagen. (er will ja / verschlüsseln).

Also braucht er die initramfs die ihm das root entschlüsselt, dieses einhängt und dann weitermacht.
_________________
mfg
Steel
___________________
Sorry for my bad English.

Heim-PC: Intel i7-5820K, 32GB RAM, GTX 1080
Laptop: Intel Core i5-4300U, 16GB RAM, Intel Graphic
Arbeit-PC: Intel i5-3470S, 16GB RAM, Intel Graphic
Back to top
View user's profile Send private message
forrestfunk81
Guru
Guru


Joined: 07 Feb 2006
Posts: 483
Location: münchen.de

PostPosted: Tue May 10, 2011 2:17 pm    Post subject: Reply with quote

Max Steel wrote:
forrestfunk81 wrote:
Wenn du dein Swap mit zufälligem Key verschlüsseln willst kannst du das auch in /etc/conf.d/dmcrypt konfigurieren. DMcrypt wird vor dem mounten der fstab ausgeführt.


Da aber der Kernel bereits /dev/sdc1 (als root) mounten will, wird das (imho) fehlschlagen. (er will ja / verschlüsseln).

Also braucht er die initramfs die ihm das root entschlüsselt, dieses einhängt und dann weitermacht.


Ja für root benötigt man das initramfs, aber Swap verschlüsseln kann man auch erst später (vor localmount). Außer wenn man Suspend to disk will, dann muss Swap im initramfs gemounted werden, aber das funktioniert dann wiederum nicht mit einem zufälligen Schlüssel.
_________________
# cd /pub/
# more beer
Back to top
View user's profile Send private message
Max Steel
Advocate
Advocate


Joined: 12 Feb 2007
Posts: 2042
Location: My own world! I and Gentoo!

PostPosted: Tue May 10, 2011 3:00 pm    Post subject: Reply with quote

forrestfunk81 wrote:
Max Steel wrote:
forrestfunk81 wrote:
Wenn du dein Swap mit zufälligem Key verschlüsseln willst kannst du das auch in /etc/conf.d/dmcrypt konfigurieren. DMcrypt wird vor dem mounten der fstab ausgeführt.


Da aber der Kernel bereits /dev/sdc1 (als root) mounten will, wird das (imho) fehlschlagen. (er will ja / verschlüsseln).

Also braucht er die initramfs die ihm das root entschlüsselt, dieses einhängt und dann weitermacht.


Ja für root benötigt man das initramfs, aber Swap verschlüsseln kann man auch erst später (vor localmount). Außer wenn man Suspend to disk will, dann muss Swap im initramfs gemounted werden, aber das funktioniert dann wiederum nicht mit einem zufälligen Schlüssel.


Verdammt, das "Swap" hab ich überlesen, sorry.
_________________
mfg
Steel
___________________
Sorry for my bad English.

Heim-PC: Intel i7-5820K, 32GB RAM, GTX 1080
Laptop: Intel Core i5-4300U, 16GB RAM, Intel Graphic
Arbeit-PC: Intel i5-3470S, 16GB RAM, Intel Graphic
Back to top
View user's profile Send private message
Yikity
n00b
n00b


Joined: 10 May 2011
Posts: 10

PostPosted: Tue May 10, 2011 3:02 pm    Post subject: Reply with quote

Wobei das mit dem SWAP nicht so wichtig ist, wenn das Root von sda3 irgendwie eingebunden wird bekomm ich den Rest schon hin. Bin noch auf der Arbeit, später schau ich mal ob vFat im Kernel ist, bzw ich formatiere den Stick mal mit ext3, das sollte ja dann klappen.
Back to top
View user's profile Send private message
Yikity
n00b
n00b


Joined: 10 May 2011
Posts: 10

PostPosted: Tue May 10, 2011 10:27 pm    Post subject: Reply with quote

vFat ist im Kernel, habe zur Sicherheit den Stick zu ext3 formatiert, leider das selber...

Eine Zwischenfrage hab ich da noch... In dem Wiki Artikel
http://de.gentoo-wiki.com/wiki/DM-Crypt/Root-Partition_verschl%C3%BCsseln_per_initramfs

wird das mounten per node beschrieben, wenn ich jedoch "file /dev/sdc1" sage kommt bei mir "block special" ohne Zahlen, was soll mir denn das sagen?

Hat jemand das schon erfolgreich mit dem Artikel geschafft? :) Ich zerbeiß mir daran noch die Zähne...
Back to top
View user's profile Send private message
SinoTech
Advocate
Advocate


Joined: 20 Mar 2004
Posts: 2579
Location: Neunkirchen / Saarland / Germany

PostPosted: Wed May 11, 2011 7:44 am    Post subject: Reply with quote

Yikity wrote:

[...]
Eine Zwischenfrage hab ich da noch... In dem Wiki Artikel
http://de.gentoo-wiki.com/wiki/DM-Crypt/Root-Partition_verschl%C3%BCsseln_per_initramfs

wird das mounten per node beschrieben, wenn ich jedoch "file /dev/sdc1" sage kommt bei mir "block special" ohne Zahlen, was soll mir denn das sagen?
[...]

Die Ausgabe wurde wohl mit einer anderen Version des "file" Kommando gemacht. Wenn du die Zahlen brauchst, mach einfach ein "ls -l /dev/GERÄT".
Falls dir "mdev -s" die Gerätedateien nicht anlegt (ich habe es noch nie ausprobiert), kannst du die natürlich auch manuell anlegen.

Cheers,

Sino
_________________
Help to answer the unanswered
Back to top
View user's profile Send private message
Josef.95
Advocate
Advocate


Joined: 03 Sep 2007
Posts: 3627
Location: Germany

PostPosted: Wed May 11, 2011 10:08 am    Post subject: Reply with quote

Nur mal als kurzer Hinweis, im aktuellen util-linux Paket ist seit einiger Zeit auch
Code:
# lsblk
verfügbar, das gibt eine sehr schöne Baumansicht der Devices, mit vielen Infos :)
Back to top
View user's profile Send private message
Yikity
n00b
n00b


Joined: 10 May 2011
Posts: 10

PostPosted: Mon May 16, 2011 9:30 am    Post subject: Reply with quote

also mittlerweile konnte ich das ext4 als Übeltäter entlarven, obwohl es im kernel ist kann ich ext4 nicht in der initramfs mounten, ist das mount von busybox zu doof dazu?

Bei mount ohne -t kommt immer invalid argument, mit -t ext4 kommt no such device :( also habe ich die platte mal zu ext3 formatiert, damit klappt es spontan.
Back to top
View user's profile Send private message
Josef.95
Advocate
Advocate


Joined: 03 Sep 2007
Posts: 3627
Location: Germany

PostPosted: Mon May 16, 2011 10:37 am    Post subject: Reply with quote

Das kommt mir doch sehr bekannt vor, hast du zufällig den CONFIG_EXT4_USE_FOR_EXT23=y Treiber im Kernel aktiv?
Back to top
View user's profile Send private message
Yikity
n00b
n00b


Joined: 10 May 2011
Posts: 10

PostPosted: Mon May 16, 2011 12:26 pm    Post subject: Reply with quote

hmmm bin leider ein kacknoob :) und benutze genkernel... naja und da im Menuconfig habe ich bei ext4 ein * gesetzt damit es im Kernel ist :) oder ist dieser haken irgendwo versteckt? :)
Back to top
View user's profile Send private message
Josef.95
Advocate
Advocate


Joined: 03 Sep 2007
Posts: 3627
Location: Germany

PostPosted: Wed May 18, 2011 3:49 am    Post subject: Reply with quote

Hmm.., ich wollte nur drauf hinweisen das es grade im im Zusammenhang mit einer initrd Probleme geben kann wenn du den EXT4_USE_FOR_EXT23 Treiber im Kernel mit verwendest.
Das Problem ist dann das dein rootfs eventuell nur als ext2 eingebunden wird, oder wenn du in der initrd explizit ext4 angibst, das dann dein rottfs gar nicht erst eingebunden werden kann.
Siehe hierzu auch https://bugs.gentoo.org/318307 und
https://bugzilla.kernel.org/show_bug.cgi?id=15391

Doch wenn du diesen Treiber nicht verwendest, dann wird dein Problem eventuell auch ganz wo anders liegen, sprich überprüfe am besten ob du ihn wirklich mit verwendest.
Siehe zb in der Ausgabe von
Code:
zgrep CONFIG_EXT4_USE_FOR_EXT23 /proc/config.gz
oder
grep CONFIG_EXT4_USE_FOR_EXT23 /usr/src/linux/.config
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum