CentOS7 三节点ssh免密码登录

在此附上Xshell7连接虚拟机教程

超详细Xshell7免费版安装与连接虚拟机教程

正文开始

在Xshell上连接上我们已经建立好的虚拟机
所有的虚拟机上(node1,node2,node3)都需要配置hosts 执行vi /etc/hosts命令

vi /etc/hosts

进入后按 a键 进入可编辑状态
注意:这里添加的各个节点的IP地址是你自己配置的IP地址,不要盲目抄我的
在末尾添加如下内容:

192.168.152.12  node1
192.168.152.13  node2
192.168.152.14  node3

添加好后按 esc键 退出编辑状态,执行 :wq! 命令强制保存并退出

:wq!

在这里插入图片描述
在这里插入图片描述

②为了方便区分每台主机,将每台主机得主机名修改一下。
在node1节点上执行
hostnamectl set-hostname node1(你要起的主机名,在这里第一台主机名我起的是node1)

hostnamectl set-hostname 你要起的主机名字

起好名字之后用 hostname命令查看,即可看到主机名已经改为node1
在这里插入图片描述

在node2节点上执行
hostnamectl set-hostname node2(你要起的主机名,在这里第二台主机名我起的是node2)

hostnamectl set-hostname 你要起的主机名字

起好名字之后用 hostname命令查看,即可看到主机名已经改为node2
在这里插入图片描述

在node3节点上执行
hostnamectl set-hostname node3(你要起的主机名,在这里第三台主机名我起的是node3)

hostnamectl set-hostname 你要起的主机名字

起好名字之后用 hostname命令查看,即可看到主机名已经改为node3
在这里插入图片描述

③查看服务器的域名映射是否添加成功,可以使用cat /etc/hosts命令查看。(记得三台都要看哦!)
在这里插入图片描述

关闭各个服务器节点(node1,node2,node3)的防火墙。
执行systemctl stop firewalld.service命令

systemctl stop firewalld.service

查看防火墙当前状态: 执行firewall-cmd --state命令

firewall-cmd --state

禁止他们的防火墙开机启动 执行systemctl disable firewalld.service命令

systemctl disable firewalld.service

在这里插入图片描述

⑤安装ssh服务 执行yum -y install openssh-clients命令(只在node1安装

yum -y install openssh-clients

在这里插入图片描述

⑥生成服务器密钥(后面是连按三次回车,三台机器均需要操作)在node1,node2和node3上生成密钥文件,包括公钥和私钥。
在==三台节点(node1,node2,node3)==上
执行ssh-keygen -t dsa -P ‘’ -f ~/.ssh/id_dsa命令

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

在这里插入图片描述

⑦配置公钥到authorized_keys文件
在node1节点上: 需要将本机的公钥追加到authorized_keys文件中,这样允许本机通过ssh的形式将公钥id_dsa.pub写入到authorized_keys文件
进入到.ssh文件目录下: 执行cd ~/.ssh命令

cd ~/.ssh

在这里插入图片描述

执行cat id_dsa.pub >> authorized_keys命令(将node1的公钥放到authorized_keys中)

cat id_dsa.pub >> authorized_keys

在这里插入图片描述

在node2节点上: 将公钥id_dsa.pub写入到authorized_keys1文件
进入到.ssh文件目录下: 执行cd ~/.ssh命令

cd ~/.ssh

执行cat id_dsa.pub >> authorized_keys1命令(将node2的公钥放到authorized_keys1中)

cat id_dsa.pub >> authorized_keys1

在这里插入图片描述

将authorized_keys1文件拷贝到node1节点中去:
执行scp authorized_keys1 [email protected]:~/.ssh/ 命令

scp authorized_keys1 [email protected]:~/.ssh/ 

(注意,192.168.152.12是我本人设置的我的node1的ip地址)
在这里插入图片描述

在node3节点上: 将公钥id_dsa.pub写入到authorized_keys2文件
进入到.ssh文件目录下: 执行cd ~/.ssh命令

cd ~/.ssh

执行cat id_dsa.pub >> authorized_keys2命令(将node3的公钥放到authorized_keys2中)

cat id_dsa.pub >> authorized_keys2

在这里插入图片描述

将authorized_keys2文件拷贝到node1节点中去:
执行scp authorized_keys2 [email protected]:~/.ssh/ 命令

scp authorized_keys2 [email protected]:~/.ssh/

(注意,192.168.152.12是我本人设置的我的node1的ip地址)
在这里插入图片描述

切换到node1节点
将node2和node3的authorized_keys1,authorized_keys2写入到node1的authorized_keys文件中
在node1节点上执行cat authorized_keys1 >> authorized_keys命令

cat authorized_keys1 >> authorized_keys

在node1节点上执行cat authorized_keys2 >> authorized_keys命令

cat authorized_keys2 >> authorized_keys

在这里插入图片描述

查看node1的 authorized_keys文件内容: 执行cat authorized_keys命令

cat authorized_keys

在这里插入图片描述

⑨将authorized_keys文件拷贝到node2,node3节点的/root/.ssh/目录下。
在node1节点上执行scp authorized_keys [email protected]:~/.ssh/ 命令

scp authorized_keys [email protected]:~/.ssh/ 

在node1节点上执行scp authorized_keys [email protected]:~/.ssh/ 命令

scp authorized_keys [email protected]:~/.ssh/

(注意,192.168.152.13和192.168.152.14是我本人设置的我的node2和node3的ip地址)
在这里插入图片描述

⑩测试免密码登录
在node1节点上:
免密码登录node2节点: 执行ssh node2命令
登出node2: 执行exit命令
免密码登录node3节点: 执行ssh node3命令
登出node3: 执行exit命令
在这里插入图片描述
在这里插入图片描述

在node2节点上:
免密码登录node1节点: 执行ssh node1命令
登出node1: 执行exit命令
免密码登录node3节点: 执行ssh node3命令
登出node3: 执行exit命令
在这里插入图片描述
在这里插入图片描述

在node3节点上:
免密码登录node1节点: 执行ssh node1命令
登出node1: 执行exit命令
免密码登录node2节点: 执行ssh node2命令
登出node2: 执行exit命令
在这里插入图片描述
在这里插入图片描述

至此设置免密登陆成功!

猜你喜欢

转载自blog.csdn.net/qq_45344586/article/details/129537097
今日推荐