Festplatte/ Partition mit Truecrypt unter Linux mounten

Eigentlich ja schon ein Selbstgänger, trotzdem noch einmal ein paar Kommandos für die Nutzung (mount/ unmount) einer mit Truecrypt verschlüsselten Festplatte oder Partition.
Wie man mit einzelnen Containern auf der Konsole arbeitet ist unter http://www.rotzoll.net/2010/03/truecrypt-container-mounten-von-der-konsole/ näher erläutert.
Hiermit fasse ich noch einmal ein paar Punkte für die Nutzung einer ganzen Festplatte(-npartition) unter Linux zusammen. Alles wird auf der Konsole ohne GUI eingegeben. Sofern ein X-Window-System installiert ist kann man auch mit der Truecrypt-GUI die Festplatte(npartition) mounten und wieder unmounten.



Finden der Festplatten- oder Partitionsbezeichnung im System
Wir haben eine USB Festplatte, die im System als /dev/sdb erkannt wird. Auf dieser befindet sich eine Partition, also gibt es /dev/sdb1. Dieses können wir mit dmesg beim Einstecken (oder einschalten) der Festplatte sehen:

[ 4020.553084] usb 2-2: new high speed USB device using ehci_hcd and address 5
[ 4020.686382] scsi6 : usb-storage 2-2:1.0
[ 4021.685189] scsi 6:0:0:0: Direct-Access WD 2500BEV External 1.75 PQ: 0 ANSI: 4
[ 4021.686667] sd 6:0:0:0: Attached scsi generic sg2 type 0
[ 4021.689875] sd 6:0:0:0: [sdb] 488397168 512-byte logical blocks: (250 GB/232 GiB)
[ 4021.690510] sd 6:0:0:0: [sdb] Write Protect is off
[ 4021.690519] sd 6:0:0:0: [sdb] Mode Sense: 23 00 00 00
[ 4021.690526] sd 6:0:0:0: [sdb] Assuming drive cache: write through
[ 4021.693222] sd 6:0:0:0: [sdb] Assuming drive cache: write through
[ 4021.693237] sdb: sdb1
[ 4021.705234] sd 6:0:0:0: [sdb] Assuming drive cache: write through
[ 4021.705245] sd 6:0:0:0: [sdb] Attached SCSI disk

Wir versuchen einfach mal, die Partition /dev/sdb1 nach /media/usbdisk zu mounten:

#Shell > sudo mount /dev/sdb1 /media/usbdisk/
mount: Sie müssen den Dateisystemtyp angeben

Also „kennt“ unser Linux im derzeitigen Zustand die Festplatte zwar, findet aber kein bekanntes Dateisystem auf diesem. Das ist ja auch richtig, schließlich haben wir auf der Festplatte nur ein mit Truecrypt verschlüsseltes Volume liegen.


Wir mounten das „Dateisystem“
Damit wir etwas mit der verschlüsselten Partition auf unserem Linux anfangen können muss Truecrypt gestartet werden. Hierzu geben wir auf der Konsole folgendes ein:

#Shell > sudo truecrypt /dev/sdb1 /media/usbdisk/

Wir werden nach einem Passwort gefragt. Das ist das für das Truecrypt-Volume vergebene Passwort. Dieses geben wir ein. Das Volume wird gemountet und kann nun ganz normal genutzt werden. Truecrypt ver- und entschlüsselt die Daten direkt ohne weitere Interaktion des Nutzers.
Die Geschwindigkeit beim Kopieren großer Dateien soll angeblich etwas langsamer sein, das ist aber eher marginal und in den meisten Fällen kaum feststellbar. Und für den Vorteil einer verschlüsselten Festplatte nimmt man gerne ein paar KB weniger Datendurchsatz hin…

Wir schauen uns einmal das gemountete Volume mit mount an und sehen zwei Einträge:

#Shell > mount
truecrypt on /tmp/.truecrypt_aux_mnt1 type fuse.truecrypt (rw,nosuid,nodev,allow_other)
/dev/mapper/truecrypt1 on /media/usbdisk type ext3 (rw)

Das Dateisystem beim Erstellen des Volumes wurde als Ext3 ausgewählt und ist nun auch wieder als ebensolches im Dateisystem gemountet. Ein df gibt den genutzten und den verfügbaren Speicherplatz aus:

#Shell > df -h
/dev/mapper/truecrypt1
230G 84G 134G 39% /media/usbdisk


unmounten des Dateisystems nach Gebrauch
Wenn wir nun das Volume nicht mehr brauchen, „unmounten“ wir es wieder. Man sollte es, sofern man paranoid genug ist, bei Nichtnutzung gleich wieder unmounten.

Unmount eines speziellen Truecrypt Devices:

#Shell > sudo truecrypt -d /media/usbdisk

Haben wir mehrere gemountete Truecrypt Volumes/ Container gemountet und wollen alle unmounten lassen wir die Angabe des Mountpoints weg:

#Shell > sudo truecrypt -d

Danach sind keine Mountpoints mehr zu finden, die von Truecrypt verwaltet werden.

Zur Probe versuchen wir wieder die eben noch gemountete Festplatte erneut zu mounten:

#Shell > sudo mount /dev/sdb1 /media/usbdisk/
mount: Sie müssen den Dateisystemtyp angeben

Bingo. Alles, wie es sein soll…..


