Le multiplexage SSH permet de réutiliser une connexion existante pour ouvrir de nouvelles sessions instantanément, ce qui améliore considérablement la réactivité lors de la gestion de plusieurs serveurs.
Prérequis
- Client OpenSSH version >= 6.7
- Serveur SSH accessible
- Pas de conflit sur le chemin des sockets dans
~/.ssh
Configuration de base
Ajoutez dans ~/.ssh/config :
Host *
ControlMaster auto
ControlPath ~/.ssh/control-%r@%h:%p
ControlPersist 10m
ControlMaster auto: active le multiplexage.ControlPath: définit le socket de contrôle.ControlPersist: durée de maintien de la connexion (ex. 10 minutes).
Vérification
- Ouvrez la première connexion :
ssh user@serveur - Dans un nouveau terminal, lancez une seconde connexion :
La réponse doit être quasi instantanée, sans échange d’authentification.ssh user@serveur
Cas d’usage avancé
Hôtes spécifiques
Pour une configuration dédiée :
Host db-server
HostName db.example.com
User dbadmin
ControlMaster auto
ControlPath ~/.ssh/cm-%h-%p.sock
ControlPersist 5m
Intégration avec l’agent SSH
ForwardAgent yes
Permet d’utiliser vos clés locales sur le serveur distant.
Résolution des problèmes
- Si le multiplexage échoue, supprimez les sockets obsolètes :
rm ~/.ssh/control-* - Vérifiez les permissions du répertoire
~/.ssh(700) et des fichiers (600).
Conclusion
Le multiplexage SSH est une optimisation simple à mettre en œuvre, offrant un gain de temps significatif pour les administrateurs et développeurs, surtout lors de sessions répétées.


