配置ssh无密码登录

来源:互联网 发布:淘宝银饰店哪家是正品 编辑:程序博客网 时间:2024/04/30 11:35

场景:
现在有4台机器,分别是

masternode1node2node3

现在需要配置从master无密码ssh登录到node1,node2,node3。
(这里有root用户为例,有些系统可能默认不支持root用户ssh登录,需要改改ssh配置文件)

1、生成key

在所有机器上生成key:

 ssh-keygen

2、复制key

登录到master,切换到家目录下的.ssh目录下,将公有钥写到authorized_keys文件,如下:

[root@master .ssh]# cat id_rsa.pub >> authorized_keys

然后将文件authorized_keys复制到其他各个节点,如node1,node2,node3。
使用scp复制:

[root@master .ssh]# scp authorized_keys node1:/root/.ssh/[root@master .ssh]# scp authorized_keys node2:/root/.ssh/[root@master .ssh]# scp authorized_keys node3:/root/.ssh/

在输完scp命令之后,需要输入密码,输入远程机器的密码就好。
如果复制的时候,遇到以下问题:

scp: /root/.ssh/: Is a directory

很可能是远程机器上没有这个目录,有可能是刚才忘记在这台机器上做ssh-keygen命令。解决方法就是ssh登录到这台机器,然后执行ssh-keygen命令。

3、测试连接

输入ssh node1命令,登录node1节点,此时,无需输入密码,如下:

[root@master .ssh]# ssh node1Last login: Fri Nov 11 13:10:39 2016 from 172.16.41.53[root@node1 ~]# 

参考:
[1] http://docs.hortonworks.com/HDPDocuments/Ambari-2.4.1.0/bk_ambari-installation/content/set_up_password-less_ssh.html

0 0