linux—多服务免密登录

文档结构

概念简介

配置操作

场景:在部署gp集群时,希望 master 节点可以使用gpadmin用户可以实现免密登录 slave1和 slave2 节点;

step_1: IP映射

复制代码
xx.xx.xx.101  server-slave1
xx.xx.xx.102  server-slave2

说明:

1)需要在 master 服务器的 /etc/hosts 下添加 slave1 和 slave2 的IP以及hostname的映射关系;

2)这里不进行IP和hostname映射也可以,这样后面的免密登陆只能通过 ssh xx.xx.xx.101 的指定IP的形式来登录,而不能通过 ssh server-slave1的形式来登录;因为 在 master 节点上无法解析 server-slave1 对应的 IP地址;

step_2:生成秘钥

要实现 master 到 slave1 和 slave2节点的免密登录,需要将 master 节点的 gpadmin用户的公钥发送到 slave1 和 slave2节点上;

在master、slave1、slave2 三台服务器使用 gpadmin 用户分别执行如下操作

复制代码
[gpadmin@gp-master ~]$ ssh-keygen -t rsa -b 4096

在家目录下会生成一个 .ssh 文件夹,里边如下:

bash 复制代码
[gpadmin@gp-master ~]$ pwd
/home/gpadmin
[gpadmin@gp-master ~]$ 
[gpadmin@gp-master ~]$ ll ~/.ssh/
total 8
-rw------- 1 gpadmin gpadmin 3243 Jan 10 15:55 id_rsa
-rw-r--r-- 1 gpadmin gpadmin  777 Jan 10 15:55 id_rsa.pub
[gpadmin@gp-master ~]$

step_3:公钥互信

将 master 的公钥发送给 slave1 和 slave2两个节点,这里有两种操作,一种是通过 ssh-copy-id 指令,一种是通过 scp指令;

方式1:

bash 复制代码
[gpadmin@gp-master ~]$ scp ~/.ssh/id_rsa.pub gpadmin@xx.xx.xx.101:~/.ssh/authorized_keys

使用这种方式需要显式指定发送的文件在 slave 服务器的 .ssh文件夹下新名称为authorized_keys

方式2:

bash 复制代码
[gpadmin@gp-master ~]$ ssh-copy-id -i  ~/.ssh/id_rsa.pub gpadmin@xx.xx.xx.101

使用这种方式会自动在 slave 服务器的 .ssh文件夹下生成一个 authorized_keys 鉴权文件;

以上2种方式都需要在 输入 slave节点的 gpadmin密码;

step_4:免密验证

bash 复制代码
[gpadmin@gp-master ~]$ 
[gpadmin@gp-master ~]$ ssh xx.xx.xx.101
[gpadmin@gp-master ~]$ 
[gpadmin@gp-master ~]$ ssh gp-slave1

以上两种指令都可以;

================================================= over =================================================

相关推荐
木心月转码ing19 小时前
WSL+Cpp开发环境配置
linux
崔小汤呀2 天前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应2 天前
vi编辑器使用
linux·后端·操作系统
何中应2 天前
Linux进程无法被kill
linux·后端·操作系统
何中应2 天前
rm-rf /命令操作介绍
linux·后端·操作系统
何中应2 天前
Linux常用命令
linux·操作系统
葛立国2 天前
从 / 和 /dev 说起:Linux 文件系统与挂载点一文理清
linux
哇哈哈20213 天前
信号量和信号
linux·c++
不是二师兄的八戒3 天前
Linux服务器挂载OSS存储的完整实践指南
linux·运维·服务器
一个人旅程~3 天前
如何用命令行把win10/win11设置为长期暂停更新?
linux·windows·经验分享·电脑