How to forward local keypair in a SSH session?
我通过ssh手动部署网站,在github/bitback中管理源代码。对于每个新站点,我当前都在服务器上生成一个新的密钥对,并将其添加到github/bitback中,这样我就可以从服务器上获得机会。
我在Capistrano中遇到了一个使用本地机器的密钥对将更新拉到服务器的特性,即
我该如何做这样的事情,并将本地机器的密钥对转发到我要ssh访问的服务器,这样我就可以避免为每个新站点向github/bitback添加密钥。
这是一个非常简单、完整的使用ssh转发的指南。
本质上,如果不存在,您需要创建一个
然后,添加主机(文件中的域名或IP地址,并设置
样例代码:
1 2 | Host example.com ForwardAgent yes |
让ssh的生活更轻松。
填写(主机地址是要允许将凭据转发到的主机的地址):
1 2 | Host [host address] ForwardAgent yes |
如果尚未运行ssh代理,请运行它:
1 | ssh-agent |
从该命令中获取输出并将其粘贴到终端中。这将设置代理转发工作所需设置的环境变量。或者,您可以将此和步骤3替换为:
1 | eval"$(ssh-agent)" |
添加要转发到ssh代理的密钥:
1 | ssh-add [path to key if there is one]/[key_name].pem |
登录远程主机:
1 | ssh -A [user]@[hostname] |
从这里,如果您登录到另一个接受该密钥的主机,它将只起作用:
1 | ssh [user]@[hostname] |
配置文件非常有用,但是代理转发的技巧是执行