hadoop单机搭建无法免密码登录的问题

    最近在学习hadoop,在单机搭建伪分布模式的时候设置免密码登录总是失败,对照书上和网上的教程研究了好久也没解决。

最终在某dn网站上发现的一位大神留下的经验解决了我的问题。

    之前大多数教程都忽略了两个点,第一个点是在按部就班将公钥添加至authorized_keys文件中前忘记将authrized_keys的权限改为600(仅拥有者可读写)及将.ssh文件夹的权限改为700(仅拥有者可读写执行),这是导致登录时仍需输入密码的第一个原因。

    第二个则是可能随着版本的不同,ssh的默认配置也发生了变化,我所下载的ssh的默认配置中是不允许免密码登陆的,因此需要修改/etc/ssh/sshd_config的配置文件。这两个是出现免密码登录失败的主要原因,解决方式如下(只是已经验证可用的解决方法之一):

    1.在生成密钥时选择生成RSA密钥,文件名跳过则默认为id_rsa。

        ssh-keygen -t rsa

    2.检查ssh的配置文件是否允许免密码登录。

        vim /etc/ssh/sshd_config

        检查一下这些语句是否被注释掉,如果被注释掉则取消注释(如果没有就手动添加)

        RSAAuthentication  yes

        PubkeyAuthentication yes

        AuthorizedKeysFile  .ssh/authorized_keys

        PasswordAuthentication yes

        PermitEmptyPasswords yes

    3.在使用cat或scp命令前修改.ssh和authorized_keys的权限

        sudo chmod 700 ~/.ssh

        sudo chmod 600 ~/.ssh/authrized_keys

除此以外则是正常的按教程走即可,此方法已亲测可用。


参考书目 《Hadoop实战》(第二版)陆嘉恒

参考资料 https://blog.csdn.net/baidu_34660375/article/details/81285160

                https://blog.csdn.net/u013197629/article/details/73608613

你可能感兴趣的:(hadoop单机搭建无法免密码登录的问题)