A painting of me

Could not open a connection to your authentication agent.

   28 August 2007, mid-morning

SSH private-keys are usually stored encrypted on the computers they are stored on. A pass-phrase is used to decrypt them when they are to be used. Since most people use SSH public-private key-pairs to get around typing in passwords all the time, the ssh-agent daemon exists to store decrypted private-keys you plan on using in a given session. The thing most people get tripped up on when using ssh-agent is that what the program outputs, some borne or csh shell commands, needs to be run. It may look like ssh-agent has set some variables for you, but it has in fact done no such thing. If you call ssh-add without processing ssh-agent’s output, it will complain it is unable to open a connection to your authentication agent. The most straightforward way to run ssh-agent on the command line is as follows: eval `ssh-agent`. After doing this, calls to ssh-add should succeed without error.

 

Comments

  1. Thank you for this tip, it saved my coffee-break time !

  2. You saved more than my coffee break! Thanks for the assistance!

  3. Hi,

    I have the ssh-agent running but I still get the error message that it is unable to open a connection to the authentication agent when I call “ssh-add”. Any idea if I’m missing some other step?

    Appreciate your help!

  4. Did you run it as specified above, by eval’ing the output? That’s really all you need to do. Otherwise just export the variables it spits out yourself.

  5. Thank you!

  6. Dear all,

    I am a newbie on Linux and I am facing a similar problem.

    I run eval ssh-agent on command line but I still can’t manage to open the connection. Is there something I am missing?
    Thanks is advance.

  7. That’s really all you should need to do. You can manually export the variables ssh-agent spits out (copy and paste them all to the comand line), but basically, that’s what eval is doing.

  8. thanks a lot

  9. You can also do the following :
    (dont forget to kill the old agent(s))
    The punctuation is important.
    This will read your agent setting into the shell :

    . .agentinfo

    And now starting the agent will continue without a problem.

    ssh-agent

    Make sure there is a space between the 2 dots. :/

  10. while executing ssh-add in windows xp command prompt it give “Could not open a connection to your authentication agent” could u pls help me to solve the problem

  11. Download putty and putty agent.

  12. Thanks A lot mate

  13. Had a problem: Could not open a connection to your authentication agent.

    Second hit on the google.

    Boooya here is the quick fix:
    eval `ssh-agent`

    You’re ace!

  14. Thanks .. was wondering why it was not working… saved my time

  15. Thanks for the post, was facing this issue myself.

    This happens specially when I try to log in as one account on my laptop, and then su – some_other_user, from where I try to do ssh-add.

    I was thinking if I have to run more ssh-agent etc, but the fix was much simpler.

    Guess its safe to put the eval in .bashrc.

  16. Thanks :)
    Saved my time!

  17. Hi, i also have the same problem. i’ve done eval ‘same-agent’, still the same. “Could not open a connection to your authentication agent”. Any ideas what else i could do? Thanks

  18. I think you are using the wrong quote, it is not ', it’s `, which is the quote string above the tab key on most keyboards.

  19. ssh-agent is running o.k.
    eval `ssh-agent` also giving output but still not able to add key
    any suggestion?

  20. Great!

  21. I am on Windows 7. Through MING32,I did

    eval `ssh-agent`

    followed by

    ssh-add

    It worked perfectly. But when I do something like

    git ssh://git-master:port/path

    I am getting an error:

    Permission denied(publickey)
    fatal: The remote end hung up unexpectedly

    Any idea guys??

  22. Is your public key on the authorized keys list on the remote server? It doesn’t sound like this is an issue with ssh-agent.

  23. Yes. The problem was with the user name in the config file. I had misspelled it. Now it works fine. My bad. Thanx.

  24. By the way does anybody have an idea , how to fetch the remote repository via Gitsharp? Gitsharp documentation is very bad.

  25. Thankyou so much my friend !!

  26. thanks man you save my day! :)

  27. I was able to get my ssh-add working after finding your thread and changing to:

    eval `ssh-agent`

    other posts suggested using exec which didn’t work for me.

    Thank you!

  28. hello sir,
    i am trying go do single sign on using ssh.
    but it is not working . configuration is as follows:
    user1:
    1)ssh-keygen
    2) scp id_rsa.pub user2@server1:/home/user2/.ssh/authorized_keys

    user2:
    1)eval ssh-agent
    2)ssh user1@server1

    but it is asking password every time.
    pls help me

  29. You need the back ticks around the ssh-agent call: eval `ssh-agent`.

  30. Cheers for that, got my automated backups working again… very helpful indeed.

  31. thnx that was very helpful
    especially the commant specifying that it was eval `ssh-agent`not ‘ssh-agent’.
    However i don’t seem to get the ssh-add to store my key permanently and i have to re ssh-add the key on every logon ,
    can it be fixed plz

  32. Nice! Was tripping up on the exact thing you specified…easy peasy, thanks!

  33. thank you very much it works perfectly!!!!

  34. Thanks ramanan, really useful tip, I would have been struggling with that for ages!

  35. This is probably by far my greatest contribution to the Internet.

  36. thank you so much..
    this blog save my day..

  37. ramanan opened my eyes. i was using the wrong quote’s . one should use ` and not ‘. wrote this again, if someone missed ramanan’s comment. Thanks so much.

  38. It worked for me.

  39. Great Man

  40. this tip is so great you need even more comments! Thx!

  41. You hit the nail right on the head — thanks for the tip!

  42. Thank you, your tip (using ` located above TAB key) worked for me.

  43. Thank you!, worked like a charm. saved me a lot of trouble.

  44. Just wanted to add to the list of thanks :)

    I appreciate the effort you put into this, thanks!

  45. Thanks, this helped me.

Don't be shy, you can comment too!

 
Some things to keep in mind: You can style comments using Textile. In particular, *text* will get turned into text and _text_ will get turned into text. You can post a link using the command "linktext":link, so something like "google":http://www.google.com will get turned in to google. I may erase off-topic comments, or edit poorly formatted comments; I do this very rarely.