web-dev-qa-db-fra.com

Impossible d'ouvrir une connexion à votre agent d'authentification

Je rencontre cette erreur de:

$ git Push heroku master
Warning: Permanently added the RSA Host key for IP address '50.19.85.132' to the list of known hosts.
!  Your key with fingerprint b7:fd:15:25:02:8e:5f:06:4f:1c:af:f3:f0:c3:c2:65 is not authorized to access bitstarter.

J'ai essayé d'ajouter les clés et j'ai l'erreur ci-dessous:

$ ssh-add ~/.ssh/id_rsa.pub
Could not open a connection to your authentication agent.
1418
Danny Dai Smith

Avez-vous commencé ssh-agent?

Vous devrez peut-être démarrer ssh-agent avant d'exécuter la commande ssh-add:

eval `ssh-agent -s`
ssh-add

Notez que cela démarrera l'agent pour msysgit Bash sous Windows . Si vous utilisez un autre shell ou système d'exploitation, vous devrez peut-être utiliser une variante de la commande, telle que celles répertoriées dans autres réponses .

Voir les réponses suivantes:

  1. ssh-add se plaint: impossible d'ouvrir une connexion avec votre agent d'authentification
  2. Git Push nécessite un nom d'utilisateur et un mot de passe (contient des instructions détaillées sur l'utilisation de ssh-agent)
  3. Comment utiliser un agent d’authentification (git/ssh)? .
  4. Impossible d'ouvrir une connexion avec votre agent d'authentification

Pour démarrer automatiquement ssh-agent et permettre à une seule instance de fonctionner dans plusieurs fenêtres de console, voir Démarrer ssh-agent à la connexion .

Pourquoi devons-nous utiliser eval au lieu de simplement ssh-agent?

Pour savoir pourquoi, voir réponse de Robin Green .

Clés publiques vs privées

De plus, chaque fois que j'utilise ssh-add, j'y ajoute toujours des clés privées. Le fichier ~/.ssh/id_rsa.pub ressemble à une clé publique. Je ne sais pas si cela fonctionnera. Avez-vous un fichier ~/.ssh/id_rsa? Si vous l'ouvrez dans un éditeur de texte, cela signifie-t-il qu'il s'agit d'une clé privée?

2142
user456814

J'ai essayé les autres solutions en vain. J'ai fait plus de recherches et a constaté que la commande suivante fonctionnait. J'utilise Windows 7 et Git Bash .

eval $(ssh-agent)

Plus d'informations dans: https://coderwall.com/p/rdi_wq

498
Victor Alves

La commande suivante a fonctionné pour moi. J'utilise CentOS.

exec ssh-agent bash
246
mianjee

MsysGit ou Cygwin

Si vous utilisez Msysgit ou Cygwin, vous pouvez trouver un bon tutoriel à l'adresse Agent SSH dans msysgit et cygwin et bash :

  1. Ajoutez un fichier appelé .bashrc à votre dossier personnel.

  2. Ouvrez le fichier et collez-le dans:

    #!/bin/bash
    eval `ssh-agent -s`
    ssh-add
    
  3. Cela suppose que votre clé se trouve dans l'emplacement conventionnel ~/.ssh/id_rsa. Si ce n'est pas le cas, incluez un chemin complet après la commande ssh-add.

  4. Ajouter ou créer un fichier ~/.ssh/config avec le contenu

    ForwardAgent yes
    

    Dans le didacticiel d'origine, le paramètre ForwardAgent est Yes, mais c'est une faute de frappe. Utilisez toutes les minuscules ou vous obtiendrez des erreurs.

  5. Redémarrez Msysgit. Il vous demandera de saisir votre phrase secrète une fois, et c'est tout (jusqu'à la fin de la session ou jusqu'à ce que votre agent ssh soit tué).

Mac OS X

Si vous ne voulez pas démarrer un nouvel agent ssh à chaque fois que vous ouvrez un terminal, consultez Keychain . Je suis sur un Mac maintenant, alors j’ai utilisé le tutoriel ssh-agent avec zsh & keychain sous Mac OS X pour le configurer, mais j’ai 'Suis sûr qu'une recherche Google aura beaucoup d'informations pour Windows.

Mise à jour : Une meilleure solution pour Mac consiste à ajouter votre clé au trousseau Mac OS:

ssh-add -K ~/.ssh/id_rsa

Aussi simple que cela.

202
RobW

Impossible d'ouvrir une connexion à votre agent d'authentification

Pour résoudre cette erreur:

frapper:

