linux服务器间ssh免密登录

简介: linux服务器间ssh免密登录

一、背景概述:


linux系统中密码的保存是非常重要的,在企业中的WEB集群环境中,进行统一的版本更新和配置文件的同步免密登录是非常重要的。在自动化运维,统一管理都是离不开Linux的免密登录。


二、实验环境:


角色

主机名

IP地址

系统

服务器

sr-1

192.168.10.110

CentOS 7.6

客户机

sr-2

192.168.10.120

CentOS 7.6


三、准备工作(两台都需要):


1.首先关闭Selinux,这里有临时关闭和永久关闭两种方式

临时方式:


getenforce

setenforce 0

getenforce

640.png


永久方式:

vim /etc/sysconfig/selinux

然后将SELINUX=enforcing 改为 SELINUX=disabled

重启服务:

reboot

640.png

2.关闭防火墙(两台都需要):

systemctl stop firewalld

640.png


3.修改两个系统的主机名:

一个修改为sr-1 :

640.png

另一个修改为sr-2 :

640.png

然后立即生效:

bash


640.png

640.png

4. 配置 hosts 文件(两台机器都执行,完成后保存退出):

vim /etc/hosts

640.png


四、实现免密登陆


未配置公私钥对时,客户机 A 通过 SSH 登陆时,登陆提示需要密码。


1.生成密钥


为了免密,一路回车,生成 SSH 要用的公私钥对,此步骤在客户机 执行。根据提示,生成出来的公私钥文件位于 ~/.ssh 目录下,其中 id_rsa 为私钥, id_rsa.pub 为公钥。

640.png

执行上面的命令时,我们直接按三次回车,之后会在用户的根目录下生成一个 .ssh 的文件夹,我们进入该文件夹下面并查看有哪些内容。

640.png


我们看到有三个文件,下面分别解释下每个文件是干什么用的。id_rsa: 生成的私钥文件id_rsa.pub: 生成的公钥文件known_hosts: 已知的主机公钥清单


2、远程密钥登录


这里介绍最常用的三种方式,一是通过 ssh-copy-id 命令,二是通过 scp 命令,三是手工复制。


方式一:


通过 ssh-copy-id 命令设置。最后一个参数是我们要免密钥登录的服务器 ip 地址。

ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.10.110

640.png


方式二:

通过 scp 命令直接将该文件远程复制过去,使用这种方式需要注意,如果你之前已经配置了其它服务器上的密钥,这是使用这种方法,就会覆盖掉你原来的密钥,这时候是不建议使用这种方式的,如果你是先将该文件复制到服务器上的一个目录下,然后在使用追加的方式,将密钥追加到 authorized_keys 也是完全 OK 的。如果你只有两台服务器也是可以直接复制到文件。


scp -p ~/.ssh/id_rsa.pub root@:/root/.ssh/authorized_keys

640.png

方式三:


通过手工复制。将本地 id_rsa.pub 文件的内容拷贝至远程服务器的 ~/.ssh/authorized_keys 文件中也完全可以的。先使用 cat 命令查看当前的公钥,然后复制,在到目标服务器上去粘贴。

640.png

以上步骤,我们就完成了免密钥登录,下面我们来进行验证。

640.png

640.png

到此,我们的 ssh 免密钥登录就大功告成。谢谢观看,再见!

相关文章
|
14天前
|
消息中间件 安全 Unix
SSH配置多台服务器之间的免密登陆以及登陆别名
SSH配置多台服务器之间的免密登陆以及登陆别名
26 1
|
1月前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 显示当前登录到系统的用户信息 who命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前登录到系统的用户信息 who命令 使用指南
43 1
|
1月前
|
Unix Shell Linux
【Shell 命令集合 系统管理 】Linux 显示当前登录用户的登录名 logname命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前登录用户的登录名 logname命令 使用指南
28 0
|
17天前
|
Linux 网络安全
linux免密登录报错 Bad owner or permissions on /etc/ssh/ssh_config.d/05-redhat.conf
linux免密登录报错 Bad owner or permissions on /etc/ssh/ssh_config.d/05-redhat.conf
25 1
|
3天前
|
监控 安全 Linux
Linux系统之安装ServerBee服务器监控工具
【4月更文挑战第22天】Linux系统之安装ServerBee服务器监控工具
41 2
|
7天前
|
网络协议 安全 Linux
IDEA通过内网穿透实现固定公网地址远程SSH连接本地Linux服务器
IDEA通过内网穿透实现固定公网地址远程SSH连接本地Linux服务器
|
17天前
|
Linux 网络安全 数据安全/隐私保护
linux免密登录最简单--图文详解
linux免密登录最简单--图文详解
20 2
|
25天前
|
Ubuntu Linux 虚拟化
【Linux】ubuntu安装samba服务器
【Linux】ubuntu安装samba服务器
|
1月前
|
存储 Shell Linux
【Shell 命令集合 系统管理 】Linux 显示当前登录用户的用户 whoami命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前登录用户的用户 whoami命令 使用指南
49 1
|
1月前
|
存储 安全 Unix
【Shell 命令集合 系统管理 】Linux 显示当前系统上已登录用户的信息 rwho命令 使用指南
【Shell 命令集合 系统管理 】Linux 显示当前系统上已登录用户的信息 rwho命令 使用指南
33 0
【Shell 命令集合 系统管理 】Linux 显示当前系统上已登录用户的信息 rwho命令 使用指南