Aperçu
ssh-agent stocke en toute sécurité les clés privées SSH et les fournit aux clients SSH (ssh) si nécessaire pour simplifier le processus d'authentification. Une fois la phrase secrète saisie, il n'est plus nécessaire de la saisir à nouveau tant que l'agent est en cours d'exécution, ce qui est pratique. Ceci est particulièrement utile dans les environnements où plusieurs connexions SSH sont fréquemment utilisées.
Fonctionnalités principales
- Gestion et stockage des clés SSH
- Évite la saisie répétée de la phrase secrète
- Communication sécurisée avec les clients SSH
- Maintien des clés basé sur la session
Options principales
ssh-agent s'exécute généralement en arrière-plan et configure les variables d'environnement du shell pour que les clients SSH puissent trouver l'agent.
Exécution et contrôle
Commande générée :
Essayez de combiner les commandes.
Description:
`ssh-agent` Exécute la commande.
Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.
Exemples d'utilisation
Démarrer ssh-agent (bash/sh)
eval "$(ssh-agent -s)"
Démarre ssh-agent en arrière-plan et configure les variables d'environnement nécessaires pour la session shell actuelle.
Ajouter une clé SSH
ssh-add ~/.ssh/id_rsa
Ajoute une clé privée à ssh-agent. Si la clé a une phrase secrète, elle sera demandée une seule fois à ce moment-là.
Arrêter l'agent
ssh-agent -k
Arrête le processus ssh-agent connecté à la session shell actuelle.
Démarrer l'agent avec une durée de vie de clé d'une heure
eval "$(ssh-agent -s -t 3600)"
Démarre l'agent en définissant la durée de vie maximale de toutes les clés ajoutées à une heure (3600 secondes).
Vérifier la liste des clés actuellement chargées dans l'agent
ssh-add -l
Vérifie la liste des clés SSH actuellement chargées dans ssh-agent.
Conseils et précautions
Conseils pour utiliser efficacement ssh-agent et maintenir la sécurité.
Conseils
- **Démarrage automatique** : Vous pouvez ajouter `eval "$(ssh-agent -s)"` dans votre fichier `.bashrc` ou `.zshrc` pour que l'agent démarre automatiquement au lancement du shell. Il est conseillé d'ajouter une logique pour vérifier si un agent est déjà en cours d'exécution.
- **Vérifier la liste des clés** : Vous pouvez utiliser la commande `ssh-add -l` pour vérifier la liste des clés SSH actuellement chargées dans ssh-agent.
- **Supprimer une clé** : Vous pouvez supprimer une clé spécifique avec `ssh-add -d ~/.ssh/id_rsa` ou toutes les clés avec `ssh-add -D`.
Précautions
- **Agent Forwarding** : L'utilisation de l'option `ssh -A` pour l'agent forwarding permet au serveur distant d'accéder à l'agent local. Bien que pratique, cela présente un risque d'exposition de vos clés locales si le serveur distant est compromis. Utilisez-le donc uniquement sur des serveurs de confiance.
- **Durée de vie de l'agent** : Vous pouvez définir la durée de vie maximale des clés avec l'option `ssh-agent -t`. Pour des raisons de sécurité, il est conseillé d'éviter des durées de vie trop longues.