$ eval `ssh-agent -s`

tcsh:

$ eval `ssh-agent -c`

Puis utilisez ssh-add comme vous le feriez normalement.


Conseil:

J'oubliais toujours quoi taper pour les commandes ssh-agent ci-dessus, alors j'ai créé un alias dans mon fichier .bashrc comme ceci:

alias ssh-agent-cyg='eval `ssh-agent -s`'

Maintenant, au lieu d'utiliser ssh-agent, je peux utiliser ssh-agent-cyg

Par exemple.

$ ssh-agent-cyg
SSH_AUTH_SOCK=/tmp/ssh-n16KsxjuTMiM/agent.32394; export SSH_AUTH_SOCK;
SSH_AGENT_PID=32395; export SSH_AGENT_PID;
echo Agent pid 32395;
$ ssh-add ~/.ssh/my_pk

Source d'origine du correctif:

http://cygwin.com/ml/cygwin/2011-10/msg00313.html

193
Chris Snow

J'ai rencontré le même problème pour Linux, et voici ce que j'ai fait:

Fondamentalement, la commande ssh-agent démarre l'agent, mais ne définit pas vraiment les variables d'environnement à exécuter. Il envoie simplement ces variables au shell.

Tu dois:

eval `ssh-agent`

puis faites ssh-add. Voir Impossible d'ouvrir une connexion avec votre agent d'authentification.

114
n3o

ssh-add et ssh (en supposant que vous utilisiez les implémentations openssh) nécessitent une variable d'environnement pour savoir comment parler à l'agent ssh. Si vous avez démarré l'agent dans une fenêtre d'invite de commande différente de celle que vous utilisez maintenant ou si vous l'avez mal démarré, ni ssh-add ni ssh ne verront cette variable d'environnement définie (car la variable d'environnement est définie localement à la commande Invite dans laquelle il est défini).

Vous ne dites pas quelle version de ssh vous utilisez, mais si vous utilisez cygwin, vous pouvez utiliser cette recette à partir de Agent SSH sur Cygwin :

# Add to your Bash config file
SSHAGENT=/usr/bin/ssh-agent
SSHAGENTARGS="-s"
if [ -z "$SSH_AUTH_SOCK" -a -x "$SSHAGENT" ]; then
    eval `$SSHAGENT $SSHAGENTARGS`
    trap "kill $SSH_AGENT_PID" 0
fi

Cela démarrera automatiquement un agent pour chaque nouvelle fenêtre d'invite de commande que vous ouvrez (ce qui n'est pas optimal si vous ouvrez plusieurs invites de commande au cours d'une session, mais au moins, cela devrait fonctionner).

108
Robin Green

Essayez les étapes suivantes:

1) Ouvrez Git Bash et exécutez: cd ~/.ssh

2) Essayez d’exécuter l’agent: eval $(ssh-agent)

3) À l'heure actuelle, vous pouvez exécuter la commande suivante: ssh-add -l

95
ChechoroArtem

Au lieu d'utiliser $ ssh-agent -s, j'ai utilisé $ eval `ssh-agent -s` pour résoudre ce problème.

Voici ce que j'ai effectué étape par étape (à partir de l'étape 2 sur GitBash):

  1. Nettoyé mon dossier .ssh à C:\user\<username>\.ssh\
  2. Généré une nouvelle clé SSH
    $ ssh-keygen -t rsa -b 4096 -C "[email protected]"
  3. Vérifiez si un identifiant de processus (agent ssh) est déjà en cours d'exécution.
    $ ps aux | grep ssh
  4. (Facultatif) Si vous en trouvez à l'étape 3, éliminez-les.
    $ kill <pids>
  5. Commencé l'agent ssh
    $ eval `ssh-agent -s`
  6. Ajout de la clé ssh générée à l'étape 2 à l'agent ssh
    $ ssh-add ~/.ssh/id_rsa
77
vinsinraw

Dans Windows 10, j'ai essayé toutes les réponses énumérées ici, mais aucune d'entre elles ne semblait fonctionner. En fait, ils donnent un indice. Pour résoudre un problème, vous avez simplement besoin de 3 commandes. L'idée de ce problème est que ssh-add a besoin que les variables d'environnement SSH_AUTH_SOCK et SSH_AGENT_PID soient définies avec le chemin d'accès au fichier sock-agent actuel et le numéro de pid.

ssh-agent -s > temp.txt

Cela enregistrera la sortie de ssh-agent dans un fichier. Le contenu du fichier texte ressemblera à ceci:

