Comment utiliser SSHFS pour monter des répertoires distants sur SSH

SSHFS (SSH Filesystem) est un client de système de fichiers basé sur FUSE pour monter des répertoires distants sur une connexion SSH. SSHFS utilise le protocole SFTP, qui est un sous-système de SSH et il est activé par défaut sur la plupart des serveurs SSH.

Par rapport à d’autres protocoles de système de fichiers réseau tels que NFS et Samba, l’avantage de SSHFS est qu’il ne nécessite aucune configuration supplémentaire côté serveur. Pour utiliser SSHFS, vous n’avez besoin que d’un accès SSH au serveur distant.

Étant donné que SSHFS utilise SFTP, toutes les données transmises entre le serveur et le client doivent être chiffrées et déchiffrées. Il en résulte une performance légèrement dégradée par rapport à NFS et une utilisation plus élevée du processeur sur le client et le serveur.

Ce tutoriel vous montrera comment installer le client SSHFS sur Linux, macOS et Windows et comment monter un répertoire distant.

Installation de SSHFS #

Les packages SSHFS sont disponibles pour tous les principaux systèmes d’exploitation et l’installation est assez simple.

Installer SSHFS sur Ubuntu et Debian #

SSHFS est disponible à partir des référentiels Ubuntu et Debian par défaut. Mettez à jour l’index des packages et installez le client sshfs en tapant:

sudo apt updatesudo apt install sshfs

Installation de SSHFS sur CentOS #

Sur CentOS et autres dérivés Red Hat, exécutez la commande suivante pour installer sshfs:

sudo yum install sshfs

Installation de SSHFS sur macOS #

Les utilisateurs de macOS peuvent installer le client SSHFS en téléchargeant les packages FUSE et SSHFS depuis le site osxfuse ou via Homebrew:

brew cask install osxfusebrew install sshfs

Installation de SSHFS sur Windows #

Les utilisateurs de Windows doivent installer deux packages, WinFsp et SSHFS-Win.

  • WinFsp.
  • SSHFS-Win.

Montage du système de fichiers distant #

Les instructions suivantes s’appliquent à toutes les distributions Linux et macOS.

Pour monter un répertoire distant, l’utilisateur SSH doit pouvoir y accéder. La commande de montage SSHFS prend la forme suivante:

sshfs [[email protected]]host:[remote_directory] mountpoint [options]

La commande sshfs lira le fichier de configuration SSH et utilisera les paramètres par hôte. Si le répertoire distant n’est pas spécifié, il correspond par défaut au répertoire de base de l’utilisateur distant.

Par exemple, pour monter le répertoire personnel d’un utilisateur nommé «linuxize» sur un hôte distant avec une adresse IP de «192.168.121.121», créez d’abord un répertoire qui servira de point de montage, il peut s’agir de n’importe quel emplacement de votre choix:

mkdir ~/linuxizeremote

Utilisez ensuite la commande sshfs pour monter le répertoire distant:

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

Vous serez invité à saisir le mot de passe utilisateur. Pour éviter de taper le mot de passe chaque fois que vous montez le répertoire distant, générez des clés SSH et configurez la connexion SSH sans mot de passe.

Vous pouvez désormais interagir avec les répertoires et fichiers situés sur un serveur distant de la même manière qu’avec les fichiers locaux. Par exemple, vous pouvez modifier, supprimer, renommer ou créer de nouveaux fichiers et répertoires.

Si vous souhaitez monter de façon permanente le répertoire distant, vous devez modifier le/etc/fstabdéposer et ajouter une nouvelle entrée de montage. De cette façon, lorsque votre système démarrera, il montera automatiquement le répertoire distant.

Pour monter un répertoire distant sur SSHFS à partir de/etc/fstab, utilisationfuse.sshfscomme type de système de fichiers.

/ etc / fstab
[email protected]:/remote/dir  /local/mountpoint  fuse.sshfs  defaults  0  0

Lors de la création d’un montage persistant, assurez-vous que vous pouvez connecter l’hôte distant à l’aide de l’authentification basée sur la clé SSH.

Montage du système de fichiers distant sur Windows #

Les utilisateurs Windows peuvent utiliser l’Explorateur Windows pour mapper un lecteur réseau au répertoire distant sur le serveur SSH.

Ouvrez l’Explorateur Windows, cliquez avec le bouton droit sur «Ce PC» et sélectionnez «Mapper le lecteur réseau». Choisissez un lecteur à monter et dans le champ « Dossier », entrez l’utilisateur distant, le serveur et le chemin d’accès au format suivant:

\\sshfs\u[email protected][\PATH]

Au moment de la rédaction de cet article, SSHFS-Win ne prend pas en charge l’authentification par clé. Le serveur ssh distant doit donc être configuré pour accepter l’authentification par mot de passe.

Pour plus d’informations, consultez le manuel SSHFS-Win.

Démontage du système de fichiers distant #

Pour détacher un système de fichiers monté, utilisez soit leumountoufusermountcommande suivie du répertoire où il a été monté (point de montage):

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

Conclusion #

Dans ce guide, vous avez appris à utiliser SSHFS pour monter un répertoire distant sur SSH. Cela peut être utile lorsque vous souhaitez interagir avec les fichiers distants à l’aide des applications de votre machine locale.

Pour une liste complète des options sshfs, tapezman sshfs