linux下设置SSH无密码登陆

  • SSH配置

主机cloudgis22.edu.cn:192.168.3.21

主机cloudgis33.edu.cn:192.168.2.174

假设需要配置主机A无密码登录主机A,主机B,先确保所有主机的防火墙处于关闭状态。

在主机A上执行如下:

$ cd ~/.ssh

$ ssh-keygen -t rsa  

然后一直按回车键,就会按照默认的选项将生成的密钥保存在.ssh/id_rsa文件中。

$ cp id_rsa.pub authorized_keys 

 这步完成后,正常情况下就可以无密码登录本机了,即ssh localhost,无需输入密码。

$ scp authorized_keys cloudgis@192.168.3.21:/home/cloudgis/.ssh

将认证文件拷贝一份到主机B上.  

$ chmod 600 authorized_keys       

进入主机B的.ssh目录,改变authorized_keys文件的许可权限。

正常情况下上面几步执行完成后,从主机A所在机器向主机A、主机B所在机器发起ssh连接,只有在第一次登录时需要输入密码,以后则不需要。

  • 可能遇到的问题:

如果无任何错误提示,可以输密码登录,但就是不能无密码登录,在被连接的主机上(如A向B发起ssh连接,则在B上)执行以下几步:

$ chmod o-w ~/

$ chmod 700 ~/.ssh

$ chmod 600 ~/.ssh/authorized_keys

 

参考:http://www.cnblogs.com/jdksummer/articles/2521550.html

原文地址:https://www.cnblogs.com/maybob/p/3298903.html