SSHFS-Win : accédez au contenu d'une machine distante depuis l'explorateur de fichiers Windows

SSHFS-Win : accédez au contenu d’une machine distante depuis l’explorateur de fichiers Windows

Adieu Samba !

Avatar de l'auteur
David Legrand

Publié dans

Logiciel

10/05/2019 4 minutes
43

SSHFS-Win : accédez au contenu d'une machine distante depuis l'explorateur de fichiers Windows

Si vous utilisez un Raspberry Pi ou un serveur de manière courante, vous connaissez certainement SSH. Mais savez-vous que ce protocole peut être utilisé pour accéder simplement aux fichiers de la machine distante ?

Lorsque l'on veut se connecter à un serveur distant de manière sécurisée, sans interface graphique, on opte le plus souvent pour OpenSSH, une implémentation open source du protocole Secure Shell, accessible tant sous Linux que Windows 10.

Elle peut aller bien au-delà du simple terminal, pouvant être utilisée pour accéder au contenu distant de la machine par exemple. Pour cela il faut en général passer par des applications spécifiques comme WinSCP qui permet un accès SFTP (SSH File Transfer Protocol). Mais l'on peut aussi vouloir naviguer de manière plus classique dans les fichiers et dossiers.

C'est là qu'une solution comme SSHFS (SSH File System) peut être utile, tout comme son portage sous Windows.

Un accès SFTP comme un simple répertoire distant

SSHFS utilise un système de fichier dans l'espace utilisateur du système (FUSE), il permet ainsi de monter un dossier utilisable de manière classique depuis un protocole spécifique, ici SFTP. Sous Windows, c'est un peu la même chose, sauf que l'accès prend la forme d'un lecteur distant, disponible sur le réseau local.

Il faut tout d'abord installer le composant permettant d'exploiter FUSE sur le système en complément de SSHFS : WinFsp. Vous pouvez opter pour une méthode classique ou en passant par Chocolatey avec une simple ligne de commande. Une méthode qui aura l'intérêt de faciliter vos mises à jour : 

choco install -y sshfs

Ensuite, vous n'aurez plus qu'à demander l'ajout d'un emplacement réseau dans l'Explorateur de fichiers de Windows via un clic droit sur « Ce PC ». Pour notre exemple nous avons utilisé un simple Raspberry Pi configuré pour un usage distant. Vous devrez utiliser les paramètres de la connexion suivants :

\\sshfs\utilisateur@ip!port\dossier
\\sshfs\[email protected]!port\dossier

Si vous utilisez le port par défaut (22), il est optionnel. Le nom d'utilisateur et le mot de passe pourront vous être à nouveau demandés. Dans le cas de notre Raspberry Pi, cela donne l'adresse suivante :

\\sshfs\[email protected]

Accéder au dossier de votre choix

Cette méthode permet d'indiquer un dossier relatif à celui de l'utilisateur mentionné. Il sera bientôt possible d'accéder à un dossier relatif à la racine en utilisant sshfs.r au début de l'adresse, une fois la branche 3.x de l'outil disponible. Elle est actuellement en bêta. En attendant il faut opter pour une autre solution :

\\sshfs\[email protected]\..\..
\\sshfs\[email protected]\..\..\var

Créer l'accès en ligne de commandes

Si vous préférez opter pour la ligne de commandes plutôt que l'interface graphique de Windows, il faut utiliser net use avec les paramètres que nous venons d'évoquer, selon ce que vous voulez faire. Dans notre cas cela donne :

net use y: \\sshfs\[email protected]
net use z: \\sshfs\[email protected]\..\..\var

Les identifiants vous seront alors demandés. Vous pouvez directement les préciser, de manière complète ou partielle selon ce que vous préférez :

net use y: \\sshfs\[email protected] /user:pi
net use z: \\sshfs.r\[email protected]\..\..\var /user:pi motdepasse

Les autres commandes utiles

Pour qu'un partage soit monté à chaque démarrage du système, ajoutez ce paramètre :

/persistent:yes

Vous pouvez à tout moment lister les partages actifs :

net use

Pour supprimer un partage, utiliser la commande suivante :

net use z: /delete

Écrit par David Legrand

Tiens, en parlant de ça :

Sommaire de l'article

Introduction

Un accès SFTP comme un simple répertoire distant

Accéder au dossier de votre choix

Créer l'accès en ligne de commandes

Les autres commandes utiles

Commentaires (43)


J’ai la flemme de faire la même sur tous vos articles récents de Nxi et IH (comme l’installation à distance ou la présentation de Chocolatey) donc j’en fais un global ici.



