Virtual OS/2 International Consumer Education
VOICE-Homepage: http://de.os2voice.org
Mai 2004

Inhaltsverzeichnis
< Vorherige Seite | Nächste Seite >
Artikelverzeichnis

editor@os2voice.org


AEFS - ein verschlüsselndes Dateisystem für OS/2 und eComStation

Von Robert Henschel © Mai 2004

Einführung

Es gibt viele Möglichkeiten persönliche Daten unter OS/2 zu schützen. Bei vielen Programmen kann man Dateien mit einem Passwortschutz versehen, dazu gehören zum Beispiel Lotus Word Pro oder auch OpenOffice.org. Man gibt beim Speichern von Dokumenten einfach ein Passwort ein, und dann kann man das Dokument nur noch öffnen wenn man das Passwort kennt. (Natürlich kann man sich auch mit Crack-Programmen Zugriff zu den Daten verschaffen. Diese Tools sind vielleicht nicht für OS/2 verfügbar, aber das hindert niemanden daran sie gegen "OS/2-Dokumente" einzusetzen!)
Handelt es sich nicht um Dokumente, so kann man die Dateien auch mit "ZIP" schützen. Man packt alle zu schützenden Dateien in ein ZIP-Archiv und versieht dieses dann mit einem Passwort. Unter OS/2 kann man dafür zum Beispiel PKZIP verwenden. (Gerade bei ZIP-Archiven sei hier noch einmal darauf hingewiesen das es fertige Passwort-Cracker für ZIP-Archive gibt!)

Beide Verfahren haben aber auch Nachteile. Entweder muss man darauf vertrauen, dass die Hersteller von Bürosoftware keine Fehler gemacht haben und das Daten in Passwort-geschützten Dokumenten auch sicher sind. Oder man muss vor jeder Bearbeitung die Daten aus einem Archiv entpacken und später wieder verpacken. (Und natürlich die Kopie, die man für das Bearbeiten erstellt hat, wieder löschen!)
Eine elegantere Lösung bieten verschlüsselnde Dateisysteme. Beispiele für verschlüsselnde Dateisysteme sind zum Beispiel das hier behandelte AEFS oder auch das Cipher Plug-in für NetDrive. Verschlüsselnde Dateisysteme verschlüsseln transparent alle Daten die auf einem bestimmten Laufwerk gespeichert werden. Sie sind unabhängig von den Programmen die man zum Bearbeiten der Daten verwendet.

Beschreibung von AEFS

AEFS ist ein installierbares Dateisystem für OS/2 und eComStation. Es verhält sich ähnlich wie HPFS oder JFS (nur das die Laufwerke nicht formatiert werden müssen). AEFS-Laufwerke können von jedem Programm genutzt werden das auf Dateien zugreifen kann. Um dies zu ermöglichen, stellt AEFS einen neuen Laufwerksbuchstaben zur Verfügung. Alle Dateien die auf diesem Laufwerk abgelegt werden, werden automatisch und ohne Benutzereingriff verschlüsselt.
Um dafür keine neue Partition anlegen zu müssen, verbindet AEFS dieses neue Laufwerk mit einem beliebigen Verzeichnis auf einem beliebigen, bereits vorhandenen Laufwerk. Dabei spielt es keine Rolle mit welchem Dateisystem dieses Laufwerk formatiert ist! Das ganze wird deutlicher wenn man sich den Abschnitt "AEFS im Einsatz" durchliest.
Zur Verschlüsselung werden bekannte und geprüfte Algorithmen eingesetzt (Rijndael und Twofish). In der aktuellen Version kann der Schlüssel bis zu 256 Bit lang sein. Es sei an dieser Stelle darauf hingewiesen das 256 Bit Schlüssellänge nicht als "extrem" sicher einzustufen ist!

Installation

AEFS ist für OS/2 und Unix-artige Betriebssystem verfügbar. Aus diesem Grund wird für OS/2 die EMX-Laufzeitbibliothek in der Version 0.9d fix 4 benötigt.
Das Archiv enthält sowohl den Quellcode als auch eine vorcompilierte Version. Für Endanwender sind nur das Unterverzeichnis \bin und die Datei readme.txt bzw. readme.inf interessant. Nach dem Entpacken des Archivs müssen zwei Zeilen in die CONFIG.SYS eingefügt werden:

