SSH : Secure SHell
Objectif
Se familiariser avec le protocole SSH (Secure SHell).
Mise en situation
SSH est une application d'Internet qui permet de se connecter à un serveur à distance, puis d'exécuter des commandes sur ce serveur.
C'est aujourd'hui le mode de contrôle privilégié des informaticien·nes sur les serveurs qui font fonctionner Internet.
Rappel : Terminal et shell
Le terminal (aussi appelé invité de commandes ou console) est le moyen historique pour interagir avec un ordinateur. Ce programme offre un shell (une interface système) donnant accès aux programmes de l'ordinateur. Il suffit d'un écran et d'un clavier pour utiliser ce shell.
Définition : Le programme SSH (Secure SHell)
Le programme SSH (Secure Shell) permet d'interagir de manière sécurisée avec un ordinateur distant via un shell. C'est le programme de référence pour effectuer des opérations à distance.
Toutes les commandes tapées depuis un clavier d'ordinateur à un emplacement A sont exécutées dans le shell d'un ordinateur à un emplacement B. Les informations qui transitent sur Internet via SSH sont les chaînes de caractères représentant les commandes à exécuter et les chaînes de caractères représentant les résultats de ces exécutions.
Définition : Le protocole SSH
SSH est aussi le nom du protocole de communication utilisé par le programme SSH. Ce protocole fonctionne sur une architecture client-serveur ; l'ordinateur qui fournit les commandes est le client et l'ordinateur qui exécute les commandes sur son système est le serveur.
SSH repose sur TCP pour le transport et est par défaut associé au port 22.
L'établissement d'une connexion SSH se fait en deux étapes :
Établissement d'une communication sécurisée ;
Authentification du client.
Méthode : Établir une connexion SSH
On utilise la commande ssh
depuis un terminal :
ssh alice@80.67.182.69
La machine se trouvant à l'adresse 80.67.182.69
doit avoir un utilisateur alice
.
Attention :
Si ssh
se connecte pour la première fois au serveur, l'utilisateur devra examiner l'« empreinte » du serveur pour des raisons de sécurité. En pratique, sauf besoin très spécifique, on répond yes
systématiquement.
Remarque :
Si un serveur est associé à un nom de domaine, on peut utiliser ce domaine à la place de l'IP.
ssh alice@picasoft.net
À retenir
Le protocole SSH permet à un client d'ouvrir un shell sur un serveur distant.
Ce protocole sécurise les communications en employant plusieurs méthodes de chiffrement, de l'authentification au transfert de données.