MEEEEERRRCIIIIIIIIIIIIII (oui je gueule c’est pour être sûr que vous entendez <img data-src=" />)



Sérieusement, merci beaucoup pour ces tutos clairs et complets d’aide à l’administration de machines Windows/Linux, ça m’a remotivé à acheter un Pi pour mettre les mains dans le cambouis.



<img data-src=" />


Super info ! Ca va m’être bien pratique :)



Petit question concernant ce type d’articles : il ne serait pas possible de les regrouper dans une catégorie (avec un onglet) dédiée ? Type “Tutoriels” ou un truc du genre.

Histoire de faciliter la recherche de ces articles après plusieurs semaines, quand on a une mémoire de poisson rouge <img data-src=" />


Voir ici ;)


Haaaaan ! Impecc’ ! <img data-src=" />

Je n’ai pas trouvé comment y accéder par le menu par contre, donc je me mets le lien de côté. Merci !




\sshfs\utilisateur@ip!port\dossier





Oh god ! mais qu’est-ce que c’est que cette syntaxe pour le port ??? Ils pouvaient pas utiliser “:” comme partout ?

je parie que c’est une limite de windows…


Oui c’est pas directement accessible en v6 on verra ça en v7 ;)








David_L a écrit :



Oui c’est pas directement accessible en v6 on verra ça en v7 ;)







C’est dommage… un lien dans le menu Actu en haut ou dans Communauté, c’est pas jouable ?



On évite de toucher à la v6 depuis un moment pour se concentrer sur la v7, sinon tout est toujours jouable, mais ne fait pas avancer le reste des projets <img data-src=" />








David_L a écrit :



On évite de toucher à la v6 depuis un moment







“Ne touchez plus à rien sinon ça pète !” <img data-src=" />



Non, mais faire une retouche n’est jamais anodin, et on se retrouve vite à finir par retoucher plein de trucs si on se dit “bon allez ça ira vite”. Du coup, quand on opère un switch de priorité sur les projets, on évite les petites retouches du genre qui seront de facto corrigées à moyen terme.








KP2 a écrit :



Oh god ! mais qu’est-ce que c’est que cette syntaxe pour le port ??? Ils pouvaient pas utiliser “:” comme partout ?

je parie que c’est une limite de windows…





Évidemment, puisque sous Windows, un : dans un chemin sert de séparateur entre nom de lecteur et&nbsp;nom de fichier.



Selon l’avancement de la V7 c’est en effet la meilleure posture à adopter :)

Je paie au quotidien le choix de ma direction de faire des petites retouches à gauche à droite sur notre produit, laissant s’accumuler le retard sur les projets prioritaires… donc je comprends que trop bien ^^


Merci beaucoup pour votre travail de vulgarisation, de tutos et bidouilles sur Next inpact et Inpact Hardware


Pas de quoi, on est là pour ça <img data-src=" />


Très intéressant, merci !


Je savais pas qu’il y avait un portage pour Windows, merci de l’info !


J’ai récemment monté un sshfs sous windows, mais j’ai du passer par une application qui faisait le montage. Là ça l’intègre à windows, beaucoup plus pratique !


Je ne connaissais pas tiens, merci beaucoup <img data-src=" /><img data-src=" />


Je vais finir par m’acheter une licence Windows pour profiter de tous ces articles <img data-src=" />


Testé! Excellent!


Je dévie un peu, mais vous connaissez un moyen de monter un repertoire distant en le faisant passer pour un repertoire local ?&nbsp;

Certaines application ne savent pas gérer les partages, ou encore j’ai souvent des erreurs quand je veux lancer une appli plus ou moins portable à distance.


han c’est bon à savoir, je note ça dans un coin <img data-src=" />








David_L a écrit :



Non, mais faire une retouche n’est jamais anodin, et on se retrouve vite à finir par retoucher plein de trucs si on se dit “bon allez ça ira vite”. Du coup, quand on opère un switch de priorité sur les projets, on évite les petites retouches du genre qui seront de facto corrigées à moyen terme.







Oui je sais bien, je taquine <img data-src=" />









Noathym a écrit :



Je dévie un peu, mais vous connaissez un moyen de monter un repertoire distant en le faisant passer pour un repertoire local ? 

Certaines application ne savent pas gérer les partages, ou encore j’ai souvent des erreurs quand je veux lancer une appli plus ou moins portable à distance.







Ca existe depuis qq temps sous windows, il faut faire comme ça :

https://docs.microsoft.com/fr-fr/windows-server/storage/disk-management/assign-a…



Je n’ai pas dit que cela me ferait remoncer à mon Ubuntu <img data-src=" />


Tu lui suggères d’appliquer tes tutos windows avec Wine sur son ubuntu ? <img data-src=" />


Mouais bof, le plus intéressant aurait été d’écrire un driver ProjFS pour monter le système de fichier


