多节点间ssh-无密钥链接配置

在前天晚上调试虚拟机冷迁移的时候,发现一直不成功,我就问了同事缘由。他跟我说其实迁移采用的就是scp的方式,而scp通常是须要输入对方的密钥,所以须要配置ssh。
昨天花了一天时间,在捣鼓这个配置,没配成功,感受本身弱爆了,昨天晚上突然想明白了点道理。。。。。。。。
我想实现的是非root用户下的ssh 免密码互联,因此网上教程也不少,结果都不行,想一想本身就只配了单向的,从A到B,而且将A生成的公钥私钥,一箩筐的.ssh目录下的都拷贝到其它机器下,发现很差使,缘由是公钥后面,记录了节点的hostname,我也真是人才啊!!!!!ssh-keygen,仍是值得信赖的,不是随便就能够冒充。。。。因此,今天正式以个人环境来做记录,四台节点,A,B,C,D,配置互相无密钥登录。
我当前全部机器的用户都是stack,先用stack用户登陆A,命令 ssh-keygen -t rsa ,会发现 A下生成了,id_rsa、 id_rsa.pub,A公钥私钥有了,而且使用命令 touch authorized_keys,若是这个文件有了,就无需执行此步。将公钥添加到 authorized_keys中,能够参考命令cat id_rsa.pub >> authorized_keys,将A的公钥分别拷贝到B、C、D中,同理,B、C、D节点中也应该有 authorized_keys,而且将A、B、C生成的公钥分别给其它节点。。。
可是在设置过程当中,遇到这样的问题,登录10.254.2.87,使用命令ssh 10.254.2.87,第一次会出现yes的选项,而后后面再登录本身,并不须要输入密码,而登录10.254.2.85,使用命令ssh 10.254.2.87,登录本身,会一直提示输入密码。。。。。这个问题,同样的设置,为何出错呢?
最终发现,每一个节点的公钥必须是本身原来的公钥。不然出错!!这步很重要,,,,我在拷贝过程当中,拷贝来拷贝去,结果乱了,因此折腾了这么久!!!!!!!!最后要修改authorized_keys权限,为600,即chmod 600 authorized_keys.
结果发现,原来我拷贝公钥的过程当中,都拷贝的是私钥!!!!!我怎么那么蠢呢~~~~记录一下此次经历吧!!!!web