shfs - Das sichere Netzwerkdateisystem
Der Artikel liefert eine Einführung in shfs, ein Netzwerkdateisystem, welches auf dem Server lediglich eine Bourne Shell oder Perl benötigt, dabei standardmäßig SSH zum Verbindungsaufbau verwendet und somit weitreichend einsetzbar ist, da es entfernte Verzeichnisse einfach über einen SSH-Account mounten kann. Anschließend setzt sich der Artikel mit Lösungen zur Ersetzung von NFS durch shfs auseinander.
Sollte die 1:1-Abbildung jedoch dennoch nötig sein, wird ein weiterer Eingriff nötig, der die Sicherheit des Servers beeinträchtigt: Der Login des root-Users über SSH muss erlaubt werden. Sollte nun Ihr privater Schlüssel in falsche Hände geraten, kann der Fremdling passwortlosen root-Zugriff auf ihrem Server erhalten. Größte Vorsicht ist also geboten. Wenn Sie wissen, dass Sie das wirklich wollen, öffnen Sie die Datei /etc/ssh/sshd_config und fügen sie die Zeile PermitRootLogin yes an oder aktivieren Sie sie. Ein auf jeden Fall notwendiger Schritt (ob mit oder ohne 1:1-Abbildung) ist die Aktivierung der Zeile PubkeyAuthentication yes, um die Anmeldung durch öffentliche Schlüssel zu ermöglichen.
Nach diesen Taten sollte als Root auf dem Client nun eine der beiden Aktionen ohne Passworteingabe gelingen:
Mit 1:1-Abbildung:
ssh root@Server
Ohne:
ssh Nutzer@Server
Sollte es nicht geklappt haben, sollten Sie zunächst Manpages wie ssh(1), sshd(8) und ssh-keygen(1) konsultieren. Sollte es geklappt haben, können nun die Einträge in der fstab getätigt werden, um die Verzeichnisse ohne Passworteingabe beim Start zu mounten.
Diese sind im Falle eines kompletten NFS-Ersatzes mit 1:1-Abbildung von Besitzerinformationen beispielsweise:
root@Server:/ /mnt/Server shfs defaults,preserve,persistent 0 0
Und in dem Falle, wo ein Nutzer nur sein Homeverzeichnis gemountet haben will:
Nutzer@Server /home/Nutzer shfs defaults,persistent 0 0
Nochmal möchte ich darauf hinweisen, dass die erste Lösung nur eingesetzt werden sollte, wenn es unbedingt nötig ist, da sie ein weit höheres Sicherheitsrisiko mit sich bringt als die zweite.
Alternativer Lösungsansatz
Um das Homeverzeichnis eines Benutzers zu mounten, könnte man nach dem Login dessen Passwort verwenden und die SSH Verbindung über die PAM-Authentifizierung aufbauen. Auf diesem Wege werden passwortlose Schlüssel vermieden. Das Home-Verzeichnis des Benutzers könnte so als Folge seines Logins gemountet werden. Mehr zu dieser Art des Verbindungsaufbaus können Sie in unserem Kurztipp Elegante SSH-Authentifizierung über PAM erfahren. Das Mounten nach dem Einloggen könnte aber auch über die ganz konventionelle Passwort-Authentifizierung geschehen. In diesem Falle müsste der Anwender jedoch zwei Passwörter eingeben: eines zum Einloggen, ein anderes zum Mounten.

