Privatix unter der Haube oder "Debian verschlüsselt auf USB-Stick installieren"
Sollten sich allein an der Anwendung von Privatix interessierte Menschen zu diesem Dokument verirrt haben und nach diesem Absatz nichts mehr verstehen: keine Sorge! Gerade deshalb gibt es die Privatix Distribution, die Ihnen bei der Installation alles nachfolgend Erörterte abnimmt.
Interessierte EntwicklerInnen oder Linux-SpezialistInnen sollten mit dieser Dokumentation schnell einschätzen können, was genau wir hier anbieten.
Ansonsten können Menschen, die Debian 6.0 Squeeze oder Debian 5.0 Lenny verschlüsselt auf einen USB-Stick oder einer USB-Festplatte für den mobilen Einsatz installieren wollen, einige Tipps und Problemlösungen entnehmen.
Basis Debian GNU/Linux
Dank großartiger Entwicklungen bei XOrg und Debian kann das Privatix Live-System technisch gesehen mittlerweile nur noch ein um einige wenige Anpassungen erweitertes und auf die Bedürfnisse unserer NutzerInnen vorkonfiguriertes Debian GNU/Linux sein.
Sourcecode und Build-Umgebung
Der komplette Quellcode des Installers, der Build-Umgebung, der sonstigen Skripte sowie der Konfigurationsdateien ist im Verzeichnis /usr/local/src/privatix/ im System enthalten und kann zudem hier heruntergeladen werden.
Zum allergrößten Teil unveränderte orginal Debian Pakete
Alle sonstige Software besteht mittlerweile ausschliesslich aus vom Debian-Projekt gepflegten Paketen.
Die Life-CD wird mit der Toolsammlung live-helper
des Debian Live Projektes erstellt.
Nachfolgend sind die getätigten Anpassungen gegenüber einem Standard Debian dokumentiert.
Von Debian GNU/Linux zu Privatix oder: was tut der Privatix-Installer?
Debian auf verschlüsselten USB-Stick oder verschlüsselte USB-Festplatte installieren
Debian GNU/Linux auf ein USB-Gerät mit unverschlüsselter Bootpartition und mit cryptsetup (dm-crypt/luks) verschlüsselter Rootpartition installieren.
Allgemein lässt sich das seit Debian 4.0 (Etch) und dem folgend seit Ubuntu 8.04 Hardy auch manuell sehr komfortabel mit dem Debian Installer erledigen, indem bei einer manuellen Partitionierung zuerst die entsprechende Partition als "verschlüsselt" definiert, diese Einstellung ausgeführt wird und dann im nun eingerichteten und angezeigten verschlüsselten Bereich die Rootpartition angelegt wird.
Dateisystemkonfiguration für mobilen Einsatz fit machen
Debian verwendet in der fstab und crypttab noch herkömmliche Gerätenamen a la /dev/sdX.
Daher muss in /etc/fstab
wegen beim Einsatz unterschiedlicher Rechner wechselnden Gerätenamen der Gerätename der Bootpartition (/boot) von "/dev/sdX" auf "/dev/disk/by-uuid/die_entsprechende_UUID" umgestellt werden.
Analog dazu auch in /etc/crypttab
beim Mapper (bei uns z.B. crypt_root) den Gerätenamen von "/dev/sdX" auf "/dev/disk/by-uuid/die_entsprechende_UUID" umstellen.
Zusätzliches Initramfs-Bootskript zum Warten auf USB-Geräte
Da Debian 4.0 Etch, Debian 5.0 Lenny, Ubuntu 8.04 Hardy oder Ubuntu 8.10 Intrepid bisher beim Starten von verschlüsselten Systemen von USB noch nicht auf die entsprechenden Geräte wartet, ist zum Starten von cryptsetup / luks - verschlüsselten USB-Speichern beim Orginal Debian und Orginal Ubuntu noch etwas Handarbeit nötig:
Dazu unser zusätzliches Bootskript /usr/share/initramfs-tools/scripts/local-top/cryptrootwait
für die Initramdisk einspielen und ausführbar machen, welches vor dem Einrichten des cryptroot auf die Verfügbarkeit des USB-Gerätes wartet
und damit den Abbruch des Bootvorgangs mit einer Fehlermeldung wie z.B. "cryptsetup: Source device /dev/sda2 not found" vermeidet.
Alternativ kann auch der Boot-Parameter rootdelay
verwendet werden, was jedoch zu unnötigen Wartezeiten beim Booten führt.
Initramdisk neu erzeugen
Initramdisk neu erzeugen (update-initramfs -u
), um das zusätzliche Bootskript reinzupacken sowie die von Gerätenamen zu UUIDs geänderten Geräteeinstellungen auch in der cryptsetup - Konfiguration (/conf/conf.d/cryptroot
) innerhalb der Initramdisk zu aktualisieren.
boot.iso erzeugen
Wegen der benötigten Crypt-Konfiguration unbedingt innerhalb des verschlüsselten Systems durchführen:
Das Paket mkisofs
zum Erzeugen eines ISO-Filesystems installieren.
Das Skript /usr/local/src/privatix/usr/local/sbin/mkbootiso
als /usr/local/sbin/mkbootiso
einspielen und ausführen.
Die damit erzeugte Datei /boot/boot.iso ist das CD-Abbild für die auch in Checkkartengrösse brennbare CD, die zum Booten des Systems auf Computern verwendet werden kann, deren BIOS kein Booten von USB-HDD unterstützt.
Softwarepakete einspielen
Dank seit Debian Lenny enthaltenen Tor- und Torbutton Paketen kann mensch sich die Einbidung zusätzlicher Repositories und GPG-Schlüssel sparen und müsste nur noch die Debianpakete einspielen. Unsere Paketlisten finden Sie unter /usr/local/src/privatix/build_config_packageslist auf der CD bzw. im Quellcode-Archiv.
BenutzerInnen-Einstellungen
- Iceweasel: Einstellungen/Datenschutz/Cookies nach Beenden automatisch löschen lassen, Safebrowsing aus (übermittelt sonst Informationen an Google)
- Iceweasel: Ixquick als Standard-Suchmaschine für das Suchfeld hinzufügen
- GDM: Automatischen Login beim Start (da alle Daten bereits durch Verschlüsselungspasswort geschützt)
- Rythmbox: Das Musikabspielprogramm so einstellen, dass keine Daten zum jeweils abgespielten Musikstück aus dem Internet geladen werden sollen: Plugin "Cover Anzeige" aus