ssh配置无密码登录,免密钥登录

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ssh配置无密码登录,免密钥登录相关的知识,希望对你有一定的参考价值。

前提,机器A,B,均为RedHat Linux操作系统,均有用户user

1、以用户名user登录,在A机器上执行

ssh-keygen -t rsa

一路回车,不需要输入密码

执行该操作将在/home/user/.ssh下生成id_rsa, id_rsa.pub文件,其中id_rsa.pub是公钥。

2、在B机器上做步骤1或自行创建/home/user/.ssh文件夹,注意文件夹权限设置为700,将id_rsa.pub拷贝到B机器上

scp id_rsa.pub B:~/.ssh/A.id_rsa.pub

3、将拷贝到B机器上的A.id_rsa.pub复制到authorized_keys文件中

cp  A.id_rsa.pub authorized_keys 

cat A.id_rsa.pub > authorized_keys

若有多个主机要访问,使用>>添加到authorized_keys文件中


最精彩部分:

A将公钥发给B,不是说让B来访问A,而是A就可以访问B了。太霸道了!也就是说B不能在.ssh文件夹下的authorized_keys保留A的公钥,如保存就是把自己让给别人来访问!

如果这个理解反了,那就会总是不成功!


参考:


  • hadoop安装配置之ssh无密码登陆

     

    os:redhat 6

     

    hadoop 两个节点,一个master 一个slave

     

    192.168.0.1  master

     

    192.168.0.2. slave

     

    1.修改每台机器的/etc/hosts,增加

     

    192.168.0.1  master

     

    192.168.0.2. slave

     

    2.在每台机器上创建用户hadoop

     

    useradd hadoop

     

    passwd hadoop

     

    给hadoop用户添加权限,打开/etc/sudoers文件:

     

    在root ALL=(ALL)       ALL         

    后面添加hadoop ALL=(ALL)       ALL     

     

    后面都以hadoop用户来操作

     

    3.在所有机器的/home/hadoop/目录下建立 .ssh文件夹

     

    mkdir /home/hadoop

     

    4.在master机器上生成密钥对

     

    ssh-keygen -t rsa (注意:ssh与-keygen之间没有空格)    

    一路回车即可。

     

    转到.ssh目录 cd ~/.ssh 可以看到生成了id_rsa,和id_rsa.pub两个文件

     

    5.执行 cp id_rsa.pub authorized_keys

     

    6.把Master上面的authorized_keys文件复制到Slave机器的/home/hadoop/.ssh/文件下面

     

    scp authorized_keys slave:~/.ssh

     

    7.修改修改.ssh目录的权限以及authorized_keys 的权限(这个必须修改,要不然还是需要密码)

     

    sudo chmod 644 ~/.ssh/authorized_keys

     

    sudo chmod 700 ~/.ssh

     

    正常情况下,到这个地方就可以SSH无密码登录了

     

    输入ssh slave 进行测试。


本文出自 “爱生活的小白” 博客,请务必保留此出处http://sf1314.blog.51cto.com/13295031/1981297

以上是关于ssh配置无密码登录,免密钥登录的主要内容,如果未能解决你的问题,请参考以下文章

Hadoop集群配置免密SSH登录方法

Linux免SSH密码登录

linux下怎样设置ssh无密码登录

如何在linux中如何配置ssh免密码登录

如何在linux中如何配置ssh免密码登录

Hadoop集群配置免密登录方法