Bases du Shell sécurisé (SSH)
Apprenez à vous connecter en toute sécurité à des machines Linux distantes, notamment grâce à l’authentification par clé et à la configuration de base du client SSH.
Bases du Shell sécurisé (SSH) est une leçon Linux Command Line & Bash Scripting Mastery gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Linux Command Line & Bash Scripting Mastery, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Linux Command Line & Bash Scripting Mastery comprend 4 leçons au total.
Qu'est-ce que Secure Shell (SSH) ?
Bienvenue dans les fondamentaux de Secure Shell (SSH) ! SSH est un protocole réseau puissant qui vous permet de vous connecter en toute sécurité à un ordinateur distant via un réseau non sécurisé.
Considérez-le comme un tunnel sécurisé pour vos commandes et vos données. Il est indispensable pour administrer des serveurs Linux et des instances infonuagiques, et même pour accéder à distance à votre propre environnement de développement.
Pourquoi utiliser SSH ? La sécurité avant tout !
Avant SSH, les connexions à distance étaient souvent non chiffrées, ce qui permettait à n'importe qui d'espionner vos mots de passe et vos données. SSH résout ce problème grâce à un chiffrement robuste.
- Confidentialité : vos données sont chiffrées et protégées des regards indiscrets.
- Intégrité : garantit que les données ne sont pas altérées pendant leur transfert.
- Authentification : vérifie l'identité du client et du serveur.
C'est la norme du secteur pour l'administration à distance.
SSH : modèle client-serveur
SSH fonctionne selon un modèle client-serveur. Vous, en tant qu'utilisateur, exécutez un client SSH sur votre machine locale. Ce client se connecte à un serveur SSH (souvent appelé `sshd`) exécuté sur la machine distante.
Lorsque vous démarrez une connexion, le client et le serveur effectuent une « poignée de main » afin d'établir un canal chiffré et sécurisé avant tout échange de données.
Commande de base pour une connexion SSH
La manière la plus élémentaire de se connecter à un serveur distant via SSH consiste à utiliser la commande ssh, suivie du nom d'utilisateur et de l'hôte (adresse IP ou nom d'hôte).
Le format est ssh username@hostname_or_IP. Par exemple, pour vous connecter à un serveur situé à l'adresse 192.168.1.100 avec l'utilisateur coddy :
ssh coddy@192.168.1.100Première connexion et empreintes
La toute première fois que vous vous connectez à un nouveau serveur, SSH vous demande de vérifier son « empreinte ». Il s'agit d'un identifiant unique qui contribue à empêcher les attaques de type « intercepteur ».
Vérifiez toujours l'empreinte lorsque c'est possible (par exemple, en demandant confirmation à l'administrateur du serveur). Si elle correspond, saisissez yes pour ajouter le serveur à votre fichier ~/.ssh/known_hosts.
Port SSH et ports personnalisés
Par défaut, SSH utilise le port TCP 22. Toutefois, pour des raisons de sécurité, les administrateurs de serveurs configurent souvent SSH pour écouter sur un autre port, non standard.
Si le serveur distant utilise un port personnalisé (par exemple, le port 2222), vous pouvez le spécifier avec l'option -p :
ssh -p 2222 coddy@myremoteserver.comPrésentation de l'authentification par clé
Bien que l'authentification par mot de passe fonctionne, l'authentification SSH par clé est bien plus sûre et pratique. Elle utilise une paire de clés cryptographiques :
- Clé publique : stockée sur le serveur distant.
- Clé privée : stockée de manière sécurisée sur votre machine locale.
Lorsque vous vous connectez, le serveur met votre client au défi, et celui-ci utilise la clé privée pour prouver son identité sans jamais envoyer cette clé privée sur le réseau.
Générer des paires de clés SSH
Vous pouvez générer une paire de clés SSH à l'aide de la commande ssh-keygen. Elle vous demandera où enregistrer les clés (l'emplacement par défaut est ~/.ssh/id_rsa) ainsi qu'une phrase secrète facultative.
Une phrase secrète ajoute une couche de sécurité supplémentaire à votre clé privée. Son utilisation est vivement recommandée !
ssh-keygen -t rsa -b 4096Copier votre clé publique
Une fois votre paire de clés créée, vous devez copier votre clé publique sur le serveur distant. La méthode la plus simple consiste à utiliser ssh-copy-id. Cette commande se connecte au serveur distant (en utilisant d'abord votre mot de passe) et ajoute votre clé publique au fichier ~/.ssh/authorized_keys.
Vous pouvez ensuite vous connecter avec votre clé plutôt qu'avec un mot de passe !
ssh-copy-id coddy@myremoteserver.comVérification rapide : bases de SSH
Lesquelles des affirmations suivantes concernant SSH sont vraies ?
Récapitulatif : fondamentaux de SSH
Dans cette leçon, vous avez appris les fondamentaux de Secure Shell (SSH) !
- SSH fournit un accès distant sécurisé et chiffré.
- Il fonctionne selon un modèle client-serveur, généralement sur le port 22.
- Vous pouvez vous connecter avec
ssh user@host. - L'authentification par clé, qui utilise des paires de clés publique et privée (générées avec
ssh-keygenet copiées avecssh-copy-id), offre une sécurité supérieure à celle des mots de passe.
Ensuite, nous découvrirons des commandes réseau et des outils de transfert de fichiers encore plus puissants !
Questions Fréquemment Posées
La leçon « Bases du Shell sécurisé (SSH) » est-elle gratuite ?
Oui — le texte complet de « Bases du Shell sécurisé (SSH) » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Linux Command Line & Bash Scripting Mastery, passe à CoddyKit PRO. Le cours Linux Command Line & Bash Scripting Mastery comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Bases du Shell sécurisé (SSH) » ?
Apprenez à vous connecter en toute sécurité à des machines Linux distantes, notamment grâce à l’authentification par clé et à la configuration de base du client SSH. Tu pratiques Linux Command Line & Bash Scripting Mastery avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Linux Command Line & Bash Scripting Mastery ?
Aucune expérience préalable n'est requise. Linux Command Line & Bash Scripting Mastery sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.
Combien de temps prend la leçon « Bases du Shell sécurisé (SSH) » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Linux Command Line & Bash Scripting Mastery ?
Oui. Chaque leçon Linux Command Line & Bash Scripting Mastery inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Utilitaires réseau de base (ping, ip, netstat)
- Bases du Shell sécurisé (SSH)
- SCP et Rsync pour le transfert de fichiers
- Authentification SSH par clé et fichier de configuration