coldwa.st
Tous les guidesProgrammationWebDonnéesOutilsBases de donnéesHaskellConceptsCabal & buildsChaîne d’outilsCompilateurPerformanceÉditeur & HLS

Programmation · Serveurs · sécurité

C’est quoi SSH ?

Par ColdwastMis à jour le 22 juin 20268 min de lecture#ssh#servers#security
Des lignes de code source et un port réseau affichés sur un écran sombre
SSH est la manière standard pour les développeurs d’ouvrir une session sécurisée et chiffrée sur une machine distante et d’y travailler comme s’ils étaient assis devant.

Dès que vous louez un VPS ou que vous déployez sur un serveur distant, vous tombez sur la même question : comment se connecter et lancer des commandes sur une machine qui vit dans un centre de données ? La réponse est presque toujours SSH. Ce guide explique ce qu’est SSH, comment il protège votre session, et les quelques commandes dont vous avez réellement besoin.

La définition courte

SSH — Secure Shell — est un protocole pour se connecter à un ordinateur distant et y lancer des commandes via une connexion chiffrée. Il vous donne un terminal sur une machine ailleurs, comme si elle était juste devant vous, et il brouille tout ce qui passe entre vous et le serveur. Ce chiffrement, c’est tout l’intérêt : il a remplacé d’anciens outils comme Telnet, qui envoyaient mots de passe et commandes en clair, lisibles par quiconque sur le réseau.

Comment marche SSH

Quand vous vous connectez, votre client SSH et le serveur exécutent une rapide poignée de main. Ils s’accordent sur les réglages de chiffrement et établissent une clé secrète partagée, de sorte que le reste de la session est privé. Le serveur prouve aussi son identité avec sa propre clé, c’est pourquoi votre client vous prévient la première fois qu’il voit un nouveau serveur. Ensuite vous vous authentifiez — vous prouvez qui vous êtes — et vous obtenez une invite shell sur la machine distante. Chaque frappe et chaque réponse sont dès lors chiffrées.

Une armoire serveur remplie de câbles réseau et de cordons de brassage
SSH est ce qui vous permet d’atteindre des serveurs comme ceux-ci. Vous vous connectez depuis votre ordinateur portable et pilotez la machine distante via un canal chiffré.

Mots de passe vs clés SSH

Vous pouvez vous connecter de deux façons. Un mot de passe est simple mais plus faible : il peut être deviné ou cassé par force brute, et des bots tentent ça sur les serveurs publics toute la journée. Les clés SSH sont la meilleure méthode. Vous générez une paire de fichiers : une clé privée qui reste sur votre ordinateur, et une clé publique que vous copiez sur le serveur. Le serveur ne vous laisse alors entrer que si votre clé privée correspond, et la clé privée ne quitte jamais votre machine. Les clés sont à la fois plus sûres et plus pratiques, puisque vous évitez de taper un mot de passe à chaque fois.

Les commandes que vous utilisez vraiment

  • Se connecter : ssh user@server-address ouvre une session sur la machine distante.
  • Créer une paire de clés : ssh-keygen crée vos clés privée et publique.
  • Copier votre clé sur un serveur : ssh-copy-id user@server-address met en place la connexion par clé.
  • Copier des fichiers : scp file user@server:/path déplace des fichiers via le même canal sécurisé.

Ces quatre-là couvrent l’essentiel du travail quotidien. Vous vous connectez, vous gérez vos conteneurs ou votre code, et vous déplacez des fichiers dans les deux sens, le tout chiffré.

Où vous croisez SSH

SSH est partout en développement. Vous vous en servez pour gérer un VPS ou un serveur cloud, pour pousser et récupérer du code avec Git par SSH, pour déployer des apps, et pour établir un tunnel de connexion sécurisé. Si une tâche implique une machine distante, c’est généralement par SSH que vous l’atteignez. L’apprendre une fois paie sur chaque serveur que vous toucherez ensuite.

Les compromis honnêtes

SSH est sécurisé, mais la sécurité dépend toujours de vous. Laisser la connexion par mot de passe activée, ou exposer le port par défaut avec un mot de passe faible, c’est comme ça que des serveurs se font compromettre. La configuration sûre est bien connue : utilisez des clés SSH, désactivez la connexion par mot de passe, et gardez votre clé privée protégée. Les débutants trouvent aussi la ligne de commande intimidante au début. Mais les bases s’apprennent vite, et la compétence se transpose à chaque serveur et plateforme cloud que vous utiliserez.

Questions fréquentes

C’est quoi SSH en termes simples ?

SSH, ou Secure Shell, est une façon de se connecter à un ordinateur ailleurs et d’y lancer des commandes via une connexion chiffrée. Il vous donne un terminal sur une machine distante comme si elle était devant vous, tout en brouillant tout ce qui s’échange entre vous et le serveur pour que personne sur le réseau ne puisse le lire.

Quelle différence entre un mot de passe SSH et une clé SSH ?

Un mot de passe est un secret que vous tapez, et il peut être deviné ou cassé par force brute par des bots. Une clé SSH est une paire de fichiers : une clé privée gardée sur votre machine et une clé publique placée sur le serveur. On vous laisse entrer seulement si elles correspondent, et la clé privée ne quitte jamais votre ordinateur, ce qui rend les clés à la fois plus sûres et plus pratiques que les mots de passe.

Quel port SSH utilise-t-il ?

SSH utilise le port TCP 22 par défaut. Certains administrateurs le changent pour un autre port afin de réduire les tentatives de connexion automatisées, mais c’est un petit obstacle plutôt qu’une vraie sécurité. Les vraies protections sont d’utiliser des clés SSH et de désactiver la connexion par mot de passe, pas de cacher le port.

SSH est-il sécurisé ?

Oui, SSH est sécurisé lorsqu’il est bien configuré, car il chiffre toute la session. La plupart des intrusions viennent d’une configuration faible, pas de SSH lui-même — souvent la connexion par mot de passe laissée active avec un mot de passe devinable. Utiliser des clés SSH, désactiver la connexion par mot de passe et protéger votre clé privée le rend très sûr.

Guide indépendant, maintenu par la communauté. coldwa.st est un site de ressources de programmation ; cet article est un écrit explicatif nouveau et original sur le protocole SSH. Les commandes montrées sont l’usage standard d’OpenSSH ; vérifiez la documentation de votre propre client et serveur pour les détails.
Recommandé

Un serveur pour s’entraîner à SSH

La meilleure façon d’apprendre SSH est d’avoir un vrai serveur où se connecter. Un VPS ou serveur cloud vous donne un accès root par SSH pour déployer sites, API ou conteneurs. Infomaniak — un fournisseur suisse respectueux de la vie privée — propose des VPS et serveurs cloud que vous pouvez piloter entièrement par SSH.

Voir Infomaniak Cloud →

Lien affilié — il soutient ces guides gratuits.

Parcourez d’autres explications claires dans notre index des guides.