Fichier ~/.ssh/config : des noms courts au lieu de longues commandes
Comment décrire une machine une seule fois et se connecter avec une commande de deux mots, définir la clé, l'utilisateur, le port, et maintenir la connexion active.
Mis à jour le 23 août 2026
Au lieu de ssh -i ~/.ssh/id_ed25519 -p 22 root@203.0.113.10, vous pouvez taper ssh vds. Vous le configurez une fois sur votre ordinateur.
Où se trouve le fichier
Sur macOS et Linux, c'est ~/.ssh/config. Sur Windows, C:\Users\<you>\.ssh\config (le même chemin ~/.ssh/config dans Windows Terminal). Le fichier peut ne pas exister — créez-le :
mkdir -p ~/.ssh
nano ~/.ssh/config
chmod 600 ~/.ssh/config
Les permissions comptent : si le fichier est lisible par tout le monde, le client peut refuser de le lire.
Entrée minimale
Host vds
HostName 203.0.113.10
User root
IdentityFile ~/.ssh/id_ed25519
Maintenant, ceci fonctionne :
ssh vds
Les autres outils reconnaissent aussi le nom court :
scp dump.sql vds:/root/
sftp vds
rsync -avz ./site/ vds:/var/www/site/
Pour copier des fichiers, consultez scp et rsync et SFTP.
Paramètres utiles
Host vds
HostName 203.0.113.10
User artem
Port 22
IdentityFile ~/.ssh/id_ed25519
IdentitiesOnly yes
ServerAliveInterval 30
ServerAliveCountMax 3
| Paramètre | Pourquoi vous en avez besoin |
|---|---|
IdentitiesOnly yes | Le client ne propose que la clé spécifiée. Vous évite des ennuis quand vous avez beaucoup de clés et que le serveur coupe les tentatives |
ServerAliveInterval | Envoie un paquet toutes les 30 secondes pour que la connexion ne tombe pas par inactivité |
Port | Si vous avez déplacé SSH vers un port non standard |
User | Le nom d'utilisateur par défaut pour cet hôte |
Plusieurs machines
Host vds-web
HostName 203.0.113.10
User root
IdentityFile ~/.ssh/id_ed25519
Host vds-db
HostName 203.0.113.20
User artem
IdentityFile ~/.ssh/id_ed25519
Host *
ServerAliveInterval 30
Le bloc Host * définit les paramètres communs à toutes les entrées. L'ordre compte : la première correspondance pour chaque paramètre l'emporte, donc gardez le bloc commun en bas.
Erreurs courantes
- Indentation avec des tabulations et espaces en fin de ligne — certains clients s'en plaignent. Utilisez quatre espaces.
- Un chemin de clé avec des antislashs sous Windows — écrivez
~/.ssh/id_ed25519. HostNamemanquant — le client tentera alors de se connecter à un hôte nommévdset ne le trouvera pas.- Permissions 644 sur le fichier — passez-les à
600.
Pour vérifier ce qui s'applique exactement à un hôte :
ssh -G vds
ssh -v vds
La première commande affiche les paramètres résultants, la seconde montre la progression de la connexion — elle vous indique quelle clé a été proposée.
Le fichier
configne décrit que votre côté. Ce que la machine accepte est décidé par son/etc/ssh/sshd_config, voir Clés SSH.