N'oubliez pas le mot de passe de la clé ssh pendant un certain temps

18

J'ai créé la clé ssh. Je l'utilise pour me connecter avec les dépôts git. Lors de la création de la clé, j'ai remarqué l'invite qui disait que le mot de passe devait être difficile à deviner. Par conséquent, j'ai trouvé un mot de passe de plus de 40 caractères. Maintenant, chaque fois que je le fais git clone, pushou quelque chose de similaire, je dois entrer le mot de passe (ce qui prend un certain temps, surtout lorsque je ne le comprends pas).

Je suis certainement heureux que j'apprécie les fonctions de sécurité; cependant, je préfère que le mot de passe ssh soit mis en cache pendant 5 à 15 minutes (ou tout autre montant arbitraire); Parfois, je fais de nombreuses opérations sur le référentiel dans un court laps de temps, et la saisie du mot de passe prend trop de temps. Comment puis-je faire ceci?

MatthewRock
la source
1
Si possible, passez à l'utilisation de l'authentification par clé publique. Dans ce schéma, la clé privée (que vous devez créer avec la clé publique) ne quitte jamais votre ordinateur. Vous pouvez le protéger avec un mot de passe, mais il peut s'agir d'un mot de passe plus court car (si vous prenez des mesures de sécurité raisonnables sur votre ordinateur), il est plus difficile pour un attaquant d'obtenir la clé privée en premier lieu.
David Z

Réponses:

24

Vous pouvez le faire en utilisant un agent SSH. La plupart des environnements de bureau en démarrent un pour vous; vous pouvez y ajouter votre clé en exécutant

ssh-add

Si vous devez démarrer l'agent, exécutez

eval $(ssh-agent)

(cela définit un certain nombre de variables d'environnement).

L' -toption à ssh-agentvous permettra de spécifier le délai d'expiration. Voir Configuration du délai d'expiration par défaut pour l'agent SSH pour plus de détails.

Stephen Kitt
la source