La gestion d'un parc informatique, même de taille modeste, présente un défi constant pour les administrateurs système. Gérer de nombreux ordinateurs implique d'effectuer des tâches répétitives sur chaque machine, ce qui augmente le risque d'erreurs coûteuses : un 'copier-coller' erroné peut déployer la mauvaise configuration, un oubli peut laisser une faille de sécurité béante sur un serveur. C'est précisément dans ce domaine que l'automatisation excelle.
Pour résoudre ce problème, deux outils se sont imposés comme des standards de l'industrie : SSH et Ansible. SSH fournit le moyen de se connecter de manière sécurisée à une machine distante, tandis qu'Ansible utilise cette connexion pour administrer et automatiser des tâches sur des centaines de machines simultanément.
Le Secure Shell (SSH) est un protocole réseau qui permet d'établir une connexion à distance entièrement chiffrée et sécurisée avec un autre ordinateur. Il a été conçu pour remplacer des protocoles plus anciens et non sécurisés comme RSH (Remote Shell).
Son rôle principal est de permettre aux administrateurs de se connecter à des serveurs distants pour les gérer via une ligne de commande, comme s'ils étaient physiquement devant la machine. C'est la brique fondamentale sur laquelle repose toute administration à distance moderne.
Pour prouver son identité à un serveur SSH, un utilisateur dispose de deux méthodes principales : le mot de passe traditionnel ou une paire de clés cryptographiques.
Le tableau suivant compare ces deux approches :
| Caractéristique | Authentification par Mot de Passe | Authentification par Clé SSH |
|---|---|---|
| Sécurité | Vulnérable aux attaques "brute force" (essayer toutes les combinaisons). | Extrêmement sécurisée car la clé est bien plus longue et complexe qu'un mot de passe mémorisable. |
| Commodité | Nécessite une saisie manuelle du mot de passe à chaque connexion. | Permet une connexion automatique et instantanée sans saisie manuelle. |
| Principe | Vous prouvez votre identité avec quelque chose que vous savez (le mot de passe). | Vous prouvez votre identité avec quelque chose que vous possédez (la clé privée). |
L'authentification par clé est non seulement plus pratique, mais aussi bien plus sûre, car la clé privée secrète n'est jamais transmise sur le réseau.
La mise en place de cette méthode se fait en deux étapes simples :
ssh-keygen.ssh-copy-id user@host.Une configuration par défaut de SSH est fonctionnelle, mais il est crucial d'appliquer quelques règles de base pour renforcer la sécurité.
root par mot de passe.
PermitRootLogin prohibit-passwordroot.Port 12345 (par exemple)PasswordAuthentication no