集群间多台机器SSH免密码登录(两种方法实现)

来源:互联网 发布:数据库命令导入dmp文件 编辑:程序博客网 时间:2024/06/05 09:18

SSH为SecureShell,即安全外壳协议

比如针对三个节点,我们通常需要配置hosts以便后期统一管理:

vim /etc/hosts

添加如下:


这里,我将主节点的域名叫做master,而从节点1为slave1,从节点2为slave2.

注意:修改hosts中,是立即生效的,无需source或者. 。

方法一:

1、生成公钥和私钥

在主节点中,执行:

ssh-keygen -trsa

然后,不断的按回车键。

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

chmod 600 ~/.ssh/authorized_keys

2、将公钥复制到其他从机

scp ~/.ssh/authorized_keys root@slave1:~/.ssh/

scp ~/.ssh/authorized_keys root@slave2:~/.ssh/

上面两个步骤,首次需要输入root用户登录slave1的密码,以及root用户登录slave2的密码。

注意:上述的操作过程只是单向的,即此时,ssh root@slave1和ssh root@slave2是不需要密码的。而ssh root@master等反向仍然是需要密码的。

方法二:

同理,

1、也要先生成公钥和私钥,输入命令:ssh-keygen -t rsa


2、执行ssh-copy-id

ssh-copy-id -i ~/.ssh/id_rsa.pub root@master

上面命令的功能ssh-copy-id将pub值写入远程机器的~/.ssh/authorized_key中。


原创粉丝点击