Nous utilisons le SSHFS commande sous Linux pour monter un système de fichiers distant à l'aide de SFTP (Protocole de transfert de fichiers SSH ).
SSHFS est un client de système de fichiers utilisé pour monter et interagir avec des fichiers et des répertoires sur un serveur distant. SSH protocole est utilisé pour crypter l'échange de données entre les deux hôtes.
FTP (Protocole de transfert de fichiers ) est un protocole réseau utilisé pour transférer des fichiers entre deux ordinateurs sur un réseau, SFTP d'autre part en plus d'effectuer une fonction similaire à FTP, il intègre une couche de sécurité utilisée pour crypter les données envoyées et reçues entre les deux machines sur Internet.
Maintenant, comment les deux outils fonctionnent-ils ensemble ? Eh bien, SSHFS est juste un système de fichiers dans l'espace utilisateur, pour qu'il remplisse la fonction de montage d'un système de fichiers distant, il utilise SFTP .
Installer SSHFS sous Linux
SSHFS est un outil logiciel basé sur Linux qui peut être installé à partir des référentiels standard dans la plupart des distributions à l'aide du gestionnaire de packages par défaut.
$ sudo apt install sshfs [On Debian, Ubuntu and Mint] $ sudo yum install fuse-sshfs [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux] $ sudo emerge -a net-fs/sshfs [On Gentoo Linux] $ sudo pacman -S sshfs [On Arch Linux] $ sudo zypper install sshfs [On OpenSUSE]
Monter le système de fichiers Linux distant
Pour que cela fonctionne, le serveur distant doit être accessible, donc effectuez des requêtes ping. Nous devons également nous assurer que nous avons les informations d'identification du serveur, par exemple le mot de passe.
SSH doit également être configuré sur les ordinateurs serveur et client.
La syntaxe de la commande est :
$ sshfs [user@]host:[dir] mountpoint [options]
De la syntaxe nous avons :
- utilisateur – Cela spécifie le nom d'utilisateur sur le serveur. Lorsqu'il est connecté via SSH, on nous demande un mot de passe pour le compte d'utilisateur distant avec le nom d'utilisateur spécifié.
- hôte – Nous spécifions le nom d'hôte du serveur distant, nous pourrions spécifier un nom de domaine, par exemple www.example.com qui est plus facile à retenir ou une adresse IP.
- répertoire – Cela spécifie le chemin du répertoire distant.
- point de montage :Cela spécifie l'emplacement dans lequel nous voulons que notre système de fichiers soit monté, notez que c'est dans notre système local. Normalement, les systèmes de fichiers sont montés dans /mnt répertoire.
L'image ci-dessous montre l'adresse IP et le système de fichiers du serveur distant que nous voulons monter sur notre système local.
Sur notre système local, créons un répertoire de préférence dans le /mnt répertoire où nous allons monter le système de fichiers distant :
$ sudo mkdir /mnt/remoteFS
Maintenant, pour monter le système de fichiers Linux distant situé à 192.168.100.62 à /home/user répertoire, on écrit :
$ sudo sshfs -o allow_other [email protected]:/home/user /mnt/remoteFS/
Lorsque nous exécutons la commande ci-dessus, nous sommes invités à entrer un mot de passe pour le compte d'utilisateur du système distant que nous avons spécifié dans la commande.
Une fois le mot de passe accepté, le système de fichiers distant est monté sur notre système local sur le point de montage sélectionné /mnt/remoteFS . Notez que nous avons utilisé le -o allow_other
option pour permettre aux autres utilisateurs de lire et d'écrire dans le système de fichiers monté.
Pour vérifier que le système de fichiers Linux distant est monté, exécutez :
$ sudo ls /mnt/remoteFS
À partir de l'image ci-dessus, nous listons le système de fichiers distant qui est maintenant monté sur notre machine locale. Vous pouvez également vérifier son point de montage dans notre système local en utilisant.
$ df -Th
Attention :NE SUPPRIMEZ PAS LE SYSTÈME DE FICHIERS !! – Nous ne devons pas supprimer le système de fichiers monté car il sera également supprimé sur le serveur distant et nous ne le voulons pas.
Montage permanent du système de fichiers Linux distant
Le montage que nous avons vu jusqu'à présent n'est que temporaire, pour monter le système de fichiers distant de façon permanente, nous éditons le fstab fichier situé dans /etc répertoire comme suit :
$ sudo vim /etc/fstab
Une fois le fichier ouvert, collez la ligne suivante, n'oubliez pas d'utiliser les détails spécifiques à votre configuration.
sshfs#[email protected]:/home/user/ /mnt/remoteFS fuse.sshfs defaults 0 0
Pour monter le fichier, exécutez la commande suivante :
$ sudo mount -a
Maintenant, même si nous sommes déconnectés de la machine distante, le système de fichiers restera monté dans le répertoire spécifié sur lequel nous l'avions monté précédemment.
Démonter le système de fichiers Linux distant
Supposons que nous en ayons fini avec ce système de fichiers, nous pouvons le démonter en utilisant le umount commande comme suit :
$ sudo umount /mnt/remoteFS
Nous avons appris à monter un système de fichiers distant sur notre machine locale et à effectuer cette opération via le protocole SSH à des fins de sécurité. Nous avons également vu comment monter le système de fichiers sur notre système local de manière permanente en éditant le fichier /etc/fstab fichier.