本篇blog将讲述sshd服务提供的两种安全验证的方法,并且通过这两种方法进行两台Linux虚拟机之间的远程登陆。

准备工作:

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

(1)     准备两台安装有Linux系统的虚拟机,虚拟机软件采用VMware;

(2)     将两台虚拟机设置在同一网段下,互相之间可以ping通,可以采用nmtui命令进行设置;

(3)     在两台虚拟机上安装sshd服务,我这里采用本地yum仓库进行安装,步骤如下:

第一步:执行yum install sshd*

第二步:启动sshd服务,命令:systemctl start sshd

第三步:查看是否有22号端口,命令:netstat -an|more,截图如下

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第1张

 

 

 

至此,准备工作完毕,

开始介绍之前,首先说明本篇blog用到的虚拟机、yum本地仓库名称和IP地址如下:

主机名

IP

hbza

192.168.0.100

hbza-brother

192.168.0.111

yum

192.168.0.10

第一种方法:

基于口令的安全验证:经过验证帐号与密码即可登陆到远程主机。

这种方法比较简单,我们将hbza作为服务端,hbza-brother作为客户端,我们在客户端利用ssh服务程序远程连接服务端。

在hbza-brother上打开终端,直接执行命令:ssh 192.168.0.100

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第2张

 

 

 

稍等片刻,出现如下界面我们输入hbza的密码

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第3张

 

 

 

接下来出现如下界面,代表我们远程登陆成功,我们可以对hbza进行一系列操作。例如:文件的创建、修改。

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第4张

 

 

 

执行exit命令进行登出,进行下面的实验。

 

第二种方法(难点):基于密钥的安全验证:需要在本地生成”密钥对“后将公钥传送至服务端,进行公共密钥的比较。

第一步:在本地主机hbza-brother上生成“密钥对”,命令:ssh-keygen

注意:

Enter file in which to save the key (/root/.ssh/id_rsa):在此处回车或设置密钥的存储路径

Enter passphrase (empty for no passphrase): 在此处回车或设置密钥的密码

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第5张

第二步:将生成的密钥传送到远程主机hbza中,命令:ssh-copy-id 192.168.0.100

出现如下界面,第二个红框处输入远程主机hbza密码。

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第6张

稍等片刻,出现如下界面说明传送成功

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第7张

 

 

 

第三步:在远程主机hbza中修改sshd配置文件,命令:vi /etc/ssh/sshd_config

文件的存储位置:/etc/ssh/sshd_config

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第8张

 

 

 

打开配置文件后,

(1)     将允许密码验证的参数设置为no

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第9张

 

 

(2)     将允许密钥验证的参数设置为yes

 远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第10张

 

 

(3)     保存退出

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第11张

 

 

第四步:重启ssh服务程序后生效

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第12张

 

 

第五步:尝试无需密码的远程登陆

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第13张

 

 

出现如下页面我们显示登陆成功。

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接 Linux 第14张

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