SSH Agent Forwarding on server

gitsshssh-agent

I'm struggling with the concept of SSH Agent Forwarding.
This is what I've done so far:

  1. Create default identity local (ssh-keygen)
  2. Install the public key on bitbucket

Now I want to connect to a server like ssh myserver@myserver.be .

Then I would normally create a key on the server with ssh-keygen and again, copy the public key and add it to my bitbucket SSH keys. after that I can clone my SSH repository and pull/push to the bitbucket repository. But that is not the way to do it.

How can I make sure I don't have to create a key on my server? I've read many tutorials like this but I'm still struggling with the ssh agent forwarding.

UPDATE:

I've tried to do this tutorial but I'm already stuck at step 1. They say you need to add the following text to your config file (located at ~/.ssh/config):

Host example.com
 ForwardAgent yes

My config file looks like this before the first step:

Host bitbucket.org
 IdentityFile ~/.ssh/id_rsa

After the step it looks like this:

Host bitbucket.org
 IdentityFile ~/.ssh/id_rsa

Host mysite.be
 ForwardAgent yes

To try if it works you need to execute the following command on your server:

ssh -T git@bitbucket.org

Tried this but I'm getting the error Permission denied (publickey). on my server.

Best Answer

It looks like you may not have actually added the key to the agent..

If your local workstation is Linux then there's likely an agent running as part of your session you can examine it's contents with ssh-add -l

If the key hasn't been added to the agent you can also add it with ssh-add

After that when you ssh to mysite.be you should be able to see the key fingerprint listed when you run ssh-add -l

Related Question