SSH_AUTH_SOCK=/tmp/ssh-kjmxRb2764/agent.2764; export SSH_AUTH_SOCK;
SSH_AGENT_PID=3044; export SSH_AGENT_PID;
echo Agent pid 3044;

Copiez quelque chose comme "/tmp/ssh-kjmxRb2764/agent.2764" à partir d'un fichier texte et exécutez la commande suivante directement dans la console:

set SSH_AUTH_SOCK=/tmp/ssh-kjmxRb2764/agent.2764

Copiez quelque chose comme "3044" à partir d'un fichier texte et exécutez la commande suivante directement dans la console:

set SSH_AGENT_PID=3044

Désormais, lorsque les variables d'environnement (SSH_AUTH_SOCK et SSH_AGENT_PID) sont définies pour la session de console actuelle, exécutez votre commande ssh-add et la connexion de l'agent ssh n'échouera plus.

53
BIOHAZARD

Courir

ssh-agent bash
ssh-add

Pour obtenir plus de détails, vous pouvez rechercher

ssh-agent

ou courir

man ssh-agent
42
bp zhang

Une chose que j’ai découverte est que eval n’a pas fonctionné pour moi avec Cygwin. Ce qui a fonctionné pour moi a été ssh-agent ssh-add id_rsa.

Après cela, je suis tombé sur un problème qui disait que ma clé privée était trop ouverte. C'est la solution que j'ai réussi à trouver pour cela (de ici ):

chgrp Users id_rsa

aussi bien que

chmod 600 id_rsa

enfin j'ai pu utiliser:

ssh-agent ssh-add id_rsa
29
Vnge

Pour amplifier la réponse de n3o pour Windows 7 ...

Mon problème était en effet que certaines variables d'environnement requises n'étaient pas définies, et n3o a raison de dire que ssh-agent vous explique comment définir ces variables d'environnement, mais ne les définit pas réellement.

Puisque Windows ne vous laisse pas faire "eval", voici ce qu'il faut faire à la place:

Rediriger la sortie de ssh-agent vers un fichier de commandes avec

ssh-agent > temp.bat

Maintenant, utilisez un éditeur de texte tel que Notepad pour éditer temp.bat. Pour chacune des deux premières lignes: - Insérez le mot "set" et un espace au début de la ligne. - Supprimez le premier point-virgule et tout ce qui suit.

Supprimez maintenant la troisième ligne. Votre temp.bat devrait ressembler à ceci:

set SSH_AUTH_SOCK=/tmp/ssh-EorQv10636/agent.10636
set SSH_AGENT_PID=8608

Exécutez temp.bat. Cela définira les variables d'environnement nécessaires pour que ssh-add fonctionne.

27
Steve Saporta

Je viens de faire fonctionner ça. Ouvrez votre fichier ~/.ssh/config.

Ajouter ce qui suit-

Host github.com
 IdentityFile ~/.ssh/github_rsa

La page qui m'a donné l'indice Configurer SSH pour Git disait que l'indentation sur un seul espace est importante ... bien que j'ai une configuration ici de Heroku qui ne dispose pas de cet espace et fonctionne correctement.

17
Paul Becotte

Si vous suivez ces instructions, votre problème sera résolu.

Si vous utilisez un ordinateur Mac ou Linux, tapez:

eval "$(ssh-agent -s)"

Si vous utilisez Windows, tapez:

ssh-agent -s
16
Fahim Boron

Laissez-moi vous proposer une autre solution. Si vous venez d'installer Git 1.8.2.2 ou ses environs et que vous souhaitez activer SSH, suivez les instructions bien écrites .

Tout à l'étape 5.6 où vous pourriez rencontrer un léger problème. Si un agent SSH est déjà en cours d'exécution, le message d'erreur suivant peut s'afficher lorsque vous redémarrez bash

Could not open a connection to your authentication agent

Si vous le faites, utilisez la commande suivante pour voir si plusieurs processus ssh-agent sont en cours d'exécution

ps aux | grep ssh

Si vous voyez plus d'un service ssh-agent, vous devrez tuer tous ces processus. Utilisez la commande kill comme suit (le PID sera unique sur votre ordinateur)

kill <PID>

Exemple:

kill 1074

Après avoir supprimé tous les processus ssh-agent, exécutez la commande px aux | grep ssh commande à nouveau pour être sûr qu'ils sont partis, puis redémarrez Bash.

Voilà, vous devriez maintenant avoir quelque chose comme ça:

