So verschlüsseln Sie Dateien mit gocryptfs unter Linux

Möchten Sie sensible Dateien schützen, ohne die gesamte Festplatte Ihres Linux-Systems zu verschlüsseln? Dann ist gocryptfs eine ausgezeichnete Wahl. Dieses Tool ermöglicht es Ihnen, ein Verzeichnis zu erstellen, in dem alle gespeicherten Daten automatisch verschlüsselt und entschlüsselt werden.

Schutz vor Datenlecks mit gocryptfs

Datenschutz ist ein hochaktuelles Thema. Nahezu wöchentlich werden neue Datenpannen bei Unternehmen und Organisationen bekannt. Diese Vorfälle betreffen oft große Mengen an Nutzerdaten, die dadurch in falsche Hände geraten.

Millionen Menschen nutzen Cloud-Dienste wie Dropbox, Google Drive und Microsoft OneDrive, um ihre Daten zu speichern. Wie können Sie Ihre sensiblen Dokumente und Dateien schützen, wenn es zu einem Datenleck kommt?

Datenpannen treten in verschiedensten Formen und Größen auf und sind nicht auf Cloud-Speicher beschränkt. Ein verlorener USB-Stick oder ein gestohlener Laptop stellen ebenfalls ein potenzielles Risiko dar. Entscheidend ist, dass sensible Daten bei unbefugtem Zugriff verheerende Folgen haben können.

Eine bewährte Methode, um Ihre Daten zu schützen, ist die Verschlüsselung. Bisher erfolgte dies oft durch die vollständige Verschlüsselung der Festplatte. Obwohl dies sicher ist, kann es die Performance des Computers beeinträchtigen und die Wiederherstellung aus Backups erschweren.

Mit gocryptfs können Sie gezielt nur die Verzeichnisse verschlüsseln, die wirklich schützenswert sind, wodurch der Systemaufwand für die Ver- und Entschlüsselung reduziert wird. gocryptfs ist schnell, leichtgewichtig, einfach zu verwenden und ermöglicht das einfache Verschieben verschlüsselter Verzeichnisse auf andere Rechner. Solange Sie das Passwort haben, werden keine unverschlüsselten Daten auf dem anderen System hinterlassen.

gocryptfs ist als leichtes verschlüsseltes Dateisystem konzipiert, das auch von normalen Benutzerkonten ohne Root-Rechte verwendet werden kann. Dies wird durch das Filesystem in Userspace (FUSE) Paket ermöglicht, welches als Schnittstelle zwischen gocryptfs und den Kernel-Dateisystemroutinen dient.

Installation von gocryptfs

Um gocryptfs auf Ubuntu zu installieren, verwenden Sie folgenden Befehl:

sudo apt-get install gocryptfs

Für Fedora lautet der Befehl:

sudo dnf install gocryptfs

Unter Manjaro installieren Sie es mit folgendem Befehl:

sudo pacman -Syu gocryptfs

Erstellen eines verschlüsselten Verzeichnisses

gocryptfs zeichnet sich durch seine einfache Bedienung aus. Die grundlegenden Schritte sind:

1. Erstellen Sie ein Verzeichnis mit den zu schützenden Dateien und Unterverzeichnissen.
2. Initialisieren Sie dieses Verzeichnis mit gocryptfs.
3. Erstellen Sie ein leeres Verzeichnis als Einhängepunkt und mounten Sie das verschlüsselte Verzeichnis darauf.
4. Verwenden Sie im Einhängepunkt die entschlüsselten Dateien und erstellen Sie neue.
5. Hängen Sie das verschlüsselte Verzeichnis wieder aus, wenn Sie fertig sind.

Wir erstellen zunächst ein Verzeichnis namens „Vault“, in dem die verschlüsselten Daten gespeichert werden. Verwenden Sie dazu folgenden Befehl:

mkdir vault

Im nächsten Schritt initialisieren wir das neue Verzeichnis, wodurch das gocryptfs-Dateisystem im Verzeichnis erstellt wird:

gocryptfs -init vault

Geben Sie nun ein Passwort ein, wenn Sie dazu aufgefordert werden. Wiederholen Sie die Eingabe, um Fehler zu vermeiden. Wählen Sie ein starkes Passwort, das aus drei unzusammenhängenden Wörtern, Satzzeichen, Ziffern oder Symbolen besteht.

