SSH - Sécuriser les connexions à distance
Lien sécurisé — 5 min
À propos de ce cours
Support de cours sur le protocole SSH (Secure Shell)
Plan de formation
- 1- Présentation SSH
- 2- SSH - coté client
- 3- SSH - coté serveur
- 4- Autorisation forte
- 5- Conclusion
Programme du cours
Objectifs d'apprentissage
- Comprendre les principes fondamentaux du protocole SSH et son utilité pour les communications sécurisées
- Maîtriser l'installation et la configuration d'un client SSH sur différents systèmes d'exploitation
- Apprendre à configurer et sécuriser un serveur SSH avec les bonnes pratiques
- Implémenter des méthodes d'authentification forte (clés SSH, authentification à deux facteurs)
- Savoir utiliser SSH pour le tunneling, le transfert de fichiers (SFTP/SCP) et la gestion à distance
Public cible
Ce cours s'adresse aux administrateurs système, développeurs et professionnels de l'informatique souhaitant sécuriser leurs échanges réseau. Des connaissances de base en ligne de commande et en gestion de serveurs sont recommandées.
Contenu détaillé
1- Présentation SSH
SSH (Secure Shell) est un protocole cryptographique permettant des communications chiffrées entre un client et un serveur. Il remplace les anciens protocoles non sécurisés comme Telnet ou FTP. SSH utilise une combinaison de chiffrement symétrique, asymétrique et de hachage pour garantir la confidentialité et l'intégrité des données. Ce module couvre l'historique, les versions (SSH-1 vs SSH-2) et les cas d'usage typiques.
2- SSH - côté client
Apprenez à utiliser les clients SSH sous Linux (OpenSSH), Windows (PuTTY, WinSCP) et macOS. Configuration des connexions basiques, gestion des fichiers de configuration (~/.ssh/config), utilisation des options de ligne de commande. Techniques avancées comme la compression, le keepalive et les sauts multiples (SSH jumping).
3- SSH - côté serveur
Installation et sécurisation d'un serveur OpenSSH. Configuration via sshd_config : modification du port par défaut, désactivation de l'authentification par mot de passe, restriction des utilisateurs et IPs autorisées. Surveillance des connexions via les logs et outils comme fail2ban. Bonnes pratiques pour durcir un serveur SSH en environnement de production.
4- Autorisation forte
Méthodes d'authentification avancées : génération et déploiement de paires de clés RSA/Ed25519, utilisation des agents SSH et du forward d'agent. Intégration avec des solutions comme Google Authenticator pour l'OTP. Gestion centralisée des accès via des certificats SSH signés par une autorité de certification interne.
5- Fonctionnalités avancées
SSH offre bien plus que des shells distants : tunneling local/distant pour sécuriser d'autres protocoles, transfert de fichiers via SCP/SFTP, montage de systèmes de fichiers distants avec SSHFS. Automatisation des tâches via les connexions sans mot de passe et l'exécution de commandes à distance.
6- Conclusion et bonnes pratiques
Synthèse des éléments critiques pour une infrastructure SSH sécurisée. Checklist de sécurité incluant la rotation des clés, la révocation d'accès et les audits réguliers. Ressources pour approfondir (RFC 4251-4256, outils comme Ansible qui s'appuient sur SSH).
Durée et modalités
Formation de 2 jours combinant théorie (40%) et pratique (60%). Les participants recevront des VM préconfigurées pour les travaux pratiques et des cheat sheets récapitulant les commandes essentielles.