15%

Save 15% on All Hosting Services

Test your skills and get Discount on any hosting plan

Utilisez le code :

Skills
Commencer
28.01.2026

Où sont stockées les clés SSH dans Linux — et comment les gérer en toute sécurité

SSH (Secure Shell) est un outil fondamental dans l’écosystème Linux, utilisé pour l’accès à distance, les transferts de fichiers sécurisés, l’automatisation et la gestion des serveurs. Bien que la plupart des utilisateurs interagissent avec SSH via la commande ssh, en coulisses SSH s’appuie sur des paires de clés publiques et privées pour l’authentification — surtout dans des environnements où les connexions sans mot de passe, l’automatisation et les pratiques DevOps sont essentielles.

Emplacement par défaut de stockage des clés SSH

L’endroit le plus courant où les clés SSH sont stockées est :

~/.ssh/

Cela fait référence au répertoire .ssh dans le dossier personnel de l’utilisateur, par exemple :

/home/username/.ssh/

Fichiers courants dans ce répertoire :

FichierBut
id_rsaClé privée par défaut (RSA)
id_rsa.pubClé publique correspondante
id_ecdsa, id_ed25519Autres clés privées (ECDSA, Ed25519)
id_*.pubClés publiques correspondantes
authorized_keysStocke les clés publiques autorisées à se connecter
known_hostsStocke les empreintes des serveurs (vérification de la clé hôte)
configConfiguration du client SSH spécifique à l’utilisateur

Si vous générez des clés avec ssh-keygen, elles sont stockées ici par défaut, sauf si un chemin est spécifié.

Emplacements des clés SSH à l’échelle du système

Clés hôtes du serveur SSH (sshd)

Clés à l’échelle du système utilisées par le démon SSH (côté serveur) :

/etc/ssh/

Fichiers typiques :

FichierBut
ssh_host_rsa_keyClé privée hôte (RSA)
ssh_host_rsa_key.pubClé publique hôte
ssh_host_ecdsa_keyClé privée hôte ECDSA
ssh_host_ed25519_keyClé privée hôte Ed25519

Ces clés sont utilisées pour identifier le serveur aux clients, pas pour authentifier les utilisateurs.

Le démon SSH (sshd) présente la clé publique hôte lors de la connexion ; les clients la comparent à ~/.ssh/known_hosts.

Emplacements de clés personnalisés

Vous pouvez générer ou utiliser des clés SSH depuis n’importe quel emplacement, mais vous devez spécifier le chemin :

ssh -i /path/to/custom_key user@host

Vous pouvez également configurer plusieurs clés via ~/.ssh/config :

Host myserver
HostName 192.168.1.100
User devops
IdentityFile ~/.ssh/devops_key

Où les clés sont-elles utilisées ?

Sortant (côté client)

Les clients SSH recherchent des clés privées dans ~/.ssh/ par défaut. Elles sont utilisées pour initier l’authentification lors de la connexion à un serveur distant.

  • ssh, scp, rsync sur SSH, git (lors de l’utilisation de SSH à distance)

📌 Entrant (côté serveur)

Le serveur recherche des clés publiques dans :

~/.ssh/authorized_keys

Ce fichier liste quelles clés publiques sont autorisées à se connecter à ce compte utilisateur spécifique.

Si user_a essaie de se connecter à un serveur en tant que user_b, sa clé publique doit être présente dans ~user_b/.ssh/authorized_keys.

Permissions — Critiques pour la sécurité

Permissions correctes :

~/.ssh → 700 (drwx------)
~/.ssh/authorized_keys → 600 (-rw-------)
~/.ssh/id_rsa → 600 (-rw-------)
~/.ssh/id_rsa.pub → 644 (-rw-r--r--)

Des permissions incorrectes peuvent amener SSH à ignorer vos clés ou à rejeter complètement les connexions.

Gérer les clés SSH en toute sécurité

  • Utilisez une phrase de passe lors de la génération de clés privées :

    ssh-keygen -t ed25519 -C "your_email@example.com"
  • Utilisez ssh-agent pour mettre en cache les clés déverrouillées en mémoire :

    eval "$(ssh-agent -s)"
    ssh-add ~/.ssh/id_rsa
  • Faites tourner les clés régulièrement
  • Supprimez les clés inutilisées ou orphelines de “authorized_keys”
  • Utilisez des clés séparées par hôte/projet
  • Évitez d’utiliser des clés root dans différents environnements

Audit et débogage

Pour voir quelle clé est utilisée lors de la connexion SSH :

ssh -v user@host

Cela imprime des journaux détaillés, y compris quel fichier d’identité a été tenté.

Pour lister les clés chargées dans votre agent actuel :

ssh-add -l

Pour supprimer une clé :

ssh-add -d ~/.ssh/mykey

Conclusion

Comprendre où les clés SSH sont stockées dans Linux — et comment les gérer en toute sécurité — est crucial pour les administrateurs système, les développeurs, les ingénieurs DevOps et quiconque travaillant dans des environnements multi-hôtes ou multi-utilisateurs.

En connaissant la différence entre les clés utilisateur, les clés hôtes et les clés autorisées, vous pouvez :

  • Résoudre les problèmes d’authentification
  • Mettre en place des flux de travail automatisés sécurisés
  • Gérer l’accès entre équipes et systèmes

Sur les systèmes de production ou les plateformes cloud (par exemple, VPS ou serveurs dédiés), une mauvaise gestion des clés SSH peut entraîner de graves vulnérabilités. Assurez-vous de suivre les meilleures pratiques et d’auditer l’accès régulièrement.

15%

Save 15% on All Hosting Services

Test your skills and get Discount on any hosting plan

Utilisez le code :

Skills
Commencer