GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So verwenden Sie SSHFS zum Mounten von Remote-Verzeichnissen über SSH

SSHFS (SSH Filesystem) ist ein auf FUSE basierender Dateisystem-Client zum Mounten von Remote-Verzeichnissen über eine SSH-Verbindung. SSHFS verwendet das SFTP-Protokoll, das ein Subsystem von SSH ist und auf den meisten SSH-Servern standardmäßig aktiviert ist.

Im Vergleich zu anderen Netzwerkdateisystemprotokollen wie NFS und Samba besteht der Vorteil von SSHFS darin, dass keine zusätzliche Konfiguration auf der Serverseite erforderlich ist. Um SSHFS zu verwenden, benötigen Sie nur SSH-Zugriff auf den Remote-Server.

Da SSHFS SFTP verwendet, müssen alle übertragenen Daten zwischen dem Server und dem Client verschlüsselt und entschlüsselt werden. Dies führt zu einer leicht verringerten Leistung im Vergleich zu NFS und einer höheren CPU-Auslastung auf dem Client und Server.

Dieses Tutorial zeigt Ihnen, wie Sie den SSHFS-Client unter Linux, macOS und Windows installieren und ein Remote-Verzeichnis einhängen.

Installieren von SSHFS #

SSHFS-Pakete sind für alle wichtigen Betriebssysteme verfügbar und die Installation ist ziemlich einfach.

Installieren von SSHFS auf Ubuntu und Debian #

SSHFS ist in den standardmäßigen Ubuntu- und Debian-Repositories verfügbar. Aktualisieren Sie den Paketindex und installieren Sie den sshfs-Client, indem Sie Folgendes eingeben:

sudo apt updatesudo apt install sshfs

Installieren von SSHFS auf CentOS #

Führen Sie unter CentOS und anderen Red Hat-Derivaten den folgenden Befehl aus, um sshfs zu installieren:

sudo yum install sshfs

Installieren von SSHFS auf macOS #

macOS-Benutzer können den SSHFS-Client installieren, indem sie die FUSE- und SSHFS-Pakete von der osxfusesite oder über Homebrew herunterladen:

brew cask install osxfusebrew install sshfs

Installieren von SSHFS unter Windows #

Windows-Benutzer müssen zwei Pakete installieren, WinFsp und SSHFS-Win.

  • WinFsp.
  • SSHFS-Win.

Mounten eines Remote-Dateisystems #

Die folgenden Anweisungen gelten für alle Linux-Distributionen und macOS.

Um ein entferntes Verzeichnis zu mounten, muss der SSH-Benutzer darauf zugreifen können. Der SSHFS-Mount-Befehl hat folgende Form:

sshfs [user@]host:[remote_directory] mountpoint [options]

Der Befehl sshfs liest die SSH-Konfigurationsdatei und verwendet die Einstellungen pro Host. Wenn das Remote-Verzeichnis nicht angegeben ist, wird standardmäßig das Home-Verzeichnis des Remote-Benutzers verwendet.

Um beispielsweise das Home-Verzeichnis eines Benutzers namens „linuxize“ auf einem Remote-Host mit der IP-Adresse „192.168.121.121“ zu mounten, erstellen Sie zuerst ein Verzeichnis, das als Mount-Punkt dient, es kann sich um einen beliebigen Ort handeln:

mkdir ~/linuxizeremote

Verwenden Sie dann den Befehl sshfs, um das Remote-Verzeichnis zu mounten:

sshfs [email protected]:/home/linuxize /home/linuxize/linuxizeremote

Sie werden aufgefordert, das Benutzerkennwort einzugeben. Um zu vermeiden, dass Sie jedes Mal das Passwort eingeben, wenn Sie das Remote-Verzeichnis einhängen, generieren Sie SSH-Schlüssel und richten Sie die passwortlose SSH-Anmeldung ein.