Initializing new SSH agent...
succeeded
Enter passphrase for /c/Users/username/.ssh/id_rsa:

Vous pouvez maintenant continuer à l'étape 5.7 et aux suivantes.

13
Rick

Remarque: ceci est une réponse à cette question , qui a été fusionné avec celui-ci. Cette question concernait Windows 7, ce qui signifie que ma réponse visait Cygwin/MSYS/MSYS2. Celui-ci semble pour certains Unix, où je ne m'attendrais pas à ce que l'agent SSH ait besoin d'être géré comme ceci .

Cela exécutera l'agent SSH et n'authentifiera que la première fois que vous en aurez besoin , et non à chaque fois que vous ouvrirez votre terminal Bash. Il peut être utilisé pour tout programme utilisant SSH en général, y compris ssh et scp. Ajoutez simplement ceci à /etc/profile.d/ssh-helper.sh:

ssh-auth() {
    # Start the SSH agent only if not running
    [[ -z $(ps | grep ssh-agent) ]] && echo $(ssh-agent) > /tmp/ssh-agent-data.sh

    # Identify the running SSH agent
    [[ -z $SSH_AGENT_PID ]] && source /tmp/ssh-agent-data.sh > /dev/null

    # Authenticate (change key path or make a symlink if needed)
    [[ -z $(ssh-add -l | grep "/home/$(whoami)/.ssh/id_rsa") ]] && ssh-add
}

# You can repeat this for other commands using SSH
git() { ssh-auth; command git "$@"; }
12
Renato Silva

Utilisez le paramètre -A lorsque vous vous connectez au serveur, par exemple:

ssh -A root@myhost

depuis la page de manuel:

-A Enables forwarding of the authentication agent connection.  
   This can also be specified on a per-Host basis in a configuration file.

   Agent forwarding should be enabled with caution.  Users with the ability to bypass file permissions on the remote Host (for the agent's
   UNIX-domain socket) can access the local agent through the forwarded 
   connection.  An attacker cannot obtain key material from the agent,
   however they can perform operations on the keys that enable them to
   authenticate using the identities loaded into the agent.
8
Lebnik

La solution de base pour exécuter ssh-agent reçoit de nombreuses réponses. Cependant, exécuter ssh-agent plusieurs fois (pour chaque terminal ouvert ou pour chaque connexion distante) créera de nombreuses copies de ssh-agent s'exécutant en mémoire. Les scripts suggérés pour éviter ce problème sont longs et nécessitent d'écrire et/ou de copier un fichier séparé ou d'écrire trop de chaînes dans ~/.profile ou ~/.schrc. Permettez-moi de suggérer solution simple à deux chaînes:

Pour sh, bash, etc.:

# ~/.profile
if ! pgrep -q -U `whoami` -x 'ssh-agent'; then ssh-agent -s > ~/.ssh-agent.sh; fi
. ~/.ssh-agent.sh

Pour csh, tcsh, etc:

# ~/.schrc
sh -c 'if ! pgrep -q -U `whoami` -x 'ssh-agent'; then ssh-agent -c > ~/.ssh-agent.tcsh; fi'
eval `cat ~/.ssh-agent.tcsh`

Qu'est-ce ici:

  • rechercher le processus ssh-agent par nom et par utilisateur actuel
  • créez le fichier de script de shell approprié en appelant ssh-agent et exécutez ssh-agent lui-même si aucun utilisateur en cours ssh-agent n'a été trouvé.
  • évaluer le script Shell créé qui configure l'environnement approprié

Il n'est pas nécessaire de protéger le script shell créé ~/.ssh-agent.tcsh ou ~/.ssh-agent.sh d'un autre accès utilisateur, car: la première communication avec ssh-agent est traitée via un socket protégé inaccessible à un autre utilisateur, et à la seconde, un autre utilisateur peut trouver ssh-agent socket simple en énumérant des fichiers dans le répertoire /tmp/. En ce qui concerne l'accès au processus ssh-agent, ce sont les mêmes choses.

7
oklas

Essayez ce qui suit:

ssh-agent sh -c 'ssh-add && git Push heroku master'
6
kenorb

Lisez réponse de @ cupcake pour des explications. Ici, j'essaie seulement d'automatiser le correctif.

Si vous utilisez un terminal Cygwin avec BASH, ajoutez ce qui suit au fichier $ HOME/.bashrc. Cela ne démarre qu'une fois ssh-agent dans le premier terminal Bash et ajoute les clés à ssh-agent. (Je ne sais pas si cela est requis sous Linux)

