Wie man Remote-Dateisysteme über SSH mit SSHFS einbindet

SSHFS - Head Image

SSHFS (SSH Filesystem) ist ein leistungsstarkes Tool, mit dem Benutzer Remote-Dateisysteme über SSH mounten können. Es bietet eine sichere und bequeme Möglichkeit, auf Remote-Dateien zuzugreifen, als wären sie lokal. Diese Anleitung führt durch den Prozess der Verwendung von SSHFS zum Mounten von Remote-Dateisystemen. IT-versierte Kunden und Systemadministratoren wird hiermit eine praktische Lösung zur effizienten Verwaltung von Remote-Dateien geboten.

Was ist SSHFS?

SSHFS nutzt das SSH-Protokoll, welches für einen sicheren Remote-Zugriff verwendet wird, um eine nahtlose Verbindung zwischen lokalen und remoten Dateisystemen herzustellen. Durch die Bereitstellung eines Remote-Verzeichnisses auf deinem lokalen Computer kannst du mit deinen vertrauten lokalen Tools und Anwendungen mit Remote-Dateien interagieren. Dies optimiert den Arbeitsablauf und steigert die Produktivität.

Vorteile der Benutzung von SSHFS

Die Verwendung von SSHFS bietet mehrere Vorteile:

  • Sicherheit: Es verwendet SSH zur sicheren Kommunikation, um sicherzustellen, dass deine Daten während der Übertragung verschlüsselt werden.
  • Bequemlichkeit: Greife auf Remote-Dateien zu, als ob sie auf deinem lokalen Rechner wären, was es einfacher macht, mit Remote-Daten zu arbeiten.
  • Flexibilität: Es kann auf verschiedenen Betriebssystemen, einschließlich Linux, macOS und Windows, verwendet werden.

Voraussetzungen von SSHFS

Bevor du SSHFS verwenden kannst, um entfernte Dateisysteme über SSH zu mounten, gibt es einige Voraussetzungen, die erfüllt werden müssen. Die Sicherstellung dieser Anforderungen wird dir helfen, häufige Probleme zu vermeiden und den Installationsprozess zu optimieren.

Systemvoraussetzungen von SSHFS

Um loszulegen, brauchst du:

  • Ein Linux, MacOS oder Windows-Gerät: SSHFS ist kompatibel mit allen gängigen Betriebssystemen. Jedes System hat seine eigene Methode zur Installation von SSHFS, die im nächsten Abschnitt behandelt wird.
  • FUSE (Dateisystem im Userspace): Für die Funktionsfähigkeit von SSHFS ist FUSE erforderlich. Die meisten Linux-Distributionen sind mit FUSE vorinstalliert. Für macOS und Windows musst du FUSE separat installieren.

SSH-Zugriff auf den Remote-Server

Du musst SSH Zugriff auf den entfernten Server haben, den du mounten möchtest. Dies beinhaltet:

  • SSH Server läuft auf der Remote Machine: Stellen Sie sicher, dass der SSH Server auf dem entfernten Rechner installiert und ausgeführt wird. Die meisten Linux-Server haben SSH standardmäßig installiert.
  • Benutzerberechtigungen: Das Benutzerkonto, das du für eine SSH-Verbindung verwendest, muss über die erforderlichen Berechtigungen verfügen, um auf die Verzeichnisse zuzugreifen, die du mounten möchtet.
  • SSH-Schlüssel: Für eine sicherere und bequemere Verbindung wird empfohlen, SSH-basierte Authentifizierung einzurichten. Dadurch entfällt die Notwendigkeit, bei jeder Verbindung ein Kennwort einzugeben.

Für diejenigen, die mehrere Server verwalten oder einen zuverlässigen Remotezugriff benötigen, bietet Contabo eine Reihe von VPS und Dedicated Server Lösungen, die leicht integriert werden können. Mit der robusten Infrastruktur von Contabo kann dir hohe Leistung und sicherer Zugriff auf deine Remote-Dateisysteme gewährleistet werden.

Unter diesen Voraussetzungen bist du bereit, SSHFS auf deinem System zu installieren. Der nächste Abschnitt führt dich durch den Installationsprozess für verschiedene Betriebssysteme.

So installierst du SSHFS (Linux, Windows, macOS)

Um SSHFS nutzen zu können, musst du es auf deinem lokalen Rechner installieren. Der Installationsprozess variiert je nach Betriebssystem. So kannst du SSHFS auf verschiedenen Betriebssystemen installieren:

SSHFS unter Linux installieren

Für Linux-Systeme öffne ein Terminal, um diese Befehle auszuführen. Du musst dafür `sudo` verwenden, was es dir erlaubt, Befehle mit Superuser-Rechten auszuführen. Wenn du `sudo` verwendest, wirst du aufgefordert, dein Passwort einzugeben.

