Sélectionnez explicitement la bonne clé pour chaque hôte et évitez l’exhaustion d’authentification.
objectifs d’apprentissage
- Configurer IdentitiesOnly yes.
- Mapper Host→IdentityFile.
- Limiter le nombre d’essais.
prérequis
- Plusieurs clés générées.
- Hôtes distincts.
notions clés
- IdentitiesOnly yes.
- IdentityFile par Host.
- PreferredAuthentications.
démonstration guidée
étape 1
Deux clés pour deux hôtes différents.
cat >> ~/.ssh/config << 'EOF'
Host gitforge
HostName github.com
User git
IdentityFile ~/.ssh/id_ed25519_github
IdentitiesOnly yes
Host myserver
HostName 203.0.113.10
User ubuntu
IdentityFile ~/.ssh/id_ed25519_prod
IdentitiesOnly yes
EOF
étape 2
Limiter les méthodes d’authentification tentées.
ssh -o PreferredAuthentications=publickey -o NumberOfPasswordPrompts=0 myserver 'true' || true
exercice
Créez une troisième entrée pour un autre hôte avec sa clé dédiée.
correction
Bloc Host additionnel.
cat >> ~/.ssh/config << 'EOF'
Host staging
HostName 203.0.113.20
User ubuntu
IdentityFile ~/.ssh/id_ed25519_staging
IdentitiesOnly yes
EOF
quiz éclair
- Quelle option évite d’envoyer des clés non listées pour l’hôte ?
- a) IdentitiesOnly yes
- b) ForwardAgent yes
- c) GSSAPIAuthentication yes