Steve Frécinaux

Premier pas avec SSH

Aujourd’hui, il m’a fallu faire un truc assez simple a priori : télécharger 5 ou 6 fichiers sur un ordinateur de l’université, lesdits fichiers étant en fait quelques bibliothèques de fonctions écrites en pascal et utilisées pour les exercices d’algorithmique. L’un de nos bien-aimés (hum) répétiteurs nous a même expliqué comment faire : il faut télécharger un certain programme, et tout est alors censé aller tout seul.

Etat des lieux : je suis, à l’instar d’une trop grande partie des internautes, sur une machine équipée d’un système windows. Les ordinateurs de l’unif tournent eux sous linux. Mais ceci n’a pas trop d’importance, si ce n’est que ma connaissance de linux est somme toute assez limitée. Ayant connu les grandes heures de MS-DOS, la ligne de commande ne me rebute cependant pas. Entammons donc notre odyssée.

Le répétiteur nous a donc dit d’utiliser un client SSH tournant sous windows, putty, simple d’emploi et permettant de faire “n’importe quoi”, et donc bien évidemment de télécharger ces 5 fichiers. Je télécharge donc le programme, super même pas besoin de l’installer, je le lance, j’indique l’adresse du pc cible, j’indique que j’emploie le protocole SSH, et en voiture simone, je me connecte.

On me demande un login et un mot de passe. Facile, mon login je le connais. Mon mot de passe moins bien mais je l’ai sur un bout de papier. Manque de bol, il est manuscrit, ce bout de papier, et nos mots de passes sont assez bizarre, pas un seul des caractères du clavier n’est épargné. Alors, avec un mot de passe écrit à la main, allez donc différencier un “`” d’un “’”, et autres joyeusetés du genre. En plus pour ne rien faciliter, on n’a même pas droit aux petites étoiles pour indiquer le nombre de caractères saisis.

Environ 30 essais plus tard, 30 variantes de mon mot de passe manuscrit, j’arrive enfin à me connecter, l’invite linux s’affiche enfin :

candi01:~>

J’ai accès aux fonctions “habituelles” de linux en mode ligne de commandes : ls, cp, cat, man, etc. Mais ce que je veux, c’est télécharger un fichier, pas le lire bêtement avec un cat. Heureusement qu’à partir de ce programme me permettait de télécharger aisément le truc, parce que rien ne le permet, en fait… Sauf à passer via la commande ftp et plein de complications, ce qui n’est pas top.

Je retourne dans l’aide de putty. On y parle d’un autre programme à télécharger, qui permet de transférer des fichiers via SSH, et qui, lui, tourne dans une invite de commandes, sous windows. Je suis assez réticent à l’idée de télécharger un logiciel supplémentaire, mais je n’ai pas trop le choix. J’y vais. Hop Accessoires > Invite de commandes.

pscp

Hop, le programme, n’ayant reçu aucune directive, m’abreuve des options possibles. Hey mais c’est très simple : ça fonctionne comme cp, mais avec en plus un chemin d’accès sécurisé pour le fichier distant. Hop, allons-y. Linux gère les caractères génériques pour les noms de fichiers, il me semble :

pscp pmlixxxx@candi01.m.u.a.be:/home/algo/* files\

Rastrein, après m’avoir demandé mon mot de passe (toujours aussi fastidieux à taper, et toujours sans les étoiles), il m’envoie bouler, c’est le mot. Tant pis, j’essaie sans le ‘*’, je sélectionne un fichier qui m’a l’air alléchant et je réitère la manoeuvre. Cette fois ça marche. Mais bon, n’ayant pas trop envie de copier chaque fichier un par un, je retourne dans la doc, voir ce qu’on dit de beau. Apparemment, en ajoutant le drapeau -unsafe, il devrait accepter le ‘*’. Je recommence :

pscp -unsafe pmlixxxx@candi01.m.u.a.be:/home/algo/* files\

Et là, la délivrance : après trois essais infructueux de saisie de mon mot de passe, ça marche ! Bon, je n’aurai pas récupéré tous les fichiers qui m’intéressaient (problèmes de droits et tout ça), mais au moins, j’ai ce qu’il me faut. Ouf !

Reste à faire le tri entre les fichiers inutilisables (bin, scripts, …) et les fichiers utiles…