IFS=[bin-Verzeichnis]\stubfsd.ifs AEFS
RUN=[bin-Verzeichnis]\aefsdmn.exe

Wobei [bin-Verzeichnis] für das Unterverzeichnis \bin des Installationsverzeichnisses von AEFS steht.
Um später besser mit den Dienstprogrammen arbeiten zu können sollte das [bin-Verzeichnis] in den PATH der CONFIG.SYS aufgenommen werden. Dies ist nicht zwangsläufig nötig, macht das Leben aber einfacher!
Um die Änderungen zu aktivieren ist ein Neustart nötig.

AEFS im Einsatz

Um mit AEFS arbeiten zu können muss man sich zuerst ein Verzeichnis überlegen, das die verschlüsselten Daten aufnimmt. In diesem Fall ist das D:\Crypto. Dieses Verzeichnis kann sich auf jedem beliebigen Dateisystem, ja sogar auf einem Netzlaufwerk befinden! Es darf noch nicht vorhanden sein!
Als zweites braucht man einen freien Laufwerksbuchstaben. In diesem Fall "x".

Jetzt kann das AEFS-Dateisystem erzeugt werden. Dazu folgendes eingeben:

mkaefs d:\crypto

An dieser Stelle muss das Passwort eingegeben werden mit welchem die Daten später verschlüsselt werden.

Um das neu erzeugte Dateisystem nutzen zu können muss es einem Laufwerksbuchstaben zugewiesen werden. Dazu folgendes eingeben:

mntaefs.exe x: d:\crypto

Beim Anhängen des Dateisystems wird das Passwort abgefragt. Nach erfolgreicher Prüfung ist das neue Laufwerk "x" für alle Programme zugänglich.

Soll das Dateisystem wieder abgehängt werden, dann kann dies mit folgendem Befehl geschehen:

umntaefs.exe x:

Die Daten liegen jetzt sicher in D:\Crypto.
Sollen Backups der verschlüsselten Daten angelegt werden, so kann man das Verzeichniss D:\Crypto komplett auf CD-ROM brennen oder mit ZIP packen. Außerdem kann man natürlich auch die Originaldaten direkt von Laufwerk "x" sichern. Genau wie andere wichtige Daten sollten auch die verschlüsselte Daten, die auf einem AEFS-Laufwerk liegen, von Zeit zu Zeit gesichert werden!

Mozilla - ein Anwendungsbeispiel

Das Benutzerprofil von Mozilla kann ganz einfach auf einem AEFS-Laufwerk abgelegt werden. Zuerst startet man den Profilmanager von Mozilla und erzeugt ein neues Profil.


Abb.1: Neues Profil erstellen

Den Profilpfad passt man an, so dass er auf das Wurzelverzeichnis von Laufwerk "x" zeigt.


Abb.2: Profilpfad anpassen

Laufwerk "x" ist in diesem Fall ein AEFS-Laufwerk. Es wurde vorher mit den AEFS-Dienstprogrammen erstellt.
Das Profilverzeichnis muss nur lesbar sein während Mozilla läuft. Also ist es sinnvoll das Laufwerk direkt vor dem Start von Mozilla anzuhängen und gleich danach wieder zu entfernen. Natürlich kann man das manuell erledigen, aber einfacher geht es mit einer kleinen CMD-Datei.

@echo off

mntaefs.exe x: d:\crypto
IF ERRORLEVEL 1 goto FAILED

Mozilla.exe
umntaefs.exe x:
GOTO END


:FAILED
@echo Wrong Password ?!
PAUSE

:END

Diese CMD-Datei speichert man in das Programmverzeichnis von Mozilla. (Eine Referenz kann man natürlich gerne auf der Arbeitsoberfläche ablegen.)
Beim Starten der CMD-Datei wird man automatisch nach dem Passwort für das AEFS-Laufwerk gefragt.


Abb.3: Passwort eingeben