Hummm ça peut être un bon délire ça tiens.


Dans le même genre, mais pour des ressources wevdav, sftp, cloud, ya

https://www.raidrive.com/



Associé à freefilesync, on obtient une solution de synchro avec un Nas pas trop dégueulasse…


Merci pour ce tuto.

Ça fonctionne avec une authentification par clé ?








teddyalbina a écrit :



Mouais bof, le plus intéressant aurait été d’écrire un driver ProjFS pour monter le système de fichier





Quitte à passer pour un ignorant, qu’est-ce qu’un driver ProjFS ? (j’imagine que FS sont des initiales pour file system)



Ça me donne envie d’essayer Fuse chez moi, tiens !


Ah merci de l’info, je vais pouvoir tester ça pour accéder à ma base Keepass qui est sur mon RaspberryPi, ça m’évitera la dépendance à un plugin Keepass :-).








sksbir a écrit :



Dans le même genre, mais pour des ressources wevdav, sftp, cloud, ya

https://www.raidrive.com/



Associé à freefilesync, on obtient une solution de synchro avec un Nas pas trop dégueulasse…





Moutain Duck permet aussi de faire ça depuis un moment. Après l’idée c’était de faire quelque chose sans avoir à se reposer sur un outil tiers pour la gestion des fichiers, seulement pour permettre le montage via SSH.



PS : pour synchroniser des services Cloud les NAS ont en général tout ce qu’il faut ;) Par contre c’est dommage de voir qu’ils n’intègrent pas des outils de montage tels que SSHFS (mais c’est jouable manuellement).

&nbsp;





teddyalbina a écrit :



Mouais bof, le plus intéressant aurait été d’écrire un driver ProjFS pour monter le système de fichier





Y’a plus qu’à <img data-src=" />

&nbsp;





fred42 a écrit :



Tu lui suggères d’appliquer tes tutos windows avec Wine sur son ubuntu ? <img data-src=" />





Chiche ? <img data-src=" />

&nbsp;





Noathym a écrit :



Je dévie un peu, mais vous connaissez un moyen de monter un repertoire distant en le faisant passer pour un repertoire local ?&nbsp;

Certaines application ne savent pas gérer les partages, ou encore j’ai souvent des erreurs quand je veux lancer une appli plus ou moins portable à distance.





Un VPN ?

&nbsp;





Commentaire_supprime a écrit :



Ça me donne envie d’essayer Fuse chez moi, tiens !





Y’a de quoi, y’a même des projets pour monter des archives RAR <img data-src=" />









David_L a écrit :



Un VPN ?&nbsp;





&nbsp;Non, je voulais dire, faire passer un répertoire en partage sur le LAN pour un répertoire physiquement sur le pc .

Le monter en tant que lecteur en lui donnant une lettre (sous windows) résout une partie des problème, mais pas tout.

&nbsp;



ha oui, mais raidrive est gratuit, lui :)


Avec la commande mklink



Par exemple

mklink “c:\monpointdemontage” “\serveur\coucou”


Désolé, j’oublie toujours que ne pas payer les développeurs pour leur travail est souvent un critère pour le choix d’un outil utile au quotidien <img data-src=" /> Après de mémoire MD est quand même bien plus complet que RD, tout dépendra sans doute du besoin, notamment au niveau des protocoles supportés/fonctionnalités <img data-src=" />.&nbsp;








Noathym a écrit :



&nbsp;Non, je voulais dire, faire passer un répertoire en partage sur le LAN pour un répertoire physiquement sur le pc .

Le monter en tant que lecteur en lui donnant une lettre (sous windows) résout une partie des problème, mais pas tout.

&nbsp;





Il te suffit de monter un disque VHD/VHDX présent sur un partage réseau: ça sera un disque local.









KP2 a écrit :



Oh god ! mais qu’est-ce que c’est que cette syntaxe pour le port ??? Ils pouvaient pas utiliser “:” comme partout ?

je parie que c’est une limite de windows…





C’est un syntaxe de porc, comme pour les “\” à la place des “/”, depuis MS-DOS. <img data-src=" />









patos a écrit :



Il te suffit de monter un disque VHD/VHDX présent sur un partage réseau: ça sera un disque local.





Ça engendrerai pas des problèmes en multi-user ça ?&nbsp;





CryoGen a écrit :



Avec la commande mklink



Par exemple

mklink “c:\monpointdemontage” “\serveur\coucou”





Merci, je vais tester ça :)









Noathym a écrit :



Ça engendrerai pas des problèmes en multi-user ça ?&nbsp;



En multi-user, ça marche simplement pas ^^; le VHD n’est montable qu’à un endroit à la fois…