Search code examples
sshssh-keys

How to forward local keypair in a SSH session?


I manually deploy websites through SSH, I manage source code in github/bitbucket. For every new site I'm currently generating a new keypair on the server and adding it to github/bitbucket, so that I can pull changes from server.

I came across a feature in capistrano to use local machine's key pair for pulling updates to server, which is ssh_options[:forward_agent] = true

How can I do something like this and forward my local machine's keypair to the server I'm SSH-ing into, so that I can avoid adding keys into github/bitbucket for every new site.


Solution

  • This turned out to be very simple, complete guide is here Using SSH Forwarding

    In essence, you need to create a ~/.ssh/config file, if it doesn't exist.

    Then, add the hosts (either domain name or IP address in the file and set ForwardAgent yes)

    Sample Code:

    Host example.com
        ForwardAgent yes
    

    Makes SSH life a lot easier.