cfs ist das Cryptographic Filesystem
von Matt Blaze, welches als erstes FS
Verschlüsselung implementierte und auf der Basis von NFS
arbeitet.
Der cfsd unterliegt bei NetBSD einer Besonderheit, er kann
nicht mit
dem nsfd zusammen laufen, da der NetBSD nfsd und das
mount_nfs NFS
nicht an einem anderen Port als 2049 binden können. Dies
bedeutet, das eine
Maschine, die als CFS-Server arbeitet, nicht ebenfalls NFS-Server
sein kann.
Das cfs-Paket sollte idealerweise aus den Ports installiert werden,
wenn man
es selber kompiliert, müssen unbedingt die Anweisungen aus
readme.netbsd
befolgt werden. Das Einrichten des cfsd funktioniert
folgendermassen:
Zuerst das Arbeitsverzeichnis für den cfsd erstellen:
$ mkdir /null
$chmod 0 /null
danach selbiges exportieren lassen:
$ echo /null localhost >> /etc/exports
nun den mountd starten (oder killen und neu starten, falls er
bereits läuft) und den benötigten cfsd starten
$ mountd && cfsd
Nun wird der cfs mount point installiert:
$ mkdir /crypt
und mittels
$ mount -o intr,-2 127.0.0.1:/null/ /crypt
werden die beiden benötigten Arbeitsverzeichnisse des cfsd
gemountet. Die Angabe von 127.0.0.1 ist notwendig, da es mit
localhost wegen der IPv6
Unterstützung nicht fuktionieren würde. mountd und cfsd
sollten nun automatisch in der
/etc/rc.conf gestartet werden.
Nun erstellen wir ein verschlüsseltes Verzeichnis:
$ cfs_mkdir cryptostuff
und übergeben eine ausreichend starke, lange und nicht im
Wörterbuch stehende
Passphrase. Dieses Verzeichnis ist der Ort in dem die Dateien
verschlüsselt
liegen und wird mit:
cfs_attach cryptostuff/ nutzbares_cfs
nach Übergabe des Passphrase eingebunden. Das Verzeichnis
erscheint
dann als /crypt/nutzbares_cfs und ist als dieser Pfad ganz
normal
schreib- und lesbar genutzt werden. Ausgekoppelt wird es mit
cfs_detach nutzbares_cfs
von jedem beliebigen Pfad aus und ohne die
Angabe des Passwortes. Der Algorithmus, mit dem die Dateien
verschlüsselt werden,
kann bei der Erstellung des Verzeichnisses mit cfs_mkdir
übergeben werden.
Momentan (cfsd 1.4.1) sind die Algorithmen SAFER-SK128, MacGuffin,
DES/2DES/3DES
und Blowfish verfügbar. 3DES ist von diesen Algorithmen am
ältesten und durch
seinen Einsatz als Standardalgorithmus in der USA sehr gut
untersucht.