PuTTY/KiTTY, plink & WinSCP

Documentations de configuration pour PuTTY/KiTTY et WinSCP dans l'environnement PSMN (Cliquer sur les images suivantes, si vous désirez les afficher en résolution normale).

Références

0. Prérequis

Cliquez pour afficher ⇲

Cliquez pour masquer ⇱

L'usage de Windows pour la connexion et l'accès aux ressources du PSMN est trés fortement déconseillé.

1. Installation

Merci d'installer (ou de faire installer par votre administrateur) les logiciels PuTTY (ou KiTTY) et WinSCP.

Menu

2. Créer une clef

Démarrer le programme PuTTYgen. Vérifiez, dans le menu Key que vous utilisez du SSH-2 au minimum. Cliquez ensuite sur Generate. Lorsque votre clef est générée, ajoutez-lui une passphrase. Celle-ci doit comprendre au moins 15 caractères

Ceci est une mauvaise passphrase :

toto

Ceci est une bonne passphrase :

V0ici 1 ex3mple de passphrase c0mpl1quée, v0ire, alambiquée.

Ceci est aussi une bonne passphrase :

Une bouteille de "Glenfîddich Rare Collection 1937" vaut 15 000 euros TTC. Minimum...

Sauvegardez ensuite votre clef privée (bouton Save private key, le nom de fichier n'a pas d'importance, mais enregistrez-le avec l'extension .ppk). Faites-en des copies et cachez-les !!

Gardez la fenêtre ouverte, et/ou sauvegardez la clef située dans le cadre Public key for pasting…, c'est votre clef publique SSH. Enregistrez-la dans un fichier authorized_keys.

3. PuTTY

Pour utiliser le fonctionnement par clef, vous allez devoir vous connecter une premiere fois par mot de passe (le votre, à l'ENS, au CBP ou au PSMN). Pour cela, vous allez configurer complètement une première session sur PuTTY :

3.1 Configuration

  • Indiquez le HostName de la passerelle, le port (22, par défaut), ajoutez un nom de session et cliquez sur Save.

  • Dans Terminal→Keyboard, choisissez Linux.

  • Dans Windows→Translation, choisissez UTF-8 ou ISO-8859-15. Il faut faire des essais, cela dépends de votre version de Windows.

  • Dans Windows→Selection, choisissez xterm.

sous Windows Seven et/ou si vous avez une souris à deux boutons, vous pouvez être amené à utiliser plutôt Compromise.

  • Dans Connection→Data, indiquez votre login ENS, CBP ou PSMN.

  • Dans Connection→Proxy, vérifiez qu'aucun n'est configuré.

  • Dans Connection→SSH→Auth, activez l'agent forwarding.

  • Dans Connection→SSH→X11, activez l'X11 forwarding.

Revenez à Session et sauvegardez. Vous pouvez maintenant cliquer sur Open pour ouvrir une connexion.

Rassurez-vous, ces réglages ne seront à effectuer qu'une seule fois. Vous pourrez ensuite copier, et renommer, les sessions sauvegardées.

3.2 Première connexion & sauvegarde de .ssh/authorized_keys

  • Si nécéssaire, validez l'ajout de la HostKey de la passerelle au cache de PuTTY.

  • Entrez votre mot de passe de l'ENS, du CBP ou du PSMN, lorsqu'il vous est demandé.
  • La passerelle du PSMN dispose de trés peu d'outils. Connectez vous à une machine interne (Voir la liste des serveurs de compilation. Acceptez l'ajout de la HostKey au cache de SSH), puis éditez le fichier ~/.ssh/authorized_keys.

Avec vim, i pour passer en mode “insertion”, Esc pour revenir en mode normal, :wq pour entrer en mode commande (:), enregistrer (write) et quitter (quit).

  • copiez/collez (Sélection, Ctrl+c, clic-milieu) votre clef publique SSH dans le fichier ~/.ssh/authorized_keys.

Avec vim, i pour passer en mode “insertion”, Esc pour revenir en mode normal, :wq pour entrer en mode commande (:), enregistrer (write) et quitter (quit).

  • Vous pouvez maintenant vous déconnecter (Ctrl+d ou logout)

3.3 Chargement de la clef dans Pageant (PuTTY Agent)

PuTTY Agent sert à maintenir en mémoire une copie de votre clef déverrouillée, à disposition des logiciels utilisant le protocole SSH (PuTTY, WinSCP, TortoiseSVN, etc).

  • Une fois Pageant démarré, son menu est disponible par clic-droit, sur la barre de notification.
  • Choisissez add key.

  • Choisissez votre clef privée (fichier ppk).

  • Entrez la passphrase de votre clef privée afin de la déverrouiller.

  • Votre clef est chargée, et visible dans la liste.

3.4 Connexion normale (PuTTY et Pageant)

  • Une fois votre clef chargée dans Pageant,
  • Démarrez PuTTY, choisissez la session précedemment enregistrée (ici, allo-psmn), cliquez sur Load, puis sur Open.

  • Voilà le résultat souhaité. :

Vous devez utiliser une clef et l'agent-ssh de PuTTY pour pouvoir profiter des facilités du proxy plink, celui-ci n'étant pas interactif (il ne saura pas demander de mot de passe).

Le proxy de PuTTY permet de faire des rebond ssh, à travers plusieurs machines (voir infographie).

Légende :

  • noir : lien physique
  • bleu : connexion ssh standard
  • rouge : connexion ssh virtuelle (rebonds)
  • vert : liaison NFS (/home)

Dans la suite, on considère que votre clef privée est chargée par pageant (voir paragraphe 3.3).

Cas 1 : vous êtes à l'intérieur du réseau de l'ENS

  • Copiez la session de la passerelle (allo-psmn, Load, renommez, save).

Changez le Host Name pour celui d'une machine interne du PSMN (ici, pour l'exemple, x5770comp1). Donc, renommez la session en x5770comp1 (pour suivre l'exemple)

.

  • Dans Connection→Proxy, sélectionnez Local.
  • Dans Connection→Proxy, réglez Telnet command ainsi :
    plink.exe -load allo-psmn -nc %host:%port

  • Revenez dans Session, sauvegardez, puis cliquez sur Open. Vous êtes, normalement, directement connecté sur x5770comp1, sans terminal ouvert sur la passerelle (allo-psmn).

Cas 2 : vous êtes à l'extérieur du réseau de l'ENS

Si vous disposez d'un compte ENS de Lyon, vous devez avoir activé votre accès SSH dans l'intranet https://ent.ens-lyon.fr/ent/ Rubrique “Mon profil” → “Accès SSH”
Si vous ne disposez pas d'un compte ENS, remplacez ssh.ens-lyon.fr par ssh.psmn.ens-lyon.fr dans la documentation qui suit.
  • Copiez la session de la passerelle (allo-psmn, Load, renommer en ssh.ens (ou ssh.psmn), save). Changez le Host Name pour celui de la passerelle de l'ENS de Lyon (ssh.ens-lyon.fr) ou du PSMN (ssh.psmn.ens-lyon.fr). Sauvegardez.

  • Revenez dans la session de la passerelle (allo-psmn, Load)
  • Dans Connection→Proxy, sélectionnez Local.
  • Dans Connection→Proxy, réglez Telnet command ainsi :
    plink.exe -load ssh.ens -nc %host:%port

    ou

    plink.exe -load ssh.psmn -nc %host:%port

  • Revenez dans Session, sauvegardez.
  • Chargez la session de la passerelle de l'ENS de Lyon (ssh.ens, Load)
  • Cliquez sur Open. Reproduisez les étapes du paragraphe 3.2 directement sur la machine ssh.ens-lyon.fr.
  • Revenez dans la session de la passerelle (allo-psmn, Load), puis cliquez sur Open. Vous êtes, normalement, directement connecté sur allo-psmn.

Il est possible de faire plus d'un rebond avec Putty en rappelant à chaque fois la session précédente avec la commande plink. Vous pouvez donc vous connecter sur une machine interne directement depuis l'extérieur. Pour cela, créez une troisième connexion en suivant les étapes du cas 1 ci-dessus.

4. WinSCP

Le logiciel WinSCP sert à la copie de fichiers, en utilisant le protocole SSH (et les sessions PuTTY).

Cette documentation part du principe que votre poste client se trouve à l'intérieur du réseau de l'École

4.1 Configuration, Import & Connexion

  • Dans WinSCP, au premier lancement, cliquez sur Outils→Importer :

  • Selectionnez toutes vos sessions PuTTY, y compris allo-psmn, cochez la case “importer les clefs d'hotes…”, Validez.

  • Si vous avez oublié d'importer les HostKeys, vous aurez ce message :

  • Selectionnez une des sessions, puis cliquez sur Connecter.
  • Enfin, après connexion, vous obtiendrez ce panneau :

Vous pouvez maintenant copier des fichiers vers ou depuis le PSMN.

5. Export X, Xming

Si vous souhaitez afficher des applications graphiques depuis une machine du PSMN vers votre poste client sous Windows, il faut installer un serveur X : Le plus simple, fonctionnant trés bien avec PuTTY, est Xming

Le PSMN dispose d'une machine dédiée à la visualisation graphique, voir cette documentation pour son usage.

documentation/tutorials/ssh/putty.txt · Dernière modification: 2019/07/16 12:02 par ltaulell