如何避免总是不得不使用`eval 'ssh-agent -s'`

hor*_*01d 6 bash ssh sshd ssh-agent

我想不通,为什么每次我SSH回到我的服务器我总是要开始我的SSH代理使用以下命令eval 'ssh-agent -s',然后ssh-add <my_key.pem>才能从我的服务器成功的ssh。我已经把它放在了我的 .bashrc 中,但显然我错过了一些东西并且不想每次登录时都必须初始化它。

Jak*_*uje 1

ForwardAgent我相信,从您的工作站获取信息比在某些服务器上拥有一些密钥并在每次登录时通过代理重新初始化进行操作更安全和有用。

您可以简单地添加到~/.ssh/config适当的主机(或使用-Aswitch tossh命令):

ForwardAgent yes
Run Code Online (Sandbox Code Playgroud)

将本地密钥添加到您的本地代理中,您不必关心您是在本地还是远程使用它。


您也没有提到它是否是受密码保护的密钥,但我认为不是,如果您将其放入.bashrc. 更简单的方法是指定服务器上的密钥路径~/.ssh/config(如果您想将其放在服务器上),如下所示:

IdentityFile <my_key.pem>
Run Code Online (Sandbox Code Playgroud)

再次针对特定主机或全局。