SSH免密码失败原因定位分析
1、SSH服务端权限问题
a) SSH服务端上~/.ssh
目录的权限必须是700
b) SSH服务端上.~/.ssh/authorized_keys
文件权限必须是600或者644
c) SSH服务端上用户家目录文件权限必须是700或750或755,775和777权限 ssh免密将失效
权限问题可以通过下面方法 3 进行缓解,但不建议,有安全隐患。
原因
sshd为了安全,对属主的目录和文件权限有所要求。如果权限不对,则ssh的免密码登陆不生效。
2、 关闭SELinux
SSH服务端上SELinux关闭为disabled,可以使用命令修改setenforce 0 ,查看状态的命令为getenforce或者 查看/etc/selinux/config 文件中是否是disabled
3、StrictModes问题
有可能是StrictModes
问题
编辑 vi /etc/ssh/sshd_config
找到#StrictModes yes
改成StrictModes no
4、PubkeyAuthentication问题
有可能是PubkeyAuthentication
问题
编辑 vi /etc/ssh/sshd_config
找到PubkeyAuthentication
改成yes
如果还不行,可以在SSH client server上用ssh -vvv SSH Server的ip 查看详情,根据输出内容具体问题具体分析了
永远年轻,永远热泪盈眶