Nachdem Ihr Hauptschlüssel generiert und angezeigt wird, sollten Sie diesen sicher aufbewahren. In unserem Beispiel nutzen wir gocryptfs auf einem temporären Rechner für Recherchen, die nach der Bearbeitung gelöscht werden.

Sie sehen hier den Hauptschlüssel, da dies Teil des Beispiels ist. In der Praxis sollte Ihr Hauptschlüssel geheim gehalten werden, da bei Verlust des Schlüssels alle Ihre verschlüsselten Daten zugänglich werden.

Wenn Sie in das neue Verzeichnis wechseln, sehen Sie, dass zwei Dateien erstellt wurden. Geben Sie dazu folgende Befehle ein:

cd vault
ls -ahl

Die Datei „gocryptfs.diriv“ ist eine kleine Binärdatei, während „gocryptfs.conf“ Einstellungen und Informationen enthält, die Sie ebenfalls sicher aufbewahren sollten.

Wenn Sie Ihre verschlüsselten Daten in der Cloud speichern oder auf tragbare Medien sichern, sollten Sie diese Konfigurationsdatei nicht hinzufügen. Wenn Sie aber lokal sichern und die Kontrolle über die Speichermedien haben, können Sie die Konfigurationsdatei mit sichern.

Mit ausreichend Aufwand und Zeit kann es möglich sein, Ihr Passwort anhand der Einträge „encrypted key“ und „salt“ zu extrahieren, wie unten gezeigt:

cat gocryptfs.conf

Mounten des verschlüsselten Verzeichnisses

Das verschlüsselte Verzeichnis wird in einen Einhängepunkt gemountet, der ein leeres Verzeichnis darstellt. Wir erstellen ein neues Verzeichnis mit dem Namen „Geek“:

mkdir geek

Nun mounten wir das verschlüsselte Verzeichnis auf dem Einhängepunkt. Hierbei wird das gocryptfs-Dateisystem innerhalb des verschlüsselten Verzeichnisses gemountet. Sie werden aufgefordert, das Passwort einzugeben:

gocryptfs vault geek

Nachdem das verschlüsselte Verzeichnis gemountet wurde, können Sie das Einhängepunktverzeichnis wie jedes andere verwenden. Alle Änderungen und neu erstellten Dateien werden in das eingehängte, verschlüsselte Verzeichnis geschrieben.

Erstellen wir eine einfache Textdatei:

touch secret-notes.txt

Bearbeiten Sie diese, fügen Sie Inhalt hinzu und speichern Sie die Datei:

gedit secret-notes.txt

Nun sehen Sie Ihre neue Datei:

ls

Wenn Sie nun in Ihr verschlüsseltes Verzeichnis wechseln, sehen Sie eine neue Datei mit einem verschlüsselten Namen. Der Dateiname lässt keinen Rückschluss auf den Dateityp zu:

cd vault
ls -hl

Versuchen wir den Inhalt der verschlüsselten Datei zu lesen, sehen wir, dass sie tatsächlich verschlüsselt ist:

less aJGzNoczahiSif_gwGl4eAUnwxo9CvOa6kcFf4xVgYU

Ihre einfache Textdatei ist nun alles andere als einfach zu entziffern.

Aushängen des verschlüsselten Verzeichnisses

Sobald Sie mit dem verschlüsselten Verzeichnis fertig sind, können Sie es mit dem Fusermount-Befehl aushängen. Als Teil des FUSE-Pakets entfernt der folgende Befehl das gocryptfs-Dateisystem innerhalb des verschlüsselten Verzeichnisses vom Einhängepunkt:

fusermount -u geek

Wenn Sie das Einhängepunktverzeichnis jetzt überprüfen, ist es wieder leer:

ls

Alle Ihre Daten werden nun sicher im verschlüsselten Verzeichnis aufbewahrt.

Einfach und sicher

Einfache Systeme werden oft häufiger genutzt als komplizierte. gocryptfs ist nicht nur einfach zu bedienen, sondern bietet auch eine hohe Sicherheit, da ein System ohne Sicherheit wenig Sinn ergibt.

Sie können beliebig viele verschlüsselte Verzeichnisse erstellen, oder alle sensiblen Daten in einem Verzeichnis zusammenfassen. Sie können auch Aliase erstellen, um das Mounten und Aushängen der verschlüsselten Dateisysteme zu vereinfachen.