zoukankan      html  css  js  c++  java
  • 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日志文件,找原因。

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

  • 相关阅读:
    IntellJ IDEA 使用技巧之组件窗口设置
    记springboot + MP +Hikari动态数据源配置
    manjaro升级后_sogou输入法异常
    python_mysql库安装问题
    通讯录制作(.csv文件转.vcf文件即vcard格式)
    win10_bat _运行python程序
    yield()返回参数函数使用
    python交换两个整型数据的数值
    Mongodb 4.0+安装
    C# winform 记住密码实现代码
  • 原文地址:https://www.cnblogs.com/nucdy/p/5664840.html
Copyright © 2011-2022 走看看