J’ai mis en place mes fichiers SSH à l’aide de ce guide , qui fonctionnait bien auparavant (je pouvais courir hg push
sans demander de phrase secrète). Qu'est-ce qui aurait pu se passer entre maintenant et maintenant, étant donné que j'utilise toujours le même répertoire de base.
$ cat .hg/hgrc
[paths]
default = ssh://[email protected]/tshepang/bloog
$ hg push
Enter passphrase for key '/home/wena/.ssh/id_rsa':
pushing to ssh://[email protected]/tshepang/bloog
searching for changes
...
ssh
key-authentication
Tshepang
la source
la source
eval
pourriez-vous simplement taperssh-agent
?eval
fait les excutations.ssh-add /path/to/key
Une façon de résoudre ceci est avec
ssh-agent
etssh-add
:Ensuite, la phrase secrète est enregistrée pour la session en cours. et ne sera plus demandé.
la source
J'utilise Keychain pour gérer les clés SSH. Il est également disponible dans Debian et donc vraisemblablement Ubuntu avec
Voici la page du paquet du trousseau Debian . Comme vous pouvez le constater, le projet n’est pas très actif, mais fonctionne pour moi. J'ai également commenté un peu à ce sujet dans une autre réponse ici
la source
Créez (ou éditez s'il existe) le fichier ~ / .ssh / config suivant:
la source
IgnoreUnknown AddKeysToAgent,UseKeychain
juste au-dessusUseKeychain yes
.UseKeychain
option ait été ajoutée dans OpenSSH 7.1p2 (2016-02-28). Peut-être que vous avez une version précédente. openssh.com/txt/release-7.2Pour plus de commodité, la méthode optimale est une combinaison des réponses de jmtd et de Faheem .
Utiliser
ssh-agent
seul signifie qu'une nouvelle instance dessh-agent
doit être créée pour chaque nouveau terminal que vous ouvrez.keychain
une fois initialisé, il demandera le mot de passe composé pour la ou les clés privées et le stockera. De cette façon, votre clé privée est protégée par un mot de passe, mais vous n’aurez pas à entrer votre mot de passe encore et encore.Le wiki Arche recommande de l' initialisation porte - clés
/etc/profile.d/
ou votre profil de shell, comme.bash_profile
ou.bashrc
. Cela a pour inconvénient d’initialiser votre trousseau dès que vous ouvrez un terminal.Une approche plus flexible consiste à combiner
keychain
avec unetmux
session spécifique . Donc, dans.bash_profile
:... et il ne vous reste plus qu'à démarrer la
tmux
session sécurisée au fur et à mesure des besoins (lancée à partir d'un raccourci clavier):Désormais, votre trousseau ne sera initialisé qu'une fois lorsque vous démarrez cette
tmux
session spécifique . Tant que cette session persiste, vous pourrez accéder à cesssh
clés et accéder à vos référentiels distants.la source
.profile
cette page. Ainsi, vous obtiendrez une invite pour les clés dès votre connexion.Vous pouvez utiliser
sshpass
:Vous avez juste besoin d'ajouter
sshpass -p yourpassphrase
avant d'ajouter votressh
commande habituelle .la source