直接的方式来运行ssh-agent和ssh-addlogin通过SSH?

我试图通过sshlogin到我的服务器时自动执行以下命令:

ssh-agent /bin/bash ssh-add ~/.ssh/id_rsa 

我的SSH密钥有一个密码,我很好,每logininput一次。

我试图把这个在我的.bashrc文件,但是我相信,ssh代理启动一个新的bash会话。 当我在.bashrc中尝试login后,它会卡住,我必须键入'exit',然后看到'input密码解锁'提示符

还有其他build议吗?

服务器运行Ubuntu LTS

尝试添加这个:

 eval `ssh-agent -s` ssh-add ~/.ssh/id_rsa 

通过这种方式,ssh-agent不会启动一个新的shell,它只是在后台启动,并吐出shell命令来设置适当的环境variables。

正如在评论中所说,也许你不想在远程主机上运行代理,而是在你正在使用的方框上运行代理,并使用

 ssh -A remote-host 

将本地ssh代理的服务转发到远程主机。

出于安全原因,您应该只使用由值得信赖的人员运行的主机进行代理转发,但是它比随时远程运行一个完整的代理更好。