Ubuntu und Debian

Installiere SSHFS auf Ubuntu, Debian und deren Derivaten mit dem apt package manager:

sudo apt update
sudo apt install sshfs

Fedora und CentOS

Benutze für Fedora, CentOS und andere Red Hat-basierte Distributionen den dnf package manager:

sudo dnf install fuse-sshfs

Arch Linux

Arch Linux Benutzer können SSHFS mithilfe des pacman package managers installieren:

sudo pacman -S sshfs

SSHFS auf macOS installieren

MacOS-Benutzer öffnen das Terminal und verwenden dann Homebrew um SSHFS zu installieren:

brew install sshfs

Beachte, dass auf macOS auch FUSE für macOS installiert werden muss, was eine Notwendigkeit für SSHFS ist.

SSHFS auf Windows installieren

Windows-Benutzer müssen PowerShell verwenden, um SSHFS zu installieren. Klicke mit der rechten Maustaste auf das PowerShell-Symbol und wähle „Run as Administrator“ aus, um sicherzustellen, dass du die nötigen Berechtigungen hast.

  1. WinFsp installieren: WinFsp bietet die FUSE-Funktion, welche für SSHFS benötigt wird:
winget install -e --id "WinFsp.WinFsp"
  1. SSHFS-Wininstallieren: SSHFS-Win ist ein minimaler Port von SSHFS zu Windows:
winget install -e --id "SSHFS-Win.SSHFS-Win" 

Überprüfen der Installation

Nach der Installation kannst du nachsehen, ob SSHFS korrekt installiert ist, indem du die Version überprüfst. Führe in deinem Terminal (Linux/macOS) oder PowerShell (Windows) Folgendes aus:

sshfs --version

Dieser Befehl sollte die Versionsnummer des auf deinem System installierten SSHFS anzeigen.

Wenn SSHFS nun auf deinem lokalen Rechner installiert ist, kannst du mit dem mounten von Remote-Verzeichnissen beginnen. Im nächsten Abschnitt werden wir uns mit der grundlegenden Verwendung von SSHFS befassen, um ein Remote-Dateisystem zu mounten.

Grundlegende Verwendung von SSHFS

Sobald SSHFS auf deinem System installiert ist, kannst du es verwenden, um Remote-Verzeichnisse zu mounten. Dieser Abschnitt behandelt die grundlegende Verwendung von SSHFS, einschließlich der Befehlssyntax, des Mountens und Unmountens eines Remote-Verzeichnisses.

Syntax des SSHFS-Befehls

Die grundlegende Syntax des SSHFS-Befehls lautet wie folgt:

sshfs [user@]hostname:[remote_directory] [local_mount_point] [options] 
  • [user@]Hostname: Der SSH-Benutzer und der Hostname des Remote-Rechners. Wenn du den Benutzernamen weggelassen hast, verwendet das System den aktuellen lokalen Benutzernamen.
  • [remote_directory]: Das Verzeichnis auf dem Remote-Computer, das du mounten möchtest.
  • [local_mount_point]: Mounte das Remote-Verzeichnis im lokalen Verzeichnis.
  • [options]: Zusätzliche Optionen um das Verhalten von SSHFS anzupassen.

Ein Remote-Verzeichnis mounten

Um ein Remote-Verzeichnis zu mounten, folge diesen Schritten:

  • Erstelle einen lokalen Mount-Punkt: Zuerst erstellst du ein Verzeichnis auf deinem lokalen Computer, um das Remote-Verzeichnis zu mounten. Zum Beispiel:
mkdir ~/remote_mount 
  • Mounten des Remote-Verzeichnisses: Verwende den SSHFS-Befehl, um das Remote-Verzeichnis an den lokalen Mount-Punkt zu mounten.
    Um beispielsweise das Verzeichnis /var/www von einem Remote-Server example.com als Benutzer username in das lokale Verzeichnis ~/remote_mount einzubinden, führe Folgendes aus:
 sshfs [email protected]:/var/www ~/remote_mount 

Wenn die SSH-Schlüssel-Authentifizierung eingerichtet ist, muss kein Passwort eingegeben werden. Andernfalls wird dich das System auffordern, das SSH-Passwort einzugeben.

  • Überprüfe den Mount: Überprüfe, ob das Remote-Verzeichnis gemountet wurde, indem du den Inhalt des lokalen Mount-Punktes auflistest.
ls ~/remote_mount 

Du solltest den Inhalt des Remote /var/www-Verzeichnisses sehen.

Unmounten des Remote-Verzeichnisses

Nachdem du die Arbeit mit dem Remote-Verzeichnis beendet hast, kannst du den fusermount Befehl auf Linux oder macOS verwenden, um ihn zu unmounten. Benutze für Windows den Befehl , um das Verzeichnis zu unmounten.