Gibt man das korrekte Passwort ein, so startet Mozilla. Bei falscher Eingabe wird eine Meldung angezeigt und nach einem Tastendruck wird die CMD-Datei beendet.


Abb.4: Falsches Passwort

Wird Mozilla beendet so wird das AEFS-Dateisystem wieder abgehängt und das Profilverzeichnis ist nicht mehr lesbar.
Das Profilverzeichnis liegt also auf Laufwerk "x" und enthält die Einstellungen für Mozilla.


Abb.5: Mozilla-Profil - Klartext

Die Daten werden aber auf der Festplatte im Verzeichnis d:\crypto abgelegt und sind verschlüsselt.


Abb.6: Mozilla-Profil - verschlüsselt

Dateisystem-Dienstprogramme

Alle Dienstprogramme verstehen als Parameter --help. Damit kann man sich eine Hilfe für jedes Programm anzeigen lassen. Außerdem findet man weitere Informationen in der ReadME zu AEFS.

mkaefs

erzeugt ein neues, leeres AEFS-Dateisystem. Man kann den Pfad und den verwendeten Verschlüsselungsalgorithmus angeben (der Algorithmus ist optional).
Beispiel: mkaefs d:\crypto

aefsck

überprüft ein AEFS-Dateisystem auf Fehler und behebt sie wenn möglich. (Kann man mit chkdsk vergleichen.) Es wird dringend geraten vor der Anwendung von aefsck ein Backup des verschlüsselten Verzeichnisses anzulegen!
Beispiel: aefsck d:\crypto

mntaefs

hängt ein AEFS-Dateisystem an einen Laufwerksbuchstaben an. Es besteht auch die Möglichkeit das Dateisystem schreibgeschützt anzuhängen!
Beispiel: mntaefs x: d:\crypto

umntaefs

hängt ein AEFS Dateisystem vom Laufwerksbuchstaben ab.
Beispiel: umntaefs x:

aefsdump

entschlüsselt eine bestimmte Datei eines AEFS-Dateisystems.
Dieses Dienstprogramm sollte nur von erfahrenen Benutzern angewendet werden!

aefsdmn und aefsparm

aefsdmn wird in der CONFIG.SYS gestartet und die Parameter werden in der ReadME genauer erläutert. aefsparm kann verwendet werden um die Optionen von aefsdmn zur Laufzeit zu ändern.

Probleme und Einschränkungen

AEFS selber compilieren

In der ReadME zu AEFS steht genau was man zum Selber-Compilieren braucht. Die passenden MAKEFILEs werden auch mitgeliefert. Neben einigen Kleinigkeiten braucht man vor allem:

Die MAKEFILEs basieren auf dem Unix-Standard. Um sie nicht neu schreiben zu müssen, ist eine komplette Unix-Umgebung auf OS/2 nötig. (Also SH, BINUTILS, GNUUTILS, GNUMAKE, AUTOCONF usw.)

Daten und Quellen:

EMX Runtime 0.9d Fix 4: http://hobbes.nmsu.edu/pub/os2/dev/emx/v0.9d/emxrt.zip
Homepage von Eelco Dolstra (Autor von AEFS): http://www.cs.uu.nl/~eelco/aefs/
AEFS Version 2.1: http://www.cs.uu.nl/~eelco/aefs/aefs021.zip
AEFS ältere Version 2.0: ftp://ftp.leo.org/pub/comp/os/os2/leo/drivers/ifs/aefs02.zip
OS/2 e-Zine Artikel zu IFS unter OS/2 (englisch): http://www.os2ezine.com/20020416/page_5.html
Tolle Webseite zu IFS unter OS/2 (deutsch): http://www.abyte.de/os/os2ifs.htm
PKZIP-Homepage: http://www.pkware.com/
NetDrive und Cipher Plug-In: http://www.blueprintsoftwareworks.com/netdrive/


Robert Henschel ist Organisator der OS/2 User Group Dresden und studiert Informatik an der TU-Dresden.

Artikelverzeichnis
editor@os2voice.org
< Vorherige Seite | Inhaltsverzeichnis | Nächste Seite >
VOICE-Homepage: http://de.os2voice.org