服务器A:192.168.1.210
服务器B:192.168.1.211
假设我要从服务器A ssh 连接服务器B
首先要理解两个概念:密钥和公钥
密钥相当于一把钥匙,而公钥就相当于一把门锁,我们当然是拿着钥匙去开锁,同样的道理,我们密钥放在本地服务器,也就是服务器A,把公钥放在远程服务器,也就是服务器B,那么我们就可以从服务器A ssh 免密码登陆服务器B,至于这对密钥和公钥是在哪台机器上生成的都不重要。
我们在服务器A上生成密钥对
ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码) |
后面的rsa是加密方式,也可以换成你喜欢的加密方式
然后就是把门锁(公钥)放在B服务器上,并且改名为:authorized_keys
这里要注意,你生成的密钥是什么用户,就应该放在该用户的主目录下的.ssh目录里面,也可以是服务器A和服务器B是分别两个不同的用户,都可以。
现在我们就可以从服务器A上ssh登陆服务器B
如果SSH连接缓慢可按以下方式设置:
到远程服务器上,修改 /etc/ssh/sshd_config 文件,设置 GSSAPIAuthentication no ,同时设置 UseDNS no,问题解决。
如果出现按上面的方法操作以后SSH连接提示输入密码可按以下方式检查:
SSH登陆涉及两个目录的权限,分别是home和.ssh
home目录权限要求是700或者755,不能设成777、700
.ssh目录权限设成700
本文转自运维笔记博客51CTO博客,原文链接http://blog.51cto.com/lihuipeng/565215如需转载请自行联系原作者
lihuipeng