Sowie in Windows, als auch in Linux werden die Dateien in Computern normalerweise offen gespeichert, das den freien Zugriff auf jede Informationen jedem "zufälligen Passanten" (oder auch dem nicht besonders zufälligen) gibt. Falls Sie etwas vor den Fremden geheim halten möchten, so ist dieser Artikel für Sie. Besonders trifft es Notebook-Besitzer (von den Massendiebstählen haben alle gehört).
Ich habe mich mit dem Verschlüsselungszeug beschäftigt, habe nachgeschaut, was die Leute schreiben, und nur noch wenige gescheiten Artikel gefunden, für Linux schon fast gar keine, nun hatte ich selbst das Rad zu erfinden. Kann sein, findet es jemand für sich auch nützlich.
Ich habe nicht alle Partitionen verschlüsselt sondern nur die Userdaten. Es ist genauso sicher, als wäre die ganze Partition mit allen Paketen und die Bibliotheken verschlüsselt!

Die Userdaten sind also folgende:
  • swap
  • /home - in Container tc setzen (geht auch als File und als Partition)
  • /tmp - diese Dateien sind nur für eine Session gebraucht, darum sie einfach in tmpfs setzen
  • /var/tmp - dasselbe
  • /var/spool - hier befinden sich cron-Aufgaben des Users, Aufgaben für Drucker, lieber sie in Container zusammen mit dem Homeordner zu setzen
  • /var/mail - in Container
  • /var/lib/slocate - in Container
  • /var/log - in Container. Obwohl nicht alles kommt beim Starten hierher, die Userlogos sind aber dem nicht zuzurechnen.
Für Linux gibt es sowie die eingebauten (dm-crypt, loop-aes...) als auch die äußere Anwendung TrueCrypt, die sowie in Windows Vista/XP/2000 als auch in Linux (zwar etwa 1,5 mal langsamer) funktioniert. Selbstverständlich mit der offenen Code :-)

Fürs Verschlüsseln swap kann man sich auf die Linux-Mitteln verlassen.
Daher kurz und detailliert:
sudo -i
apt-get install cryptsetup
echo aes >> /etc/modules
echo dm_mod   >> /etc/modules
echo dm_crypt >> /etc/modules
[ restart computer ]
sudo -i
swapoff -a
cryptsetup -d /dev/urandom create cryptoswap /dev/sda2
mkswap /dev/mapper/cryptoswap -L accessisdenied -v1
echo 'cryptoswap /dev/sda2 /dev/urandom swap' >> /etc/crypttab
in fstab ersetzen ihr swap durch:
  /dev/mapper/cryptoswap none  swap  sw  0  0
dd if=/dev/urandom of=/dev/sda2 count=100
swapon -a

Mehr dazu. Setzen in tmpfs:
mv /tmp /ttmp
mkdir tmp
chmod 777 tmp
/etc/fstab ergänzen mit:
echo 'tmpfs /tmp tmpfs rw,nosuid,nodev,mode=0777' >> /etc/fstab
mv /var/tmp /var/ttmp
ln -s /tmp /var/tmp

Nun setzen wir die Katalogen aus /var in Cryptopartition
mkdir /home/.var
chmod 755 /home/.var
mv /var/spool/ /home/.var/spool
ln -s /home/.var/spool /var/spool
mv /var/mail /home/.var/mail
ln -s /home/.var/mail /var/mail
mkdir /home/.var/lib
chmod 755 /home/.var/lib
mv /var/lib/slocate /home/.var/lib/slocate
ln -s /home/.var/lib/slocate /var/lib/slocate
mv /var/log home/.var/log
ln -s /home/.var/log /var/log
Das Indexieren den verschlüsselten Partitionen muss man abschalten, im File /etc/updatedb.conf, im PRUNEPATHS - das /home
hinzufügen. Dann neustarten und die Katalogen /ttmp, /var/ttmp löschen.

Als nächstes kommt eben selbst das Verschlüsseln der Partition /home Ich habe die Anleitung vom MasterGnome benutzt, dabei einige Kleinigkeiten korrigiert, die die Installation und Formatierung angehen.
Für Ubuntu Feisty ist die Installation etwas einfacher:
Stellen wir das Paket ein Automatix2, falls es noch nicht vorhanden ist. Mit Hilfe des Automatix stellen wir TrueCrypt ein.
Prüfen TC:
if truecrypt --test &> /dev/null; then echo "Ok"; else echo "Error"; fi
TrueCrypt lässt Cryptocontainers sowohl in Partitionen als auch in Files schaffen, die als Partitionen eingeschaltet werden müssen. Zum Ersetzen des eines auf das andere in untenfolgenden Kommandos genügt es die Partition (z.B. /dev/sda3) gegen den Name des Files (z.B. home.tc) zu tauschen.

