Howto: encfs unter Ubuntu, Mac OS X und FreeBSD installieren

08 Apr 2011

encfs

Was ist encfs? Dazu die Wikipedia:

EncFS ist eine freie (unter der GPL veröffentlichte) Verschlüsselungserweiterung für beliebige Dateisysteme unixartiger Betriebssysteme und baut auf dem FUSE-Framework auf. Es verschlüsselt dabei nicht ganze Dateisysteme, sondern lediglich einzelne Dateien, sodass es ohne separate Einrichtung einer eigenen verschlüsselten Partition nachgerüstet werden kann und weiterhin herkömmliche Werkzeuge, beispielsweise zur Datensicherung, verwendet werden können.

...

Aufgrund seiner dateiweisen Verschlüsselung weist EncFS einige Vorteile gegenüber anderen Kryptodateisystemen auf:

  • Es belegt keine feste Größe auf dem Datenträger. Es wird nur der Platz belegt, der tatsächlich für die verschlüsselten Dateien benötigt wird. Daten können in EncFS gespeichert werden bis das Dateisystem, in dem es sich befindet, voll ist.
  • Teile des über EncFS-verschlüsselten Dateisystems können auf verschiedenen Datenträgern abgelegt sein. Zum Beispiel kann ein Ordner im (verschlüsselten) Quellverzeichnis per NFS eingehängt und ein weiterer lokal vorhanden sein.
  • Datensicherungsprogramme können gezielt die einzelnen veränderten verschlüsselten Dateien sichern, die sich in der Zwischenzeit geändert haben. Es muss nicht jedes Mal die gesamte Partition gesichert werden, wie es bei verschlüsselten Partitionen der Fall ist.

Aufgrund dieses Ansatzes ergeben sich jedoch auch einige Nachteile:

  • Per EncFS abgespeicherte Daten weisen dieselben Beschränkungen auf, wie das Dateisystem in dem der Quellordner liegt.
  • Eine Fragmentierung der verschlüsselten Daten führt zu einer Datenfragmentierung im Quellverzeichnis.
  • Die Rechteverwaltung wird nicht neu implementiert, somit kann jeder die Anzahl der Dateien, ihre Zugriffsrechte, Größe und Länge des Dateinamens (der Dateiname selber wird jedoch mitverschlüsselt) und das Datum der letzten Änderung sehen.

Ich setze encfs zum Beispiel ein, um einige Ordner in meiner Dropbox zu verschlüsseln. Doch nun zum eigentlichen Thema dieses Beitrags - der Installation. Ich verwende unter allen hier besprochenen Betriebssystemen die Originalquellen von encfs, um unter allen Betriebssystemen mit der neusten und einer identischen Version zu arbeiten. Derzeit ist Version 1.7.4 aktuell. Außerdem ist so der Nerdfaktor der Installation um einiges höher...

<Update> Eine Installationsanleitung für encfs unter Windows findet ihr hier. </Update>

encfs unter Mac OS X

Um encfs unter Mac OS X einzusetzen benötigt man MacFuse. Unter Mac OS X 10.6.7 gibt es mit dem neusten Release von MacFuse ein kleines Problem, doch dafür hatte ich ja schon eine Lösung.

Ich bevorzuge die Installation von encfs mittels homebrew. Dafür ist Apples Entwicklungsumgebung Xcode in Version 3 oder Version 4 Voraussetzung. Die Installation besteht nach der Installation von Xcode nur noch aus einem Drei- bzw. Vierzeiler im Terminal.

  • Der erste Schritt ist die Installation von homebrew:

ruby -e "$(curl -fsSL http://goo.gl/s7ry5)"

(Falls dies nicht funktioniert, da sich der Link immer wieder ändert: den originalen Link/Befehl gibt es hier)

  • Anschließend die Installation von git (Nur bei Verwendung von Xcode 3 nötig. Xcode 4 hat git schon mit an Board.):

brew install git

  • Und zu guter Letzt die Installation von encfs mittels homebrew:

brew update
brew install encfs

Weiter zum nächsten Client, welcher mit Ubuntu 10.04 läuft...

encfs unter Ubuntu

Auch hier ist natürlich eine Entwicklungsumgebung Voraussetzung. Und einige Bibliotheken, welche für die Kompilierung von encfs notwendig sind müssen ebenfalls installiert werden.

  • Aber dies kann man unter Ubuntu ja mit einer einzigen Zeile im Terminal erledigen:

sudo aptitude install wget build-essential libboost-all-dev libfuse-dev libssl-dev librlog-dev

  • Nun werden die Quellen heruntergeladen und ausgepackt:

wget http://encfs.googlecode.com/files/encfs-1.7.4.tgz
tar xf encfs-1.7.4.tgz
cd encfs-1.7.4

  • Anschließend noch der Dreisatz aus ./configure, make und make install:

./configure
make
sudo make install

  • Um die neu installierten Bibliotheken dem System bekannt zu machen ist eventuell noch ein Update des Linker-Caches notwendig:

sudo ldconfig

Spätestens jetzt sollte aber alles laufen. Also weiter zum letzten Kandidaten mit installiertem FreeBSD...

encfs auf FreeBSD

Unter FreeBSD mit funktionierendem Ports-System ist die Installation vergleichsweise am schnellsten und einfachsten.

  • Einfach in das entsprechende Ports-Verzeichnis wechseln:

cd /usr/ports/sysutils/fusefs-encfs

  • Encfs kompilieren und installieren:

make install clean

  • Und vor dem ersten Aufruf das FUSE-Modul in den Kernel laden:

kldload /usr/local/modules/fuse.ko

Um das nicht nach jedem Reboot neu tun zu müssen, kann man in die /etc/rc.conf am Ende folgende Zeile einfügen:

fusefs_enable="YES"

Nun besitzen alle drei Betriebssysteme das gleiche Dateiverschlüsselungssystem.

Verwendung von encfs

Die Nutzung von encfs ist unter allen Betriebssystemen wieder gleich - sofern man die Kommandozeile bemüht.

encfs VerschlüsseltesVerzeichnis Mountpunkt

Eine genauere Beschreibung liefert man encfs oder auch dieser Artikel im Einsatz unter Ubuntu.

 

 

Und nicht das Passwort vergessen!

 

dropbox encfs freebian freebsd fuse howto installation linux mac macfuse security shell ubuntu unix
comments powered by Disqus