Jetzt können Sie mit den Verzeichnissen und Dateien auf einem Remote-Server genauso interagieren wie mit den lokalen Dateien. Beispielsweise können Sie Dateien und Verzeichnisse bearbeiten, löschen, umbenennen oder neu erstellen.

Wenn Sie das Remote-Verzeichnis dauerhaft einhängen möchten, müssen Sie die Datei /etc/fstab des lokalen Computers bearbeiten Datei und füge einen neuen Mount-Eintrag hinzu. Auf diese Weise wird das Remote-Verzeichnis automatisch gemountet, wenn Ihr System hochfährt.

So mounten Sie ein Remote-Verzeichnis über SSHFS von /etc/fstab , verwenden Sie fuse.sshfs als Dateisystemtyp.

/etc/fstab
user@host:/remote/dir  /local/mountpoint  fuse.sshfs  defaults  0  0

Stellen Sie beim Erstellen eines dauerhaften Mounts sicher, dass Sie den Remote-Host mithilfe der SSH-Schlüssel-basierten Authentifizierung verbinden können.

Mounten eines Remote-Dateisystems unter Windows #

Windows-Benutzer können den Windows-Explorer verwenden, um ein Netzlaufwerk dem Remote-Verzeichnis auf dem SSH-Server zuzuordnen.

Öffnen Sie den Windows Explorer, klicken Sie mit der rechten Maustaste auf „Dieser PC“ und wählen Sie „Netzlaufwerk verbinden“. Wählen Sie ein Laufwerk, auf dem gemountet werden soll, und geben Sie im Feld „Ordner“ den entfernten Benutzer, Server und Pfad im folgenden Format ein:

\\sshfs\user@host[\PATH]

Zum Zeitpunkt der Erstellung dieses Artikels unterstützt SSHFS-Win keine schlüsselbasierte Authentifizierung, daher muss der Remote-SSH-Server so konfiguriert werden, dass er eine passwortbasierte Authentifizierung akzeptiert.

Weitere Informationen finden Sie im SSHFS-Winmanual.

Unmounten eines Remote-Dateisystems #

Um ein gemountetes Dateisystem zu trennen, verwenden Sie entweder die umount oder fusermount Befehl gefolgt von dem Verzeichnis, in dem es gemountet wurde (Mount-Punkt):

fusermount -u /local/mountpoint
umount /local/mountpoint

Schlussfolgerung #

In diesem Handbuch haben Sie gelernt, wie Sie SSHFS verwenden, um ein Remote-Verzeichnis über SSH zu mounten. Dies kann nützlich sein, wenn Sie mit den Remote-Dateien unter Verwendung Ihrer Anwendungen auf dem lokalen Computer interagieren möchten.

Geben Sie für eine vollständige Liste der sshfs-Optionen man sshfs ein in Ihrem Terminal.

Sie können auch den Benutzerzugriff auf ihr Home-Verzeichnis einschränken, indem Sie eine SFTP-Chroot-Jailenumgebung einrichten und den Standard-SSH-Port ändern, um Ihrem Server eine zusätzliche Sicherheitsebene hinzuzufügen.

Wenn Sie Fragen oder Feedback haben, können Sie gerne einen Kommentar hinterlassen.


Linux
  1. So mounten Sie die Remote-Windows-Freigabe unter Linux

  2. Wie überschleife ich Verzeichnisse in Linux?

  3. Wie man Verzeichnisse über ssh unterscheidet

  4. Wie verwende ich den su-Befehl über die Adb-Shell?

  5. Verwenden Sie ein Gerät über SSH?

So verwenden Sie SSH, um eine Verbindung zu einem Remote-Server herzustellen

Mounten Sie einen Remote-Ordner mit sshfs

Gewusst wie:FreeBSD-Fernverwaltung

So verwenden Sie SSHFS-Mount mit Remote-Verzeichnissen über SSH

So verwenden Sie SSH, um eine Verbindung zu einem Remote-Server unter Linux oder Windows herzustellen

Wie mounte ich einen Remote-Linux-Ordner in Windows über SSH?