redhat6.2下的ssh密钥免密码登录(原创)

这个是我自己写的,鼓励转载,请说明转载地址:http://www.cnblogs.com/nucdy/p/5664840.html 

在进行hadoop的免密码的登录操作是,老是发生no route等错误,这个源于是查了一下午,原因是ssh免密码没有做好

下面我说一下我这个是如何做到免密码的问题

在master 的 hadoop用户下:

ssh-keygen -t rsa

连续敲3个回车,会出现一个带有框框的图画

自后:cd .ssh

cp id_rsa.pub authorized_keys

完成后,

切换到其他datanode 节点host6上

cat ~/.ssh/id_*.pub | ssh  hadoop@host2 'cat >> .ssh/host6'

其中:host6是你起得文件名字

在切换到一个节点(host8)上,执行同样的命令

cat ~/.ssh/id_*.pub | ssh  hadoop@host2 'cat >> .ssh/host6'

 

这样就讲host6和host8上的公钥给传到的了master(host2)上了,看结果

而后在maste上(我的是host2)执行:

 cat host8 >>authorized_keys

 cat host6 >>authorized_keys

 

这样将host6和host8的公钥追加给了authorized_keys 

在其后,执行

ssh-copy-id  -i  .ssh/id_rsa.pub  hadoop@host6

ssh-copy-id  -i  .ssh/id_rsa.pub  hadoop@host8

 

 

 

这样就实现了host2、host6、host8的直接的免密码登录

 

注意:

     A. 从客户机拷贝过来的 id_rsa.pub 在服务机上其实就是各临时文件,所以名字随便起,如果有多个客户机,那可以后面加序号区别,不过也不用这么麻烦,因为按照上面的命令操作完后就可以删掉它了。

     B. authorized_keys 这个名字不能改,我试过了,服务机只认这个名字的文件,所以加入有10个客户机,你就得把这10个客户机的密钥文件都输入到这个文件里,所以这里必须用 >> ,而不能用 >

      C.文件夹“.ssh”中的三个文件的权限,是有要求的,“自己之外的任何人对每个文件都没有写权限”。另外,“.ssh”文件夹是-rw-r--r--.权限。如果权限有问题,会造成SSH访问失败

 注意:使用命令ssh时,一定要观察主机名的变化。很多同学在操作ssh时,由于大量的使用ssh登录退出,忘记自己目前在哪台机器了,执行了大量错误的操作。

        另外,如果多次执行ssh,每次都要输入确认信息的话,说明配置失败了。可以删除文件夹“.ssh”,重新配置。也可以重启虚拟机再配置。只要严格按照上面的步骤操作,保证能够成功的。

        如果还搞不定,给你个绝招” 删除/etc/udev/rules.d/70-persistent-net.rules文件,重启系统”。

        配置出错,可以查看/var/log/secure日志文件,找原因。

  希望对你开发环境搭建有帮助,我的就是按照上面完成的。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值