Qu’est-ce que PuTTY et quelques conseils utiles pour l’utiliser facilement

PuTTY est un programme gratuit (licence MIT) pour les architectures x86 et AMD 64 (actuellement en phase expérimentale pour ARM). Il a été développé en 1997 par Simon Tatham, un programmeur britannique. Dans ce blog, nous examinons ce programme utile depuis plusieurs années, et même la grande équipe de Pandora FMS vient de le confirmer en 2020, dans la liste des commandes réseau pour Microsoft Windows® et GNU/Linux®. Et s’il méritait son propre article ? Lisez et jugez par vous-même.

Avant GNU/Linux®

Pour ceux d’entre vous qui nous rendent visite pour la première fois (bienvenue à tous), je vous dirai que, lorsque j’ai commencé à frapper les touches du clavier, Mr. Linus Torvalds n’avait même pas commencé à étudier à l’université d’Helsinki, en Finlande. L’âge mis à part, nous n’avions même pas d’environnement graphique sur nos ordinateurs, tels que nous les connaissons aujourd’hui. Chaque programme se débrouillait du mieux qu’il pouvait, en s’adressant directement au matériel, ce qui était coûteux et primitif et ne permettait pas de mettre en place des systèmes d’exploitation plus puissants.

La ligne de commande ou la fenêtre du terminal était celle que nous utilisions pour presque tout et lorsque les systèmes d’exploitation avec une interface graphique sont arrivés, cette ressource a été reléguée aux ordinateurs du réseau communicant, étant donné son faible coût en termes de transmission de données et son utilisation puissante (par exemple, avec une seule commande, vous pouvez éteindre ou redémarrer un ordinateur, et bien d’autres choses). Ce qui est surprenant, c’est qu’aujourd’hui encore, nous continuons à utiliser ce schéma de travail, et plus encore en termes de surveillance.

Le monde des ordinateurs aujourd’hui

Depuis la naissance de GNU/Linux®, son créneau naturel a été le secteur des serveurs, en particulier les serveurs web. En 2012, l’équipe de Pandora FMS, avec un œil attentif, a remarqué l’irruption d’Android® dans l’informatique et nous savons certainement qu’aujourd’hui le nombre de téléphones mobiles avec ce système d’exploitation dépasse de loin le reste des appareils.

Oh, j’allais oublier, Android® est un GNU/Linux® un peu bizarre, car les fabricants et les opérateurs téléphoniques ne nous laissent pas utiliser nos “propres” ordinateurs en tant qu’utilisateurs root. Si l’on fait abstraction de l’arrivée de la technologie 5G et des nouveaux systèmes d’exploitation mobiles, Android® n’a pas de problèmes majeurs pour télécharger de multiples applications, pour connecter nos chers et précieux serveurs avec GNU/Linux (administration, surveillance).

La plateforme Windows® conserve une part importante sur les systèmes de bureau (principalement pour son utilisation dans les jeux vidéo). Pour les tâches d’administration et/ou de surveillance, il suffit de mettre la main sur une poignée d’applications. C’est là que PuTTY, un outil gratuit écrit en langage C, entre en jeu. Je suppose que le nom PuTTY est le complément de getty (abréviation de get TTY), un programme écrit sous Unix par Wietse Zweitze Venema (co-auteur du populaire serveur de courrier électronique Postfix) et porté sur GNU/Linux. Dans les deux cas, getty a pour fonction de détecter une connexion, de demander les informations d’identification de l’utilisateur et de les authentifier. PuTTY serait donc, je suppose, une abréviation de put TTY. Il faut également tenir compte du fait que TTY est l’abréviation de TeleTYpewriter, les premiers appareils basés sur une machine à écrire mais connectés électriquement pour envoyer et recevoir des messages écrits par télégraphe (Télétype® ou teletype).

Bien sûr, PuTTY n’est pas le seul – et ne sera pas le dernier – que vous pouvez utiliser pour les télétypes : Je reconnais que Cmder est également un programme très utile qui comprend plus d’options pour Windows® : cmd, Powershell® et SSH. Mais cela, mesdames et messieurs, c’est une autre histoire.

putty

EU-FOSSA 2

Le projet d’audit des logiciels libres et open source de l’Union européenne a inclus PuTTY, en 2019, dans le programme de récompenses pour la chasse aux bogues logiciels (bug bounty), ce qui, selon moi, montre son importance pour l’informatique.

À ce jour, la Commission européenne a engagé 320 000 € en paiements de récompenses (jusqu’à 10 000 € pour la révélation d’un bogue logiciel) dans ce projet, et dans le cas de PuTTY (de janvier à juillet 2019), ils ont fait 34 rapports qui ont été récompensés par une moyenne de 285 euros chacun (j’estime à plus de vingt mille euros au total, le prix le plus élevé était de 6 772,08 euros). Avec de telles incitations, il est clair que la version 0.71 est née spécifiquement par l’initiative de toute l’Europe, considérant PuTTY comme un bien commun. Dans cet article, je parle de la version 0.74, la plus récente, en lui rendant hommage.

