以前一直使用GSTM管理翻墙的SSH连接,因为比较简单好用,可是当升到GNOME3之后,GSTM一直没有更新,于是选择使用了autossh。
autossh 其实就是在ssh的基础上增加了自动重连的功能,它基本适用各种ssh的参数(除了-f被autossh用作后台运行,并不会传送给 ssh)。但是当autossh 使用-f参数在后台运行时,有个缺点是无法输入密码,而且并没有像plink一样提供-pw参数,所以ssh在-f参数下无法连接至服务器。
这就需要让ssh通过证书免密码登录了。
在本地终端执行ssh-keygen指令,生成rsa密钥和公钥。
1 | [red@blade ~]$ ssh-keygen |
将生成的rsa公钥上传给服务器
1 | [red@blade ~]$ ssh-copy-id -i ~/.ssh/id_rsa.pub user@server |
通过ssh登录服务器,在服务器上修改/etc/ssh/sshd_config文件,取消以下2行的注释
1 2 | #PubkeyAuthentication yes #AuthorizedKeysFile .ssh/authorized_keys |
最后在服务器上重启ssh服务
1 | [red@bass ~]$ sudo service ssh restart |
之后就可以通过autossh自动后台登录ssh并实现自动重连了
1 | [red@blade ~]$ autossh -f -ND 7070 user@server |
可以将命令保存成脚本,那样就更加方便了。
posted on 2011-09-20 11:44
Prog 阅读(1655)
评论(0) 编辑 收藏 引用 网摘 所属分类:
System