Big Daddy
Registriert seit: 02.02.03
Style: Zahls Bastelecke
Alter: 37
Geschlecht:
♂
Beiträge: 4.974
IRC Zeilen: 10670
Quizrunden gewonnen: 3
☆
☆
☆
☆
☆
★
★
★
1. Einleitung
Ich habe mir vor einigen Tagen meinen Homeserver neu aufgesetzt, da mir die Kiste viel zu überladen war. Dazu hab ich mir gedacht, ich setzte bei der jetzigen Installation noch einen drauf und verschlüssele einige Partitionen. Wie ich das ganze mache werde ich hier nun erläutern, sodass es möglichst gut nachvollziehbar ist.
Zur Verschlüsselung werden wir Cryptsetup mit AES Algorithmen nutzen. Alle AES Algorithmen sind für Schlüssellängen von 128-256 Bit definiert worden und sollten für unsere Verschlüsselung genügen
2. Vorbereitung
a) Kernel
Die Ganze Aktion bringt natürlich einige Vorraussetzungen mit sich. Ersteres ist der Kernel. Hier müssen ein paar neue Module hinzugefügt werden. Diese werden jedoch erst ab 2.6.4 unterstützt. Da Debian Linux von Zuhause aus einen 2.4er Kernel mitbringt, sind wir gezwungen einen neuen zu kompilieren. Im Kernel müssen folgende Module hinzugefügt werden:
Nach einem erfolgreichen Booten des neuen Kernels, können wir noch überprüfen ob die Module korrekt installiert sind:
1) Wir überprüfen ob die Device Mapper existieren:
2) Wir überprüfen ob AES unterstützt wird:
b) Pakete
dmcrypt muss natürlich auch noch installiert werden. Dazu führen wir ganz einfach
aus. Cryptsetup erleichtert uns das Arbeiten mit dmcrypt und da cryptsetup von dmcrypt abhängt, wird es auch gleich mitinstalliert.
Nach der Installation können wir mit
überprüfen ob das Paket auch korrekt installiert wurde.
3. Partition verschlüsseln und verwenden
Nun beginnt der eigentliche Teil der ganzen Aktion. Wir werden nun eine Partition verschlüsseln. Diesen Vorgang werde ich in drei Unterpunkte teilen:
1) cryptsetup ausführen
2) Ein Filesystem auf dem neuen Device erstellen
3) Das neue Device einbinden
1) Cryptsetup benutzen
Wir führen ganz einfach folgendes Kommando aus:
Wobei ‚<label>’ eine Beschreibung des neuen Devices ist. ‚/dev/hdxy’ muss natürlich entsprechend der Festplatte und Partition angepasst werden. Die Option ‚–y’ lässt das Passwort zwei mal abfragen.
Anschließend lässt sich mit
Überprüfen ob die Aktion geglückt ist.
(Wichtig: merkt euch, was ihr für <label> angegeben habt! Ihr werdet es noch brauchen )
2) Dateisystem erstellen
Wir müssen nun ein Dateisystem auf dem neu erstellten Device erstellen. Dazu ist es euch überlassen, welches Dateisystem ihr bevorzugt. Ich nutze das ext3-FS.
Wer das ReiserFS bevorzugt, nutzt folgendes Kommando:
3) Device einbinden
Schließlich muss die Verschlüsselte Partition noch eingebunden werden:
4. Automatisieren
Da nun aber nach jedem Neustart des Systems die mit cryptsetup erstellten Devices ‚zerstört’ werden, sind wir gezwungen sie jedes Mal neu zu erstellen. Um dem entgegenzuwirken, werden wir uns ein kleines Script schreiben, welches dies für uns übernimmt.
Wir starten also den bevorzugten Editor und schreiben den folgenden Text in die Datei.
if [ -b /dev/mapper/<label> ]; then
/sbin/cryptsetup remove <label>
fi
/sbin/cryptsetup create <label> /dev/hdxy
mount /dev/mapper/<label> /mnt/crypto
Zu Beachten ist hierbei, dass ihr wieder ‚<label>’, ‚/dev/hdxy’ sowie euren Mountpunkt ‚/mnt/crypto’ anpassen müsst!
Schließlich führen wir das Script aus das war’s schon.
Wünsche euch viel Spaß beim crypten
Ich habe mir vor einigen Tagen meinen Homeserver neu aufgesetzt, da mir die Kiste viel zu überladen war. Dazu hab ich mir gedacht, ich setzte bei der jetzigen Installation noch einen drauf und verschlüssele einige Partitionen. Wie ich das ganze mache werde ich hier nun erläutern, sodass es möglichst gut nachvollziehbar ist.
Zur Verschlüsselung werden wir Cryptsetup mit AES Algorithmen nutzen. Alle AES Algorithmen sind für Schlüssellängen von 128-256 Bit definiert worden und sollten für unsere Verschlüsselung genügen
2. Vorbereitung
a) Kernel
Die Ganze Aktion bringt natürlich einige Vorraussetzungen mit sich. Ersteres ist der Kernel. Hier müssen ein paar neue Module hinzugefügt werden. Diese werden jedoch erst ab 2.6.4 unterstützt. Da Debian Linux von Zuhause aus einen 2.4er Kernel mitbringt, sind wir gezwungen einen neuen zu kompilieren. Im Kernel müssen folgende Module hinzugefügt werden:
- Code maturity level options
- Prompt for development and/or incomplete code/drivers
- General setup
- Support for hot-pluggable devices
- Device Drivers
- Multi-device support (RAID and LVM)
- Device mapper support
- Crypt target support
- Multi-device support (RAID and LVM)
- Cryptographic options
- AES cipher algorithms
Nach einem erfolgreichen Booten des neuen Kernels, können wir noch überprüfen ob die Module korrekt installiert sind:
1) Wir überprüfen ob die Device Mapper existieren:
Zitat von shell
# ls –L /dev/mapper/control
Zitat von shell
# Modprobe aes
# cat /proc/crypto
# cat /proc/crypto
b) Pakete
dmcrypt muss natürlich auch noch installiert werden. Dazu führen wir ganz einfach
Zitat von shell
# apt-get install cryptsetup
Nach der Installation können wir mit
Zitat von shell
# dmsetup targets
crypt v1.0.0
striped v1.0.1
linear v1.0.1
error v1.0.1
crypt v1.0.0
striped v1.0.1
linear v1.0.1
error v1.0.1
3. Partition verschlüsseln und verwenden
Nun beginnt der eigentliche Teil der ganzen Aktion. Wir werden nun eine Partition verschlüsseln. Diesen Vorgang werde ich in drei Unterpunkte teilen:
1) cryptsetup ausführen
2) Ein Filesystem auf dem neuen Device erstellen
3) Das neue Device einbinden
1) Cryptsetup benutzen
Wir führen ganz einfach folgendes Kommando aus:
Zitat von shell
# cryptsetup -y create <label> /dev/hdxy
Anschließend lässt sich mit
Zitat von shell
# dmsetup ls
Überprüfen ob die Aktion geglückt ist.
(Wichtig: merkt euch, was ihr für <label> angegeben habt! Ihr werdet es noch brauchen )
2) Dateisystem erstellen
Wir müssen nun ein Dateisystem auf dem neu erstellten Device erstellen. Dazu ist es euch überlassen, welches Dateisystem ihr bevorzugt. Ich nutze das ext3-FS.
Zitat von shell
# mkfs.ext3 /dev/mapper/<label>
Zitat von shell
# mkfs.reiserfs /dev/mapper/<label>
Schließlich muss die Verschlüsselte Partition noch eingebunden werden:
Zitat von shell
# mount /dev/mapper/<label> /mnt/cryptodrive
Da nun aber nach jedem Neustart des Systems die mit cryptsetup erstellten Devices ‚zerstört’ werden, sind wir gezwungen sie jedes Mal neu zu erstellen. Um dem entgegenzuwirken, werden wir uns ein kleines Script schreiben, welches dies für uns übernimmt.
Wir starten also den bevorzugten Editor und schreiben den folgenden Text in die Datei.
Zitat von cryptoscript
if [ -b /dev/mapper/<label> ]; then
/sbin/cryptsetup remove <label>
fi
/sbin/cryptsetup create <label> /dev/hdxy
mount /dev/mapper/<label> /mnt/crypto
Schließlich führen wir das Script aus das war’s schon.
Wünsche euch viel Spaß beim crypten
B.O.F.H.
Schönes Howto
Das Tier
Registriert seit: 20.04.03
Style: Roter Spinat
Alter: 45
Geschlecht:
♂
Beiträge: 9.141
IRC Zeilen: 0
☆
☆
☆
☆
☆
★
★
★
Wow
Vor allem so übersichtlich, dass ich es beim ersten Lesen gleich kapiert habe Da könnten sich einige LinuxWikis noch was abschneiden
*bookmark*
Vor allem so übersichtlich, dass ich es beim ersten Lesen gleich kapiert habe Da könnten sich einige LinuxWikis noch was abschneiden
*bookmark*
Big Daddy
Registriert seit: 02.02.03
Style: Zahls Bastelecke
Alter: 37
Geschlecht:
♂
Beiträge: 4.974
IRC Zeilen: 10670
Quizrunden gewonnen: 3
☆
☆
☆
☆
☆
★
★
★
soha, hier mal die ausgeabeitete version. hab die einleitung noch etwas verändert, inhaltsverzeichnis hinzugefügt sowie nen spieleplanet banner *gg*
viel spaß beim lesen
viel spaß beim lesen
Big Daddy
Registriert seit: 02.02.03
Style: Zahls Bastelecke
Alter: 37
Geschlecht:
♂
Beiträge: 4.974
IRC Zeilen: 10670
Quizrunden gewonnen: 3
☆
☆
☆
☆
☆
★
★
★
Muahaha, ich hab eben mal dieses Tutorial rausgesucht, weil mal wieder zu der Gelegenheit kam meine Partitionen zu verschluesseln ... nunja, es funktioniert immer noch! Allerdings hab ichs mit dem Kompilieren eines Kernels sein gelassen - statt dessen hab ich einfach die Module dm_mod und dm_crypt gelasen
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
Forumregeln |
Alle Zeitangaben in WEZ +2. Es ist jetzt 16:03:18 Uhr.