Ressources humaines

Si l’argent est important, nous, les êtres humains, le sommes encore plus, car nous portons des symboles et nous donnons un sens à cet Univers. PuTTY dispose, en dehors de Simon Tatham, d’un groupe de développeurs restreint mais très sélect :

  • Alexandra Lanes: réviseur de code qui… répond aux courriels de développement. Oui, après le programme de récompense des bogues, sponsorisé par la Commission européenne, ils sont revenus à leur schéma précédent de recevoir toutes les améliorations, critiques, commentaires, etc. par courrier électronique. Retour à la vieille école !
  • Jacob Nevins: Aide à la réception des courriels, et parfois aussi au cryptage.
  • Ben Harris: Grâce à ses études sur le codage des caractères, il contribue au processus de portage vers d’autres plates-formes.

En détail, que fait PuTTY pour nous ?

Ne demandez pas cela, demandez ce que vous pouvez faire avec PuTTY. Pour résumer, PuTTY transforme votre puissant ordinateur doté d’un certain nombre de cœurs et d’énormes quantités de mémoire vive (avec de l’espace sur le disque dur et un écran qui ferait pâlir le réalisateur George Lucas) en… une fenêtre de terminal muette. Oui, il arrive que de petites choses fassent des travaux titanesques, et inversement !

Do not take the dumb terminal the wrong way, I call it that because everything we write on this side is sent to a Unix or Linux machine (this is usually abbreviated as *nix) and everything sent from there is reflected on our screen. At a higher level (and I respect that opinion) there are those who think that personal computers have died… If we see it that way, anyone would say let’s move on this is over, but wait, there are still a few things left.

putty

Caractéristiques de PuTTY

  • PuTTY, par défaut, communiquera avec vous via SSH en toute sécurité, à l’aide de certificats (clé publique et privée), bien que si vous souhaitez sauter la sécurité, vous devez explicitement demander SSH-1.
  • PuTTY a son propre format (PuTTY Private Key ou PPK) pour stocker la clé publique sans cryptage sur votre disque mais avec la garantie du Message Authentication Code (MAC – oui, encore un autre acronyme répété). Cela signifie qu’il vous faut une étape supplémentaire si vous avez déjà fait faire un certificat pour OpenSSH, qui est le standard actuel. Sinon, PuTTY dispose de son propre générateur de certificats dans plusieurs formats différents. L’auteur indique que la difficulté pour PuTTY d’arrêter d’utiliser PPK est le nombre de tweets qu’ils leur envoient : plus il y a de messages, plus c’est facile. Leur compte sur Twitter est… ils n’ont pas de compte sur ce réseau social (l’humour est aussi un indice d’intelligence).
  • Si vous souhaitez une plus grande sécurité, vous pouvez utiliser une phrase de sécurité pour votre paire de clés lorsque vous les générez, mais vous devez alors entrer cette phrase dans chaque connexion, à chaque fois. PuTTY dispose de Pageant, qui reste en mémoire et fait ce travail pour vous.
  • PuTTY peut utiliser le protocole de connexion créé par Richard Stallman lui-même – le père du mouvement du logiciel libre – en 1983 : SUPDUP. Je ne le connaissais pas, et je viens d’apprendre quelque chose de nouveau avec vous… Qui utilise ce protocole actuellement ? Vous voyez, des trucs de geeks !
  • Le code de PuTTY a été utilisé par des tiers comme base d’un serveur SSH expérimental (le développement de logiciels libres se répand). PuTTY est écrit en langage C et il est monolithique, il n’utilise pas de bibliothèques de liens dynamiques, donc si vous téléchargez la version appropriée déjà compilée en 32 ou 64 bits, elle est prête à être exécutée.

putty

  • Certains commutateurs de réseau de la marque Cisco® utilisent un port série, commodément déguisé en terminal RJ-45, par lequel vous pouvez gérer et/ou surveiller ces appareils (d’autres marques commerciales font de même). Je recommande d’utiliser le port série de la carte mère (achetez un câble d’extension pour la fente externe du boîtier) qui garantit une meilleure connexion que les câbles adaptateurs USB vers port série 9 broches. Une fois que vous avez tout cela, PuTTY vous connectera gentiment au port série, généralement COM1
  • De la même manière, vous pouvez configurer un serveur graphique X sur la machine *xnix à laquelle vous vous connecterez et transmettre cette sortie via PuTTY à votre machine locale, afin d’utiliser un programme comme Xming pour surveiller l’expérience de l’utilisateur (dans un navigateur web, par exemple).

