J'ai essayé d'obtenir ssh-add
travailler sur un RaspberryPi exécutant Raspbian.
Je peux commencer ssh-agent
, quand je le fais, il donne la sortie suivante dans le terminal:
SSH_AUTH_SOCK=/tmp/ssh-06TcpPflMg58/agent.2806; export SSH_AUTH_SOCK;
SSH_AGENT_PID=2807; export SSH_AGENT_PID;
echo Agent pid 2807;
Si je lance ps aux | grep ssh
Je peux voir qu'il fonctionne.
Ensuite, j'essaie d'exécuter ssh-add
afin d'ajouter ma phrase secrète de clé, et j'obtiens ce qui suit:
Could not open a connection to your authentication agent.
Des idées?
Votre Shell est destiné à évaluer la sortie de ce code Shell par ssh-agent
. Exécutez ceci à la place:
eval "$(ssh-agent)"
Ou si vous avez déjà démarré ssh-agent, copiez-collez-le dans votre invite de shell (en supposant que vous exécutez un shell de type Bourne).
ssh
les commandes doivent savoir comment parler à ssh-agent
, ils savent que du SSH_AUTH_SOCK
variable d'environnement.
Essaye celui-là:
$ ssh-agent /bin/sh
$ ssh-add $yourkey
Cette question a également été très bien traitée sur Stackoverflow .
eval `ssh-agent -s`
ssh-add
Si vous utilisez csh comme shell ( FreeBSD PI ) cela pourrait fonctionner:
eval `ssh-agent -c`
ensuite, il vous suffit de faire quelque chose comme:
ssh-add ~/.ssh/id_rsa
Essayez ceci: allez à C:\$Installation_Folder$\Git\cmd
et exécutez:
start-ssh-agent
Il ouvrira une commande cmd et exécutera le ssh-agent
le droit chemin.
ssh-add ~/.ssh/id_rsa
devrait alors fonctionner.
C'était déroutant et a 2 bonnes réponses possibles, selon que l'utilisateur tente d'ajouter une clé ssh sur Linux ou Windows (comme je le suis). Cela ne répond probablement pas à l'OP, mais c'est une extension pour git-bash. J'exécute Windows et Ubuntu pour le développement, et mon installation git est légèrement différente dans chacun.
Essayez ceci: allez dans C:\$ Installation_Folder $\Git\cmd et exécutez:
start-ssh-agent Il ouvrira une commande cmd et exécutera ssh-agent de la bonne façon.
.. était une bonne réponse Windows, mais n'a pas pu spécifier que vous deviez passer par l'Explorateur Windows pour trouver le dossier d'installation de Git et exécuter le shell Windows qui s'ouvrirait à la fin de l'étape 1.
"allez dans C:\$ Installation_Folder $\Git\cmd"
Étape 2: il vous suffit de double-cliquer
start-ssh-agent
À l'étape 3, vous revenez à git-bash ou à l'émulateur de terminal * nix que vous exécutez et exécutez ssh-add. Si vous avez utilisé le nom par défaut pour la clé publique ssh, vous n'avez pas besoin d'ajouter le nom car ssh-add l'utilise automatiquement.
Vous pouvez également utiliser la syntaxe suivante:
ssh-agent sh -c 'ssh-add && echo Do some stuff here.'
Il y a plusieurs façons si vous souhaitez utiliser une identité avec Sudo, par ex. Sudo npm install
.
Long chemin, mais vous donne également un accès root afin que vous n'ayez pas besoin d'utiliser beaucoup de Sudo
.
Sudo ssh-agent bash
ssh-agent
avec les privilèges du superutilisateur,cd /home/user/.ssh
De là, vous pouvez courir
ssh-add id_rsa
npm install git+ssh://git@YOUR-PROJECT-URL -g && npm link PROJECT-NAME
Short way, seulement votre utilisateur (sauf si vous voulez beaucoup Sudo)
eval "$(ssh-agent)"
ssh-add
Sudo SSH_AUTH_SOCK="$SSH_AUTH_SOCK" npm install git+ssh://git@PROJECT-URL -g && Sudo npm link PROJECT-NAME