SSH互信配置过程

背景:前两天一套oracle RAC集群出问题,需要重新建库,dbca建库过程提示无法创建数据库,经排查原因为ssh互信配置失效,需重新配置。

配置过程如下:

1.在两台机器上生成认证文件,这里有个细节,就是ssh互信的认证文件,需要放在用户的home目录下的.ssh目录中,因此我们要首先建立这个目录,并且保证这个目录的权限是755

一节点操作:

[oracle@mysql01 ~]$ mkdir .ssh
[oracle@mysql01 ~]$ chmod 755 .ssh
[oracle@mysql01 ~]$ /usr/bin/ssh-keygen -t rsa
[oracle@mysql01 ~]$ /usr/bin/ssh-keygen -t dsa

二节点做同样的操作:

[oracle@mysql02 ~]$ mkdir .ssh
[oracle@mysql02 ~]$ chmod 755 .ssh
[oracle@mysql02 ~]$ /usr/bin/ssh-keygen -t rsa
[oracle@mysql02 ~]$ /usr/bin/ssh-keygen -t dsa

2.将所有的key文件汇总到一个总的认证文件中:

[oracle@mysql01 ~]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
[oracle@mysql01 ~]$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
[oracle@mysql01 ~]$ ssh oracle@mysql02 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
[oracle@mysql01 ~]$ ssh oracle@mysql02 cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

3.经过1,2两步,目前mysql01上存在一份完整的认证key文件,这时候,把它拷到mysql02主机的对应目录下:

[oracle@mysql01 ~]$ scp ~/.ssh/authorized_keys mysql02:~/.ssh/

配置完成!

========================================================

上面的操作太复杂,而且按照上面的方法配置三个及以上的服务器互信之后,实际上是有问题的。
既简单又有效的配置方法如下:

例如在四台服务器server1,server2,server3,server4上为hadoop用户配置互信。

第一步:登录hadoop用户,执行如下命令生成公钥:

[hadoop@server1 ~]$ ssh-keygen -t rsa   #下面一直按回车就好

第二步:用ssh-copy-id 把公钥复制到各个主机上(包括自己):

[hadoop@server1 ~]$ ssh-copy-id -i  .ssh/id_rsa.pub hadoop@server1
[hadoop@server1 ~]$ ssh-copy-id -i  .ssh/id_rsa.pub hadoop@server2
[hadoop@server1 ~]$ ssh-copy-id -i  .ssh/id_rsa.pub hadoop@server3
[hadoop@server1 ~]$ ssh-copy-id -i  .ssh/id_rsa.pub hadoop@server4

第三步:在其他server上执行上面两步的命令。

至此,ssh互信配置完成。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值