在添加本机的public key到远程服务器之后,理论上如果ssh的配置文件没有问题并且网络和端口是通的,就可以无密码登陆到远程服务器,然而如果不能登陆,则可能是如下两个原因:
远程服务器的$HOME/.ssh目录权限必须是700,$HOME/.ssh/authorized_keys的权限必须是600,本机的$HOME/.ssh/id_rsa或者$HOME/.ssh/id_dsa文件的权限必须是600。这种问题修改文件和目录的权限即可解决。
本机的$HOME/.ssh/known_hosts文件里面已经存在远程服务器的RSA指纹,但是保存这个指纹之后远程服务器的RSA指纹改变了(可能是后来又重装过系统,但是远程服务器重新生成key和换IP等不会导致这个问题,至于RSA指纹是由什么决定的有待继续研究)。这种问题只要将本机的$HOME/.ssh/known_hosts里面的对应的远程服务器的那个旧的条目删除,然后重新连接就好了。
本文出自 “trikker” 博客,谢绝转载!
配置ssh public key登陆时遇到的两个问题,布布扣,bubuko.com
原文:http://trikker.blog.51cto.com/7478890/1543049