###########################
# start ssh-agent for
# ssh authentication with github.com
###########################
SSH_AUTH_SOCK_FILE=/tmp/SSH_AUTH_SOCK.sh
if [ ! -e $SSH_AUTH_SOCK_FILE ]; then
    # need to find SSH_AUTH_SOCK again.
    # restarting is an easy option
    pkill ssh-agent
fi
# check if already running
SSH_AGENT_PID=`pgrep ssh-agent`
if [ "x$SSH_AGENT_PID" == "x" ]; then
#   echo "not running. starting"
    eval $(ssh-agent -s) > /dev/null
    rm -f $SSH_AUTH_SOCK_FILE
    echo "export SSH_AUTH_SOCK=$SSH_AUTH_SOCK" > $SSH_AUTH_SOCK_FILE
    ssh-add $HOME/.ssh/github.com_id_rsa 2>&1 > /dev/null
#else
#   echo "already running"
fi
source $SSH_AUTH_SOCK_FILE

N'OUBLIEZ PAS d'ajouter vos bonnes clés dans la commande "ssh-add".

5
Kiran Mohan

J'ai eu ce problème lorsque j'ai démarré ssh-agent, alors qu'il était déjà en cours d'exécution. Obtient confus. Pour voir si c'est le cas, utilisez

eval $(ssh-agent)

pour voir si cela correspond à ce que vous pensiez devoir être. Dans mon cas, c'était différent de celui que je viens de commencer.

Pour vérifier si vous avez plus d'un agent ssh en cours d'exécution, vous pouvez vérifier:

ps -ef | grep ssh
4
Jahmic

J'ai eu le même problème sur Ubuntu et les autres solutions ne m'ont pas aidé. J'ai finalement réalisé quel était mon problème. J'avais créé mes clés ssh dans le dossier /root/.ssh. Ainsi, même lorsque j'ai lancé ssh-add en tant que root, il ne pouvait pas faire son travail et continuait à dire

Could not open a connection to your authentication agent.

J'ai créé mes clés publique et privée ssh dans le dossier /home/myUsername/ et j'ai utilisé

ssh-agent /bin/sh

alors j'ai couru

ssh-add /home/myUsername/.ssh/id_rsa

et le problème a été résolu de cette façon.

Remarque: Pour accéder à votre référentiel sur git, ajoutez votre mot de passe git lors de la création de clés ssh avec ssh-keygen -t rsa -C "your git email here".

4
Merka

J'ai eu un problème similaire lorsque j'essayais de faire en sorte que cela fonctionne sous Windows pour se connecter à stash via ssh

Voici la solution qui a fonctionné pour moi.

  1. Il s’avère que j’utilisais l’agent Pageant ssh sur ma machine Windows - je vérifiais ce que vous exécutiez. Je soupçonne que c'est Pageant car il vient par défaut avec PuTTY et WinScp

  2. Ssh-add ne fonctionne pas en ligne de commande avec ce type d'agent

  3. Vous devez ajouter la clé privée via la fenêtre de l'interface utilisateur de pageant que vous pouvez obtenir en double-cliquant sur l'icône Pageant dans la barre des tâches (une fois celle-ci démarrée).

  4. Avant d'ajouter la clé à Pageant, vous devez la convertir au format PPK. Les instructions complètes sont disponibles ici Comment convertir une clé SSH au format ppk

  5. C'est ça. Une fois que j'ai téléchargé ma clé sur stash, j'ai pu utiliser SourceTree pour créer un dépôt local et cloner la télécommande.

J'espère que cela t'aides...

4
Moonwalker

Pour bash intégré à Windows 10, j'ai ajouté ceci à .bash_profile:

if [ -z $SSH_AUTH_SOCK ]; then
    if [ -r ~/.ssh/env ]; then
            source ~/.ssh/env
            if [ `ps -p $SSH_AGENT_PID | wc -l` = 1 ]; then
                    rm ~/.ssh/env
                    unset SSH_AUTH_SOCK
            fi
    fi
fi

if [ -z $SSH_AUTH_SOCK ]; then
    ssh-agent -s | sed 's/^echo/#echo/'> ~/.ssh/env
    chmod 600 ~/.ssh/env
    source ~/.ssh/env > /dev/null 2>&1
fi
3
Kip

Cela travaillé pour moi.

Dans la fenêtre CMD, tapez la commande suivante:

cd path-to-Git/bin # (for example,cd C:\Program Files\Git\bin)
bash
exec ssh-agent bash
ssh-add path/to/.ssh/id_rsa
3
kecco