Unmounten auf Linux und macOS

fusermount -u ~/remote_mount 

Unmounten auf Windows

umount ~/remote_mount 

Durch das Unmounten des Remote-Verzeichnisses wird die SSHFS-Sitzung getrennt und Systemressourcen freigegeben.

Erweiterte SSHFS-Optionen

Obwohl die grundlegende Verwendung von SSHFS unkompliziert ist, gibt es mehrere erweiterte Optionen, die ihre Funktionalität und Leistung noch weiter verbessern können. Dieser Abschnitt behandelt die Einstellungsberechtigungen, die Konfiguration von Verbindungsoptionen und die Verwendung von SSHFS mit verschiedenen Ports.

Berechtigungen einstellen

Standardmäßig werden Remote-Verzeichnisse mit den Berechtigungen des Remote-Systems gemountet. Du kannst diese Berechtigungen jedoch mit Mount-Optionen ändern:

  • Andere Benutzer erlauben: Um anderen Benutzern auf deinem lokalen System Zugriff auf das gemountete Verzeichnis zu gewähren, verwende die -o allow_other Option:
sshfs user@remote:/path/to/remote ~/local_mount -o allow_other 
  • UID und GID einstellen: Um bestimmte Benutzer-und Gruppen-IDs für die gemounteten Dateien festzulegen, verwende die uid- und gid-Optionen:
sshfs user@remote:/path/to/remote ~/local_mount -o uid=1000,gid=1000 

Konfiguriere Verbindungsoptionen

SSHFS ermöglicht es, deine Verbindung für eine bessere Leistung oder Sicherheit zu optimieren:

  • Komprimierung: Aktiviere die Komprimierung, um die Leistung bei langsamen Verbindungen potenziell zu verbessern:
sshfs user@remote:/path/to/remote ~/local_mount -o compression=yes 
  • Keep Alive: Um ein Timeout der Verbindung zu verhindern, verwende die Option ServerAliveInterval:
sshfs user@remote:/path/to/remote ~/local_mount -o ServerAliveInterval=15 
  • Caching: Cache-Verhalten für bessere Leistung anpassen:
sshfs user@remote:/path/to/remote ~/local_mount -o cache=yes,cache_timeout=115200 

Verwendung von SSHFS mit unterschiedlichen Ports

Wenn dein SSH-Server auf einem nicht-standardmäßigen Port läuft, kannst du ihn mit der Option -p festlegen:

sshfs -p 2222 user@remote:/path/to/remote ~/local_mount 

Dieser Befehl verbindet mit dem SSH-Server, der auf Port 2222 läuft.

Kombiniere Optionen

Du kannst mehrere Optionen in einem einzigen Befehl kombinieren. Zum Beispiel:

sshfs user@remote:/path/to/remote ~/local_mount -o allow_other,compression=yes,ServerAliveInterval=15,port=2222 

Dieser Befehl mountet das Remote-Verzeichnis, ermöglicht anderen Benutzern den Zugriff darauf, aktiviert die Komprimierung, legt ein Keep-Alive-Intervall fest und stellt eine Verbindung zu einem nicht standardmäßigen SSH-Port her.

Fazit

SSHFS (SSH Filesystem) bietet ein robustes und sicheres Tool, mit dem du Remote-Dateisysteme über SSH mounten und so nahtlos auf Remote-Dateien zugreifen kannst, als ob diese lokal gespeichert wären. Diese Anleitung hat dich durch die wesentlichen Schritte für die Einrichtung und Verwendung von SSHFS, von der Installation bis zur Fehlerbehebung, geführt.

Kernpunkte von SSHFS

  • Installation: Du kannst SSHFS auf verschiedenen Betriebssystemen, einschließlich Linux, macOS und Windows, installieren und damit eine breite Kompatibilität gewährleisten.
  • Basic Usage: Mit einfachen Befehlen kannst du Remote-Verzeichnisse mounten und unmounten und so Remote-Daten leicht zugänglich machen.
  • Erweiterte Optionen: Passe das SSHFS Setup mit Optionen für Berechtigungen, Verbindungseinstellungen und Port-Konfigurationen an, um die Funktionalität und Leistung zu verbessern.
  • Fehlerbehebung: Behebe häufige Probleme wie Verbindungsprobleme, Berechtigungsfehler und Leistungsengpässe um einen reibungslosen Betrieb zu gewährleisten.

Durch die Integration von SSHFS in deinen Workflow können Remote-Dateien sicher und effizient verwaltet, die Produktivität gesteigert und Aufgaben rationalisiert werden. Egal, ob du Systemadministrator oder IT-versierter Benutzer bist, SSHFS bietet eine flexible Lösung für den Remote-Dateizugriff.

Nach oben scrollen