truecrypt auf dem Raspberry Pi installieren/kompilieren

  • truecrypt ist die am meist verbreitete Verschlüsselungs-Software die sowohl auf MAC, Windows als auch Linux zum Einsatz kommt.



    Einen gute Artikel den man lesen soll findet ihr hier: http://dougvitale.wordpress.co…ypt-on-linux-and-windows/



    [hr]



    Die beste Möglichkeit - um sicher zu gehen das truecrypt auf deinem PI auch funktionieren würde - ist es selber zu kompilieren.
    Es gibt ein paar github mirrors von den truecrypt Dateien sowie auch den Source. Zum Beispiel von https://github.com/AuditProject/truecrypt-verified-mirror kann man sich den Source laden..


    Folgende Pakete werden fürs kompilieren benötigt:

    Code
    1. apt-get update
    2. apt-get install libfuse-dev


    Den truecrypt Source laden:

    Code
    1. wget "https://github.com/AuditProject/truecrypt-verified-mirror/raw/master/Source/TrueCrypt%207.1a%20Source.tar.gz"


    Entpacken:

    Code
    1. tar xfz "TrueCrypt 7.1a Source.tar.gz"


    In das neue Verzeichnis wechseln:

    Code
    1. cd truecrypt-7.1a-source


    Weitere für das kompilieren benötigte Dateien laden:

    Code
    1. F="cryptoki.h ct-kip.h otp-pkcs11.h pkcs-11v2-20a3.h pkcs-11v2-20a3d3.h pkcs11.h pkcs11f.h pkcs11t-consolidated-d1.h pkcs11t.h"
    2. for f in $F ; do wget http://sec.sipsik.net/truecrypt/ftp.rsasecurity.com/pub/pkcs/pkcs-11/v2-20/$f ; done


    Außerdem wird noch WXWidget benötigt, auch dies lädt man einfach herunter:

    Code
    1. wget http://prdownloads.sourceforge.net/wxwindows/wxWidgets-2.8.12.tar.gz


    Und entpacken:

    Code
    1. tar xfz wxWidgets-2.8.12.tar.gz


    Jetzt geht es endlich ans kompilieren, dazu muss man zuerst das WXWidget kompilieren und anschließend truecrypt:

    Code
    1. make NOGUI=1 WX_ROOT=~/truecrypt-7.1a-source/wxWidgets-2.8.12 wxbuild


    Dies dauert so ungefähr 15-20 Minuten.


    Jetzt noch truecrypt kompilieren, das kann etwas länger dauern, sollte spätestens nach 30min bis 1h fertig sein:

    Code
    1. make NOGUI=1 WXSTATIC=1


    Zum Abschluss noch die neue Binary ins System integrieren:

    Code
    1. cp Main/truecrypt /usr/local/bin/



    Nun sollte alles geklappt haben und man hat Truecrypt installiert. Wie man Container erstellt und alle weiteren Infos zur Kommandozeile erhält man in dem man folgendes eingibt:

    Code
    1. truecrypt --help




    Weitere Hinweise:


    Wenn ihr etwas verschlüsselt bringt dies nur etwas wenn das Password oder das Keyfile nicht für jedermann zugänglich ist. Auch sind die Daten nicht wirklich verschlüsselt solange sie gemountet sind.
    Wenn ihr also Scripts nutzt um den truecrypt Container oder ein ganzen Volumen automatisch zu mounten, solltet ihr darauf verzichten das Entschlüsselungs-Password direkt in das Script (oder der Zeile die ausgeführt wird) einzufügen! Nutzt dann lieber ein Keyfile und legt dieses auf ein anderen/externen Datenträger ab zum Beispiel ein USB-Stick, den ihr nur bei bedarf (nur dann wenn ihr mounten wollt) einsteckt aber ansonsten seperat und unmarkiert aufbewahrt!
    Das würde nämlich sonst eine Verschlüsselung sinnlos machen!


    Dabei könnte euch auch noch folgende Anleitung hilfreich sein: Laufwerk/Gerät immer der selben Gerätedateien zuweisen (udev)


    Auch müsst ihr beachten das eine Dateiverschlüsselung relativ viel CPU Last erzeugt und je nach verwendeter Verschlüsselungsart natürlich auch die Kopier/Lese-Geschwindigkeit darunter leidet! Es erhöht auch die Belastung fürs Laufwerk.




    Weiterführende Links


    http://www.pc-erfahrung.de/lin…atenverschluesselung.html

  • Beim laden von rsasecurity der pkcs-Dateien kommt bei mir immer der Fehler 'No such directory 'pub/pkcs/pkcs-11/v2-20'


    Wo kann ich das laden? Ich finde sonst keine Alternativen im Internet! Ich hoffe daß mir jemand hier geschwind sagt wo ich das finden kann!


    Danke schon einmal im Voraus!

  • Ich hab den Code angepasst und eine neue URL eingefügt:


    Code
    1. F="cryptoki.h ct-kip.h otp-pkcs11.h pkcs-11v2-20a3.h pkcs-11v2-20a3d3.h pkcs11.h pkcs11f.h pkcs11t-consolidated-d1.h pkcs11t.h"
    2. for f in $F ; do wget http://sec.sipsik.net/truecrypt/ftp.rsasecurity.com/pub/pkcs/pkcs-11/v2-20/$f ; done


    Alternativ hab ich die benötigten Dateien auch an den Beitrag angehängt

  • Hey, vielen Dank!


    Das angehängte File hat genau all die Header-Dateien die ich auch per wget von rsa security bekommen hätte?
    Ich würde das dann benutzen weil ich mit deinem gerade geposteten Code nicht wirklich viel anfangen kann.... bin ziemlich neu was Linux, Scripte und all das angeht.


    Oder könnte ich
    wget http://sec.sipsik.net/truecryp…m/pub/pkcs/pkcs-11/v2-20/
    in meinem Pi ausführen um die Dateien vom Server zu holen?

  • Das angehängte File hat genau all die Header-Dateien die ich auch per wget von rsa security bekommen hätte?


    Ja.


    Wobei man davon eigentlich tatsächlich nur 3 Dateien benötigt: "pkcs11.h pkcs11f.h pkcs11t.h"


    Ich würde das dann benutzen weil ich mit deinem gerade geposteten Code nicht wirklich viel anfangen kann....


    Zu erst legt man eine Variable F fest in der jede Datei in einer Liste drin steht. Anschließend wird eine for-Schleife ausgeführt die für jedes Element in der Liste eine Variable f setzt, welche dann eben das einzelne Element (in diesem Fall eine Datei) enthält und dann eben vom wget Befehl verwendet wird.


    Führ das einfach mal aus, dann siehst du was passiert -> er läd jede einzelne Datei die in $F hinterlegt ist..


    Oder könnte ich
    wget http://sec.sipsik.net/truecryp…m/pub/pkcs/pkcs-11/v2-20/
    in meinem Pi ausführen um die Dateien vom Server zu holen?


    Nein, das reicht nicht da du keine Datei angibst die geladen werden soll. Die neue URL erlaubt zudem kein *.h als Dateiangabe da es sich nicht um einen FTP handelt.




    Für weitere individuelle Probleme erstellt euch bitte eigenen Thread! Danke.


    (sonst werden die Anleitungs-Thread sehr schnell unübersichtlich, wenn dort jeder seine individuellen Probleme posten würde)

  • @meingrafd


    Ups, ich habe mich ein wenig missverständlich ausgedrückt gehabt.
    Ich erkenne schon das es eine Schleife ist und was dieser 'Programmcode' macht (bin mit VB 6 + .NET halbwegs vertraut), jedoch habe ich Linux noch nie im Leben benutz gehabt.


    Mein 'ich kennem ich nicht aus' bezog sich dann darauf wo ich deinen Code denn ausführen kann? Ist das eine Scriptdatei? Wenn ja, wie muss ich sie Anlegen (Endung?) oder mit was ausführen? Und vor allem wo ausführen und wo landen dann die Dateien..usw..


    Wie auch immer, du hast mir sehr geholfen, ich werde die Daten einfach herunterladen und ins Verzeichnis kopieren (oder du sagst es wäre ganz einfach und du musst Schritt 1 + 2 machen und fertig..;)).
    [hr]
    Ok, ich habe es einfach ausprobiert und es hat geklappt! Linux ist ja doch nicht sooo kompliziert ;)


    Habe dein Quellcode in eine Datei gepackt und danach mit sh Dateiname ausgeführt.
    Und das im Zielverzeichnis und alle Daten sind dort gelandet!


    Vielen lieben Dank!

    Edited once, last by Kaineanung ().

  • Ich versuche es nun Schritt für Schritt nach deiner Anleitung.
    Es scheint ein kleines Problem zu geben beim compilieren des wxWidget zu geben.
    Stimmt die Pfadangabe eventuell nicht?


    Ich bekomme jedenfalls einen Fehler:
    Error: WX_ROOT must point to wxWidgets source code directory
    make: *** [wxbuild] Error 1


    Ich vermute mal die Pfadangabe mit dem "~/truecrypt..." stimmt so nicht ganz?
    Wenn ich so versuche in das Directory zu gehen sagt er mir das der Pfad nicht exisitert (also cd "~/truecrypt...")


    Kannst du da abhilfe schaffen mit korrigierter Pfadangabe für das WX_ROOT?


    Danke