Truecrypt gestattet das Verschlüsseln mit dem Benutzen der Algorithmen AES, Twofish, Serpent.
Alle drei sind sicher und es existiert momentan nicht mal die theoretische Möglichkeit des Einbruchs, außer der Methode des Bruteforces.
AES - dient als Regierungsstandard in USA
Twofish - auf dem Prozessor AMD64 (linux kernel i386 2.6.20-16) ist das schnellste. Überholt AES etwa um 20%
Serpent - wesentlich langsamer der obengenannten.
Ich habe bemerkt, dass Twofish schneller auf AMD, und AES -auf Intel sind, dabei sind die beiden auf Intel Mobile ungefähr gleich schnell. Man kann den beliebigen auswählen, ich empfehle aber den erst auf dem eigenen PC nach der Geschwindigkeit zu prüfen.

Auch eine der folgenden Hash-Funktionen: RIPEMD-160, SHA-1 und Whirlpool, muss dabei ausgewählt werden.
SHA-1 - theoretisch gibt es die Einbruchsmöglichkeit, und obwohl es eher die Briefe und die digitalen Signaturen trifft, ist zum Benutzen trotzdem nicht empfehlenswert.
RIPEMD-160 - es gibt die by default. Für diesen Algorithmus existiert theoretisch immer noch keine Einbruchsmöglichkeit. Sein Vorgänger RIPEMD wurde aber schon eingebrochen.
Whirlpool - langsam, irgendwo wird sogar behauptet, 2-3 mal langsamer als die anderen. Nach meinen Tests aber ist es in TrueCrypt nicht so. Sowie in Linux, als auch in Windows XP bleibt er nicht mehr als um 5% von den anderen zurück. Zur Zeit ist der widerstandsfähigste. Und der jüngste.
Man kann auch Whirlpool oder RIPEMD-160benutzen.

In TC ist es möglich mit der Algorithmen-Cascade zu arbeiten. AES-Twofish zusammen mit Whirlpool und der verdeckte Container dazu - das Gemisch ist für die supergeheimen Dateien ;)

Bevor Sie weitergehen, bewahren Sie irgendwohin /home. Danach falls Ihr home sich an der einzelnen Partition befindet (z.B. sda3), es muss geunmountet werden:
umount /home
Für Hauptordner /home schaffen wir äußeren Cryptocontainer:
truecrypt --encryption AES --type normal -c /dev/sda3
das Filesystem als None, den beliebigen Hash-Algorithmus und zwei mal Passwort. Danach:
truecrypt /dev/sda3
Nun ist das Formatieren des Containers:
mkfs.ext2 -v /dev/mapper/truecrypt0
mount /dev/mapper/truecrypt0 /home
Den gespeicherten /home mit allen Ihren Dateien dahin umschreiben. .var aus dem gespeicherten /home nicht vergessen und da alle Files entfernen.
umount /home
truecrypt -d
Statt ext2 kann man auch das andere Filesystem benutzen: ext3, ReiserFS.

Truecrypt ist auch praktisch deswegen, dass man im verschlüsselten Container noch einen verstecken kann. Obwohl steht in Dokumentation, dass der äußere Container als FAT formatiert werden muss, funktioniert er unproblematisch auch mit ext2. Beim Übersteigern von Grenzen zwischen den Containern mit dem Schlüssel -P sagt zwar das System nichts (wie es in Windows möglich ist), die Dateien gehen einfach verloren.
Journal des Filesystems befindet sich automatisch in Cryptocontainer.

Nun stellen wir in Bootprozess das Script ein (dank dem MasterGnome wieder), das das Passwort fragt und montiert:
cd /usr
wget http://privat.heinzelzwerg.de/howtos/debian  -->>
      -->> /truecrypt/tcbootscreen.tar.bz2
tar -xvjf tcbootscreen.tar.bz2
chown root:root /usr/tcbootscreen/*
chmod ugo+x /usr/tcbootscreen/*
chmod ugo-x /usr/tcbootscreen/tcscreen.tmp
chmod ugo-x /usr/tcbootscreen/main.log
und tauschen in allen Scripten #!/bin/sh - überall um #!/bin/bash, ansonsten ergibt sich ein Fehler mit declare
in Ubuntu. Jetzt kopieren
mv /usr/tcbootscreen/tcbootscreen /etc/init.d/tcbootscreen
update-rc.d tcbootscreen defaults
Im File /usr/tcbootscreen/decrypt setzen eigene Werte für device und mountpoint ein.
"Ein Problemchen" bleibt nur, dass beim Passworteingeben zeigt er sich, das heißt, dass "stty -echo" beim Starten nicht funktioniert... Vielleicht helpt jemand...

13 Votes | Average: 4.8 out of 513 Votes | Average: 4.8 out of 513 Votes | Average: 4.8 out of 513 Votes | Average: 4.8 out of 513 Votes | Average: 4.8 out of 5 (13 votes, average: 4.8 out of 5)
Loading ... Loading ...

Top Posts: