Définition du terme Secure Shell
Le Secure Shell, souvent appelé SSH, est la porte d'entrée de votre serveur. Ce n'est pas un outil réservé aux experts, mais le passage obligé pour gérer une machine à distance, pour vous comme pour un pirate. Sur un serveur VPS ou un VDS, la sécurité de votre site web, de vos e-mails et de vos données dépend beaucoup de la solidité de cette porte, et de la clé qui sert à l'ouvrir.
Ce que fait le Secure Shell
Imaginez un fil direct entre votre ordinateur et un serveur placé dans un centre de données, peut-être à l'étranger. Vous tapez un ordre, le serveur obéit et vous affiche la réponse. Tout ce qui voyage sur ce fil est protégé par un chiffrement, y compris votre mot de passe. Ainsi, quelqu'un qui espionne votre connexion sur un Wi-Fi public ne verra que des caractères sans aucun sens.
Le Secure Shell a deux fonctions principales. Il vous laisse d'abord taper des commandes comme si vous étiez face à l'écran du serveur, puis il sert à échanger des fichiers avec SFTP ou la commande scp, par le même tunnel sécurisé. Autrefois, Telnet et FTP laissaient toutes les données visibles en clair, et c'est pourquoi la quasi-totalité des professionnels ferment aujourd'hui ces anciens accès sur un serveur relié à Internet.
Comment on s'en sert
Pour vous connecter, il vous faut l'adresse du serveur, un nom d'utilisateur et une clé ou un mot de passe. Sur macOS, Linux et les Windows récents, il suffit de taper ssh [email protected] dans le terminal. Si vous préférez une application avec des boutons, PuTTY, Termius ou MobaXterm font le même travail. Le Secure Shell ne demande d'ailleurs aucune installation spéciale sur votre serveur, car il est déjà présent sur presque tous les systèmes Linux.
Une fois la connexion établie, vous pouvez réaliser les tâches d'entretien normales du serveur.
- Mettre à jour le système et les logiciels pour bloquer les failles de sécurité connues.
- Relancer un programme bloqué, comme le serveur web ou la base de données, sans attendre le support.
- Consulter les journaux d'activité pour comprendre pourquoi un site affiche une erreur ou pourquoi vos e-mails arrivent en spam.
- Mettre en ligne une nouvelle version de votre site, par exemple depuis un outil comme Git.
Si votre agence ou votre prestataire technique s'occupe de votre serveur, vous n'aurez sans doute jamais de commande à taper. Il faut pourtant savoir qui a le droit d'entrer, car la personne qui détient la clé SSH d'un serveur a tous les pouvoirs, y compris celui de tout effacer.
Clés, mots de passe et erreurs
Un serveur relié à Internet subit sans arrêt des attaques automatiques, car des robots testent des mots de passe sur le port 22, l'entrée classique de SSH, en visant surtout le compte root, qui est le chef absolu sur chaque serveur Linux. Un mot de passe, même long, peut être deviné, volé sur un ordinateur infecté ou trouvé s'il sert sur plusieurs sites.
Avec le Secure Shell, le système des clés résout ce danger. Vous créez sur votre ordinateur deux fichiers liés, une clé publique que vous placez sur le serveur et une clé privée qui ne quitte jamais votre appareil. Le serveur vérifie que vous détenez la clé privée sans la faire voyager sur Internet, donc les robots n'ont plus rien à deviner. Une fois vos clés en place, la meilleure pratique est d'interdire totalement l'accès par mot de passe.
Les pires erreurs que nous voyons sont souvent les mêmes.
- Se connecter directement en root. Utilisez plutôt un compte normal qui demande les droits d'administrateur seulement au besoin, selon la règle du moindre privilège, puis bloquez l'accès direct en root par SSH.
- Partager une seule clé privée. Si trois indépendants utilisent la même clé, vous ignorez qui agit et ne pouvez écarter l'un sans bloquer les autres, donc donnez à chacun sa propre clé.
- Perdre la clé sans copie. Un ordinateur en panne ou volé vous coupe l'accès, alors protégez la clé privée par une phrase secrète et gardez-en une copie à l'abri.
- Laisser le port par défaut grand ouvert. Changer de port ne remplace pas les clés mais éloigne beaucoup de robots, et un pare-feu limité à vos adresses avec un outil comme Fail2ban fait le reste.
Ce qu'il faut demander à l'hébergeur
Avec un hébergement web mutualisé, vous partagez la machine avec d'autres, et l'accès SSH est souvent interdit ou limité à vos propres fichiers. Pour un site classique ou un WordPress géré depuis un panneau de contrôle, cela suffit, et c'est même plus prudent si personne chez vous ne sait gérer un serveur. Sur un serveur VPS, un VDS ou un serveur dédié, en revanche, le Secure Shell devient votre outil de travail principal, et l'accès root est en général inclus.
Avant de choisir, posez trois questions claires. L'accès SSH et root est-il compris dans l'offre de base, ou faut-il payer plus cher ? Le serveur est-il livré avec une clé, ou avec un simple mot de passe envoyé par e-mail qu'il faudra vite changer ? Enfin, l'espace client propose-t-il une console de secours, votre bouée de sauvetage si SSH est bloqué après une erreur de pare-feu ou une clé perdue ?
Chez Hostrena, les serveurs VPS et VDS sont fournis avec un accès root par SSH. Voyez avec notre support comment ouvrir la console de secours bien avant une urgence, et l'équipe Hostrena peut aussi vous aider à installer vos clés et à bloquer la connexion par mot de passe dès le premier jour.
Questions fréquentes sur Secure Shell
L'accès SSH est-il inclus avec un VPS, ou faut-il le payer en plus ?
Sur un VPS ou un VDS, l'accès SSH avec tous les pouvoirs (les droits root) est en principe inclus, car c'est l'outil de base pour gérer la machine. Le prix change surtout selon la puissance, l'aide technique et les options comme les sauvegardes. Demandez toujours si cet accès root est total et s'il y a une console de secours.
Ai-je besoin de SSH si mon hébergement a déjà un panneau de contrôle ?
Pas obligatoirement. Un outil visuel comme cPanel ou Plesk suffit pour gérer un site normal. SSH devient utile si vous ajoutez un programme spécial, si vous étudiez les historiques d'erreurs en détail, ou si vous automatisez des tâches. Et c'est toujours la meilleure issue de secours si votre panneau visuel tombe en panne.
Faut-il se connecter avec un mot de passe ou une clé SSH ?
Utilisez une clé, sans hésiter. Les robots qui essaient des mots de passe au hasard ne peuvent pas deviner une clé. De plus, votre clé privée ne voyage jamais sur Internet. Sécurisez-la avec un mot de passe personnel, puis coupez définitivement la connexion par mot de passe sur votre serveur.
Quelle est la différence entre SSH, SFTP et FTP ?
SSH est le canal sécurisé utilisé pour commander le serveur. SFTP permet d'envoyer des fichiers par ce même canal, il est donc bien protégé. Le FTP est un ancien système qui transmet fichiers et mots de passe en clair. Il est à éviter, sauf dans sa version sécurisée appelée FTPS.
Que se passe-t-il si je perds ma clé SSH ou si je me bloque hors du serveur ?
Vos données sont toujours là, mais la porte SSH est bloquée. Pour rentrer, vous devez passer par la console de secours de votre hébergeur. Elle vous permettra d'ajouter une nouvelle clé ou de corriger vos réglages. Vérifiez que votre abonnement propose bien cette console avant d'avoir un problème, et gardez toujours une copie de sécurité de votre clé.