Salutations terriennes à vous, voyageurs égarés aux tréfonds des méandres trollesques tissées de mystères informatiques.
Voici de quoi réconcilier les partisans GUI-Autologon-Windows avec les Linuxards X11-OpenSSHKeys grâce à la magie de Putty, d’OpenSSH et la complicité des précédemment cités.
Oui, je sais. J’avais attaqué le sujet il n’y a pas si longtemps que ça, et pensais l’avoir exploré suffisamment loin… Pourtant me revoilà sur ce bout de billet, à rajouter ce qui m’avait échappé -sans que cela complète la liste exhaustive que Putty peut et sait faire. Une vraie mine d’or, cet outil !
Ce ticket concerne donc l’interaction Putty-X11, et celle impliquant Putty et OpenSSH. Commençons par le plus revendiqué chez les utilisateurs : le morceau User Friendly !
X11 Forwarding
Saviez-vous, que, pour les adeptes de la GUI (Graphic User Interface), il existait le moyen de vous warper un environnement X11 (environnement graphique sous les Unix-like) de votre Linux directement sur votre poste Windows ?
Et oui, c’est possible ! Tout cela grâce à la fabuleuse interaction et complémentarité de SSH avec Putty -sans oublier copain XMing-
La manipulation nécessite que vous ayez un accès ssh à votre serveur Linux, que le X11 Forwarding soit déjà activé ou que vous soyez en mesure de l’activer et que vous ayez droit d’installer vos clients comme vous l’entendez pour votre machine Windows.
Commencez par vous installer les outils nécessaires pour le client Windows : Putty, PuttyGen et Xming.
Faites en sorte que XMing s’exécute en Service de fond, automatiquement sous Windows. Son fonctionnement est facilement repérable au X de la barre des tâches.
Ensuite, il vous suffit de loader votre session SSH préférée sur Putty et, d’aller fureter au niveau des options de Connection > SSH > X11. Arrivé à ce niveau, validez la tickbox Enable X11 forwarding. Sauvegardez la session au besoin et lancez le tout.
Un petit appel à firefox vous confirmera -ou non- que tout est fonctionnel.
Il se peut que vous soyez tenu en échec par un message pas sympathique du tout, du genre :
connection to "localhost:10.0" refused by server wrong authentication protocol attempted
C’est qu’en fait, votre utilisateur a déjà ouvert une session graphique sur le poste.
Petite astuce, sous gnome par exemple, vous pouvez commencer par souffler ceux qui regardent par dessus votre épaule en lançant en arrière plan un gnome-panel (je rappelle, lancer un process en arrière plan sous Linux revient à finir la ligne de commande par un &).
C’est bien joli tout ça, mais ce n’est pas tout. Et heureusement d’ailleurs (sinon ce serait moins amusant).
Clés SSH
Attention. Je dois mettre en garde -et c’est un pré-requis fort- le lecteur des risques de sécurité relatifs aux clés SSH non protégées avec une passphrase. Dangereux et passible de retourner contre vous la colère du BOFH.
Les clés SSH sont des fichiers bien pratiques qui offrent à un utilisateur un autre moyen de s’authentifier que la frappe du mot de passe. Sécurisée par une passphrase, cela ne change rien dans les manipulations que l’utilisateur aura à effectuer pour s’authentifier -à la différence que la passphrase peut être différente du mot de passe. Si on ajoute à cela la possibilité d’une passphrase nulle…
Pour commencer, il vous faut vous assurer que la partie suivante est activée dans /etc/ssh/sshd_config dans votre serveur Unix-like :
RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys
Ensuite, sur votre client Windows, générez une paire de clés SSH2-RSA en autant de bits que vous voulez avec PuttyGen. Renseignez le comment (plus facile de vous y retrouver), la Key passphrase et sa confirmation. Cliquez sur Generate et appliquez-vous à titiller votre souris pour que la génération de la clé soit le plus exotique possible.
Surtout, sauvegardez la partie privée dans un emplacement bien à vous. La partie public n’est pas obligatoire, mais c’est bien de l’avoir. Gardez PuttyGen d’ouvert sur votre clé, histoire d’avoir les infos à portée de main.
Ouvrez Putty et renseignez la session SSH sur laquelle vous voulez vous connecter. Dans la partie Connection > SSH > Auth, renseignez le chemin absolu de votre clé privée, sauvegardez la configuration et logguez vous sur le serveur SSH.
Il bronche sur l’utilisation de la clé, normal, on ne lui a pas tout dit.
Copiez le contenu de PuttyGen, dans la partie Public Key for pasting into OpenSSH authorized_keys file et, comme gentiment indiqué par PuttyGen, collez le contenu dans votre ~/.ssh/authorized_keys.
Quittez la session SSH et retentez votre chance avec les mêmes paramétrages.
Respirez, c’est loadé !
Bienvenue sur ces pages qui constituent une petite parenthèse de sujets informatiques pour ceux qui n'ont pas la science infuse et qui ont, eux-aussi, besoin parfois de reminders. Avec l'avantage de ne pas être constitué d'un tas de post-it !