putty

Conseils pour gagner du temps

Lorsque vous travaillez avec PuTTY, ces suggestions sont les bienvenues :

En cliquant et en glissant directement, il sera copié dans le presse-papiers, sans utiliser CTRL + C. Si vous voulez sélectionner une zone rectangulaire, appuyez simplement sur la touche ALT avant de cliquer dans la fenêtre de session ouverte avec PuTTY. N’oubliez pas qu’en cliquant avec le bouton droit à l’intérieur de la fenêtre, vous collerez (CTRL + V) ce que vous avez dans le presse-papiers, bien que vous puissiez également utiliser SHIFT + INSERT pour coller.

En faisant un second clic sur la barre de titre de la fenêtre, vous disposerez de quelques options très intéressantes, telles que :

  • Travailler en plein écran. Cela vous permet de travailler sans distraction.
  • Dupliquer la session, c’est-à-dire une autre fenêtre de terminal avec le même serveur (il y a aussi une autre option pour ouvrir une connexion totalement nouvelle ou choisir entre les profils que vous avez sauvegardés).
  • Dans l’option de configuration, vous pouvez cocher l’option de réutilisation de la connexion et, lors de la connexion, faire un clic droit et choisir de dupliquer la session. À partir de là, toutes les connexions que vous ferez utiliseront un chemin unique, même si vous utilisez CMD.exe pour lancer d’autres exécutables PuTTY (psftp, plink, etc.) suivi du nom du profil que vous utilisez pour la connexion et du reste des paramètres requis.
  • En fonction du type de connexion que vous avez établi, PuTTY peut proposer les commandes spéciales les plus utilisées, par exemple en SSH vous aurez SIGKILL, SIGTERM, etc.
  • N’oubliez pas que PuTTY stocke, par défaut, les 200 dernières lignes avec lesquelles vous avez travaillé (indépendamment de la façon dont les raccourcis clavier sont gérés dans le terminal), car avec l’option de configuration, vous pouvez l’augmenter jusqu’à 5 000, juste à titre d’exemple. À quoi cela nous sert-il ? Si, pour une raison quelconque, vous perdez la connexion, cliquez à nouveau avec le bouton droit de la souris sur la barre de titre de la fenêtre et sélectionnez “Redémarrer la connexion”, et vous conserverez tout ce que vous avez écrit jusqu’à 5 000 lignes !

Vous vous souvenez de l’icône du cadenas sur les pages web ? Basé sur ce même concept, et pour éviter les serveurs SSH malveillants (leur demander de vous envoyer des questions sur vos mots de passe) PuTTY a une méthode ingénieuse pour dessiner une icône pour différencier – et légitimer – les avertissements et les questions que PuTTY vous pose dans la fenêtre du terminal. Cependant, cette défense ne peut pas être faite dans les fenêtres CMD de Windows comme pour Plink (cet exécutable est utilisé pour automatiser les connexions et vous ne devriez jamais l’utiliser directement, mais je fais une exception).

Si vous utilisez Powerline pour donner à chacune de vos machines distantes un aspect professionnel (et pour les différencier également), vous pouvez cloner le dépôt et prendre les polices et les installer dans Windows®. Téléchargez ensuite le profil nécessaire et définissez la police récemment installée à votre convenance. Dans tous les cas, PuTTY permet également de personnaliser les couleurs, les styles et les comportements lors du redimensionnement de la fenêtre du terminal et bien d’autres choses encore.

putty

PuTTY et Pandora FMS

Comme vous pouvez le constater, PuTTY est en fait un outil supplémentaire de surveillance qui vous aide à tester et/ou à déboguer des applications en général car, bien que SSH soit son point fort, il dispose d’autres protocoles tels que Telnet et même TCP en direct ! Comment contribuer à PuTTY ? En plus de recevoir des dons via Paypal, il y a quelque chose que vous pouvez faire qui rendra les auteurs plus heureux : diffuser et parler de ce logiciel à d’autres personnes. Par exemple, vous pouvez mettre en place votre propre site miroir qui se synchronise mensuellement avec l’original. Si vous voulez vous impliquer davantage, vous pouvez télécharger le code source et aider au débogage.

Avant de terminer, n’oubliez pas que Pandora FMS est un logiciel de surveillance flexible, capable de surveiller des appareils, des infrastructures, des applications, des services et des processus d’entreprise.

Voulez-vous en savoir plus sur ce que Pandora FMS peut vous offrir ? Découvrez-le en cliquant ici

Si vous devez surveiller plus de 100 appareils, vous pouvez également profiter d’un ESSAI GRATUIT de 30 jours du Pandora FMS Enterprise. Obtenez-le ici

N’hésitez pas à nous envoyer vos questions. L’équipe du Pandora FMS sera heureuse de vous aider !

Shares