J'ai résolu l'erreur en arrêtant (tué) les processus git (agent ssh), puis en désinstallant Git, puis en réinstallant Git.

3
Devendra Singh

Si vous utilisez PuTTY, vous devez peut-être définir l'option "Connexion/SSH/Auth/Autoriser le transfert d'agent" sur "true".

enter image description here

3
Vladius

En utilisant Git Bash sur Win8.1E, ma résolution était la suivante:

eval $(ssh-agent) > /dev/null
ssh-add ~/.ssh/id_rsa
2
SrBlanco

Pour PowerShell sous Windows

J'avais des problèmes avec PoSH et les commandes Start-SshAgent/Add-SshKey, alors j'ai préparé un script rapide qui pourrait aider certaines personnes. Ceci est destiné à être ajouté à votre profil PowerShell que vous pouvez modifier en exécutant notepad $PROFILE

if ($(Get-Process ssh-agent) -eq $null)
{
    $ExecutionContext.InvokeCommand.ExpandString($(ssh-agent -c).Replace("setenv", "set"));
}

Il détectera si le ssh-agent est en cours d'exécution et ne s'exécutera que si aucun agent n'est en cours d'exécution. Veuillez noter que $ExecutionContext.InvokeCommand.ExpandString est une commande assez dangereuse. Par conséquent, vous ne voudrez peut-être pas utiliser cette solution si vous utilisez une copie non fiable de ssh-agent.

2
Jonathan DeMarks

Vérifiez également votre URL à distance. utilisez git @ github ... au lieu de https: // proptocol

voir https://stackoverflow.com/a/33928364/551811

2
BraveNewMath

Pour les utilisateurs de fenêtres, j'ai trouvé que cmd "eval ssh-agent -s" ne fonctionnait pas, mais l'utilisation de git bash fonctionnait comme un traitement "eval ssh-agent -s; ssh-add KEY_LOCATION" et en s'assurant que le service Windows "clé OpenSSH Management "n'a pas été désactivé

1
aqm

Voici la solution que j'ai trouvée en utilisant PowerShell.

Ajoutez la fonction ci-dessous à votre Microsoft.PowerShell_profile.ps1

function RunSsh($userIdentity ) {
   $agent=ssh-agent
   $position=$agent[0].IndexOf("=")
   $ending=$agent[0].IndexOf(";")

   $variableStartPosition=$agent[0].IndexOf("export")
   $variableEndPosition=$agent[0].LastIndexOf(";")
   $variableName=$agent[0].Substring($variableStartPosition+7,$variableEndPosition-$variableStartPosition-7)
   [Environment]::SetEnvironmentVariable($variableName, $agent[0].Substring($position+1,$ending-$position-1))

   $position=$agent[1].IndexOf("=")
   $ending=$agent[1].IndexOf(";")

   $variableStartPosition=$agent[1].IndexOf("export")
   $variableEndPosition=$agent[1].LastIndexOf(";")
   $variableName=$agent[1].Substring($variableStartPosition+7,$variableEndPosition-$variableStartPosition-7)
   [Environment]::SetEnvironmentVariable($variableName, $agent[1].Substring($position+1,$ending-$position-1))

   if($userIdentity.Length -eq 0) {
      ssh-add
   } else {
      ssh-add $userIdentity
   }
}

Maintenant, à partir de la ligne de commande, vous pouvez exécuter RunSsh qui utilise un fichier d’identité dans le dossier ~\.ssh ou transmettre le fichier d’identité avec RunSsh C:\ssh\id_rsa, où C:\ssh\id_rsa est votre fichier d’identité.

Pour que cela fonctionne, vous devez avoir ssh-add et ssh-agent dans votre variable d'environnement path.

1
null_pointer

Même si je devenais "Impossible d'ouvrir une connexion à votre agent d'authentification." lors de l’exécution de la commande lors de la génération et de l’ajout de la clé SSH: ssh-add ~/.ssh/id_rsa. Je l'ai résolu en arrêtant plusieurs instances ssh-agent s'exécutant sur ma machine, puis j'ai désinstallé Git à partir du panneau de configuration de ma machine Windows, puis à nouveau installé Git et tout fonctionnait maintenant.

0
Devendra Singh

Dans mon cas, mon pare-feu Comodo avait mis en sandbox l'agent ssh. Une fois que j'ai désactivé le sandboxing, j'ai pu cloner le référentiel.

Pour votre information, j'utilise le pare-feu Comodo sous Windows 7.

0
neoramos