1. Introduction▲
Il est de plus en plus courant de nos jours d'avoir besoin d'accéder à distance aux données d'un serveur. Plusieurs solutions existent :
- l'accès en VPN ;
- utilisation de systèmes de synchronisations dans le Cloud tels que Google Drive, DropBox ;
- accès en partages alternatifs tels que FTP, WebDAV.
L'utilisation abordée dans ce tutoriel est celle du protocole SFTP : Secure File Transfer Protocol. Il s'agit d'effectuer un transfert de fichiers à travers une liaison SSH sécurisée.
Il ne faut pas confondre avec FTPS qui désigne FTP over SSL, qui est un autre protocole.
Nous désignerons le logiciel ou le poste se connectant comme le client.
Ce tutoriel abordera l'aspect connexion client et non pas l'aspect serveur. Il est présumé que votre serveur est configuré pour accepter les connexions SFTP. En général, un serveur intégrant SSH tel que OpenSSH suffit.
Nous utiliserons le client Cyberduck car il dispose d'une version Windows et Mac OS X, et même une version Iphone.
Pour télécharger CyberDuck : https://cyberduck.io/
D'autres clients existent, notamment WinSCP, Filezilla ; mais le tutoriel est calé sur CyberDuck. Cyberduck permet également des connexions FTP et supporte les fonctionnalités qu'on en attend (ex. : le traitement par lot (transfert de plusieurs fichiers), changement de droit, etc.). Il supporte aussi le WebDAV, et le protocole Amazon S3.
2. Installation Windows▲
Une fois le logiciel installé, dans l'écran principal, cliquer sur le « + » en bas à gauche pour créer votre profil de connexion :
En haut dans le menu déroulant, il faut remplacer FTP (Protocole de Transfert Internet sélectionné par défaut) par SFTP.
Dans le nom du signet, mettez le nom que vous souhaitez donner à la connexion, par exemple cnx serveur. Ce nom ne sert que de titre pour votre profil de connexion.
Vous aurez d'autres informations à renseigner, mais commencez par cliquer sur le triangle « plus d'options » afin d'accéder à tous les champs à remplir ; vous aurez l'écran suivant :
Voici les champs que vous aurez à renseigner :
- nom du signet : il s'agit du nom que vous donnerez à votre profil de connexion ;
- serveur : c'est l'adresse IP de votre serveur ou son nom d'hôte – exemple 192.168.1.100 ou serveur.nomsociete.com ;
- port : 22 par défaut pour le protocole SSH ; si différent, celui-ci vous sera donné par votre administrateur réseau.
Champs optionnels :
- chemin d'accès : il s'agit du dossier par défaut dans lequel vous serez connecté ;
- télécharger vers : il s'agit du dossier par défaut où seront téléchargés les fichiers si vous n'utilisez pas le glisser-déposer.
Une fois les réglages effectués, fermez la fenêtre secondaire avec la croix rouge. Votre profil de connexion est créé.
Lors de la première connexion, vous aurez le message « empreinte inconnue », il faudra cliquer sur « Autoriser » et cocher la case « Toujours » pour qu'il ne le redemande pas.
Il faudra ensuite entrer votre nom d'utilisateur et votre mot de passe.
Vous aurez ensuite accès au contenu du dossier partagé.
Il vous suffira de glisser les documents vers votre bureau, vous aurez alors une fenêtre de transfert :
Vous pouvez fermer la fenêtre d'état de transfert une fois celui-ci effectué. Une fois le document modifié, il suffit de le glisser dans la fenêtre Cyberduck, une fenêtre de confirmation s'ouvrira :
Il suffit de valider pour que la nouvelle version du fichier soit téléchargée sur le serveur.
3. Installation MAC OS X▲
Une fois le logiciel installé, dans l'écran principal, cliquer sur le « + » en bas à gauche pour créer votre profil de connexion :
En haut dans le menu déroulant, il faut remplacer FTP (Protocole de Transfert Internet sélectionné par défaut) par SFTP.
Dans le nom du signet, mettez le nom que vous souhaitez donner à la connexion (exemple : serveur distant). Ce nom ne sert que de titre pour votre profil de connexion.
Vous aurez d'autres informations à renseigner, mais commencez par cliquer sur le triangle « plus d'options » afin d'accéder à tous les champs à remplir :
vous aurez l'écran suivant :
Voici les champs que vous aurez à renseigner :
- nom du signet : il s'agit du nom que vous donnerez à votre profil de connexion ;
- serveur : c'est l'adresse IP de votre serveur ou son nom d'hôte – exemple 192.168.1.100 ou serveur.nomsociete.com ;
- port : 22 par défaut pour le protocole SSH ; si différent, celui-ci vous sera donné par votre administrateur réseau.
Champs optionnels :
- chemin d'accès : il s'agit du dossier par défaut dans lequel vous serez connecté ;
- télécharger vers : il s'agit du dossier par défaut ou seront téléchargés les fichiers si vous n'utilisez pas le glisser-déposer.
Ci-dessous un exemple d’écran avec les réglages remplis :
Une fois les réglages effectués, fermez la fenêtre secondaire avec la croix rouge. Votre profil de connexion est créé.
Lors de la première connexion, vous aurez le message « l’hôte est actuellement inconnu du système », il faudra cliquer sur « permettre » en cochant la case « Toujours » pour qu'il ne le redemande pas.
Il faudra ensuite entrer votre nom d'utilisateur et votre mot de passe. Vous aurez ensuite accès au contenu du dossier partagé.
Il vous suffira de glisser les documents vers votre bureau, vous aurez alors une fenêtre de transfert :
Vous pouvez fermer la fenêtre d'état de transfert une fois celui-ci effectué.
Une fois le document modifié, il suffit de le glisser dans la fenêtre Cyberduck, une fenêtre de confirmation s'ouvrira :
Il suffit de valider pour que la nouvelle version du fichier soit téléchargée sur le serveur.
4. Installation Linux▲
Pour l'installation sous Linux, nous avons pris comme exemple Ubuntu. Mais ceci est applicable à toute distribution Linux. Le seul prérequis est que le gestionnaire de fichiers gère l'accès réseau.
Paradoxalement, la connexion depuis Ubuntu est plus simple, aucun logiciel supplémentaire n'est nécessaire.
Pour cela, ouvrez le gestionnaire de fichiers sur la gauche :
Cliquez ensuite sur l’icône « connexion à un serveur » en bas à gauche, vous aurez alors la fenêtre suivante :
Tapez ensuite dans la barre d'adresse :
sftp://[adresse ou nom d´hôte]:port
Si le port est celui par défaut, c'est à dire 22, il est inutile de le renseigner. Celui-ci a dû vous être communiqué par votre administrateur réseau.
Il vous faudra ensuite entrer votre nom utilisateur et votre mot de passe :
Vous serez ensuite connecté. Vous pouvez le voir au niveau des flèches ajoutées :
Comme vous pouvez le voir ci-dessous, si vous recliquez sur l’icône « connexion à un serveur », vous pourrez voir la connexion initiale dans la liste des connexions récentes.
5. Accès par navigateur Web via un plugin FTP▲
Cette partie va vous présenter la possibilité d'accéder au serveur SFTP via un plugin de votre navigateur.
5-1. Firefox▲
Pour ceci, il vous faudra installer l’extension FireFTP, disponible depuis la recherche dans l'onglet « module ».
Une fois l'extension installée, vous pouvez y accéder via le menu , onglet développement :
Un onglet nommé « chrome://fireftp/content/fireftp.xul » va alors s'ouvrir avec la partie gauche de la fenêtre correspondant à votre arborescence locale, et la partie droite correspondant à l'arborescence distante.
Il vous faudra alors soit créer un profil de connexion, soit effectuer une connexion rapide. Dans les deux cas, vous devrez entrer les informations de connexion, la différence étant la conservation ou non des réglages.
Vous aurez ensuite l'écran suivant :
Il vous faudra entrer les mêmes informations que pour les autres cas déjà vus, à savoir :
- le nom d'hôte ou l'adresse IP ;
- les noms d'utilisateur et mot de passe.
Il faudra ensuite aller sur l'onglet Connexion et renseigner :
- le type de connexion : SFTP dans notre cas ;
- le port si celui-ci est différent de 22 ;
- les répertoires locaux et distants (optionnel).
La gestion de clé privée n'est pas abordée dans ce tutoriel.
Comme nous ne gérons pas les clés locales, vous aurez l'écran suivant :
Il faudra répondre oui.
Votre connexion est ensuite opérationnelle comme vous pouvez le voir ci-dessous. Il vous suffit ensuite de glisser-déplacer vos documents de la zone locale vers le serveur ou vice versa.
Avec l'extension FireFTP installée, si vous tapez dans la barre d'URL : sftp://NomCnx, l'onglet FireFTP sera ouvert et la connexion « NomCnx » sera ouverte.
Depuis le changement d'API pour les modules complémentaires de Firefox (WebExtension), et l'impossibilité d'utiliser les anciennes extensions depuis Firefox 57, FireFTP n'est plus utilisable et est abandonné par son auteur.
Par ailleurs, le support du FTP est progressivement retiré de Firefox pour des raisons de sécurité.
5-2. Google Chrome/Chromium▲
Il existe une extension disponible dans le Google Store nommée « sFTP Client », celle-ci n'était pas gratuite, elle n'a pas été testée dans le cadre de ce tutoriel. Aucune autre extension officielle ne semble disponible.
5-3. Opera▲
Aucune extension FTP/sFTP ne peut être trouvée dans le gestionnaire officiel d'extension. Une éventuelle solution serait d'installer l'extension « Download Chrome Extension », non testée non plus suite à ce qui a été précédemment évoqué.
5-4. Edge et Safari▲
Pas d'extension officielle non plus pour ces navigateurs, mais les extensions officielles ne sont pas nombreuses.
6. Gérer les volumes distants comme un volume local▲
Il peut être pratique de gérer un partage SSH comme un volume local (lettre de volume comme par exemple « D: » sous Windows, volume réseau monté sur le bureau sur Macintosh).
Je vais vous présenter des surcouches logicielles permettant ceci.
Dans le cadre de ce tutoriel, les produits n'ont pas été testés en profondeur. Je vous recommande donc la plus grande prudence et la vérification du comportement notamment en cas de coupure de liaison.
6-1. Montage volume SSH sous Windows▲
6-1-1. Logiciel payant▲
Pour le montage d'un partage sous Windows, je vous propose l'utilisation de Direct Drive. Ce produit n'est pas open source, mais vous pouvez l'utiliser gratuitement pour un usage personnel. Une licence du produit n'est pas spécialement coûteuse. Libre à vous d'utiliser un autre produit équivalent. Tout comme Cyberduck que nous avons utilisé jusqu'à présent, Direct Drive ne se limite pas aux accès SFTP, mais ces autres aspects ne seront pas traités.
Une fois le produit installé, il vous faut créer le profil de connexion tout comme avec CyberDuck. Je vous invite à revoir la partie installation CyberDuck WindowsInstallation Windows si besoin.
Vous aurez ensuite l'écran suivant, vous pouvez apercevoir le profil créé dans la partie droite.
Notez la case à cocher à droite de « Drive Letter », celle-ci permettant la connexion automatique (information indiquée lors du passage de la souris dessus (Autoconnect)).
Vous aurez ensuite accès au volume depuis l'explorateur, « F : » dans notre exemple. Si la case Autoconnect est cochée, le volume est monté automatiquement au démarrage.
6-1-2. Logiciel libre▲
En logiciel libre, j'ai testé Dokan qui est un peu compliqué à installer. Mon choix de proposition s'est alors posé sur un autre produit : swish.
Ce produit est cependant en phase Alpha, ce n'est donc pas une version à utiliser en production.
Une fois le logiciel installé, swish est accessible depuis l’explorateur, un volume « swish » a été ajouté dans la zone « Autre ».
Pour créer une connexion, il faut entrer dans swish, puis cliquer sur « Ajouter une connexion SFTP » en haut :
Vous aurez ensuite une fenêtre où il faudra entrer vos réglages de connexion comme dans Cyberduck déjà présenté :
La connexion est ensuite créée.
Lors de la première connexion, vous aurez une fenêtre de vérification de clé.
Il faudra ensuite entrer le mot de passe :
Le mot de passe n'est pas gardé, et après redémarrage il faudra le rentrer à nouveau pour pouvoir se connecter.
Vous voyez ci-dessous le contenu du point de connexion.
Si vous retournez dans « Ordinateur->swish », vous aurez un symbole « V » vous montrant que la connexion est active.
Il n'est pas possible de modifier un document directement en cliquant dessus, il vous faudra le copier sur votre bureau par exemple, puis le glisser-déplacer dans la fenêtre du dossier distant. Vous aurez une demande de remplacement.
Pour créer un fichier ou dossier, c'est la même chose. Il faudra le créer depuis votre poste et le glisser-déplacer.
Renommer un fichier/dossier fonctionne par le clic droit, mais ne fonctionne pas via la fonctionnalité simple-clic dans le nom de fichier.
6-2. Montage volume SSH sous Mac OS X▲
6-2-1. Logiciel payant▲
Pour rester dans la même lignée, je vous propose l'utilisation de Mountain Duck, développé par les créateurs de CyberDuck. Contrairement à celui-ci, Mountain Duck est payant. Celui-ci s'intègre au système via un menu pour les réglages.
6-2-2. Logiciel libre▲
En logiciel libre, je vous propose Mac Fusion. Celui-ci est dépendant de MacFuse (appelé maintenant OSXFuse) qu'il va falloir installer. Profitez-en pour installer sshfs depuis la même page.
Les réglages sont identiques à la partie installation Mac OS XInstallation MAC OS X. Voici des copies d'écran avec les champs à remplir :
|
|
6-3. Montage volume SSH Linux▲
Si vous souhaitez monter le contenu d'un volume distant dans un dossier tel que /mnt, il vous faudra saisir la commande suivante en terminal :
sshfs nom_utilisateur@[nom d´hôte ou adresse IP]:/[chemin distant par défaut] /[point de montage] -p port
Si le port utilisé est le port SSH par défaut 22, l'option -p est inutile.
Ces réglages peuvent être stockés dans le fichier ~/.ssh/config.
Le paquet sshsfs est requis, installable par la commande apt-get install sshfs.
7. Conclusion▲
Pour des raisons afférentes aux risques de déconnexion (utilisation à distance via Internet), j'aurais tendance à préférer l'utilisation d'un client type Cyberduck plutôt que l'utilisation de volume distant.
7-1. Remerciements▲
Je remercie LittleWhite pour sa relecture technique, ainsi que KartSeven pour sa relecture orthographique.