Was man nicht machen sollte..
Zwar ist es sehr bequem, seine Volumes mit einem Skript zu mounten oder direkt auf der Konsole unter Angabe des Passwortes, dieses stellt aber ein Sicherheitsrisiko dar.

  • In Skripten kann man reinsehen, sieht das Passwort im Klartext
  • Auf der Konsole mit der Option -p angegeben steht es in der history

Man kann natürlich sein Passwort mit ‚-p‘ auf der Konsole mit eingegeben und direkt das Volume mounten:

#Shell > sudo truecrypt -pMeinGanzGeheimesPasswortStehtHierImKlartext /dev/sdb1 /media/usbdisk/

Damit wird man nicht noch nach dem Passwort extra befragt. Ist einfach. Aber keine gute Idee…..

Gibt man mal history auf der Konsole ein erscheint eine Liste mit den vergangenen Aufrufen auf der Konsole….

#Shell > history
520 cd /tmp
521 df -h
522 sudo truecrypt -pMeinGanzGeheimesPasswortStehtHierImKlartext /dev/sdb1 /media/usbdisk/
523 cd /media/usbdisk

Das ist wohl schon etwas „suboptimal“….. Sollte man also tunlichst unterlassen und lieber das Passwort noch einmal im Abfragedialog gesondert eingeben.
Oder man sollte zumindest wissen, dass es die history gibt und diese danach „anpassen“…

Wo liegt mein History-File? Wie kann ich das Passwort aus den Aufrufen wieder entfernen?
Je nach verwendeter Shell liegt das history File (sofern überhaupt vorhanden) an unterschiedlichen Plätzen. Einfachster Weg:

#Shell > echo $HISTFILE
/home/username/.bash_history

Kurz und knapp kann man das File einfach löschen:

#Shell > rm /home/username/.bash_history

Der schönere Weg ist natürlich das Entfernen oder Ändern der Einträge, die man nicht mehr haben möchte. Man kann zusätzlich noch in der history (s)eine Nachricht hinterlassen, ändert den Eintrag ab und loggt sich wieder aus. Nun haben wir den Eintrag aus der Datei raus, ein Aufruf von history ist nun nicht mehr verwerflich:

#Shell > history
522 sudo truecrypt -pdassollnatuerlichausderhistoryraus /dev/sdb1 /media/usbdisk/
523 cd /media/usbdisk

Hinweis:
Sollte man noch in der gleichen Konsole oder Session arbeiten wie bei dem Aufruf, den man löschen/ entfernen will, so ist der Eintrag noch nicht in das History File geschrieben. Einfach mal ausloggen aus dem Terminalfenster oder die Session beenden. Danach steht es auch drin….

Dieser Beitrag wurde unter Allgemeines, Dokus und Tipps, Linux/ UNIX, Technikspielkram abgelegt und mit , , , , , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

4 Antworten zu Festplatte/ Partition mit Truecrypt unter Linux mounten

  1. David sagt:

    Hallo rotzoll,

    wenn ich den Befehl „sudo mount /dev/sdb1 /media/usbdisk/“ eingebe kommt die erwartete Fehlermeldung mit dem Dateisystem.
    Beim nächsten Schritt „sudo truecrypt /dev/sdb1 /media/usbdisk/ “ bekomme ich aber folgenden Fehler:

    Error: device-mapper: reload ioctl on truecrypt1 failed: No such file or directory
    Command failed

    Das Dateisystem der Platte ist NTFS sie wurde an einem Windows PC als neues Volumen verschlüsselt ist nicht hidden und es gibt keine keyfiles.

    Ich hoffe du kannst mir helfen.

    • Tom sagt:

      Gut ein Jahr später habe ich das gleiche Problem…
      Falls es eine Lösung gibt würde ich mich freuen wenn mir einer entsprechende Hinweise geben könnte!

      Viele Grüße
      Der Tom

      • Robert sagt:

        Same here. Komplettes Dateisystem unter Windows verschlüsselt und kriegs unter Linux nicht entschlüsselt. Gleicher Fehler wie bei David…

  2. Sivananda sagt:

    Das Verzeichnis muss existieren. Wenn man zum Beispiel nur sagt
    truecrypt /dev/sdd1
    dann legt Truecrypt nach korrekter Passworteingabe das Verzeichnis /mnt/truecrypt1 an.
    Das ist der Mount-Point. Darunter findet man sein NTFS-Verzeichnis vor.
    Dismountet man das Device verschwindet auch /mnt/truecrypt1 wieder.
    Hier ist Truecrypt konsistent. Gibt man nämlich ein explizites Verzeichnis an
    truecrypt /dev/sdd1 /mnt/hierhin
    muss man das Verzeichnis (aka Mount-Point) selbst anlegen und ggf. löschen
    sudo mkdir /mnt/hierhin

    Eine weitere nützliche Funktion ist zu prüfen ob das Device überhaupt angestöpselt ist:
    for known_devices in /dev/sdd1 /dev/sdd2; do
    if [[ -b $device ]]; then # als Block-Device angestöpselt?
    if sudo fdisk /dev/sdd1 -l | grep -q ‚167.7 GiB‘; then
    # Ok, jetzt kennt man mit einiger Sicherheit den Datenträger.
    sudo truecrypt …

    Eine andere (und präzisere) Variante ist es die UUID des Datenträgers auszulesen und zu vergleichen. Linux kann das Dateisystem natürlich nicht kennen da – dank guter Verschlüsselung – das ganze Device aussieht wie eine riesige Zufallszahl.

    Om Om Om!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert