欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

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

程序员文章站 2022-07-05 11:53:10
本篇blog将讲述sshd服务提供的两种安全验证的方法,并且通过这两种方法进行两台Linux虚拟机之间的远程登陆。 准备工作: (1) 准备两台安装有Linux系统的虚拟机,虚拟机软件采用VMware; (2) 将两台虚拟机设置在同一网段下,互相之间可以ping通,可以采用nmtui命令进行设置; ......

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

准备工作:

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

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

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

第一步:执行yum install sshd*

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

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

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

 

 

 

至此,准备工作完毕,

开始介绍之前,首先说明本篇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环境下客户端与服务端的远程连接

 

 

 

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

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

 

 

 

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

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

 

 

 

执行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环境下客户端与服务端的远程连接

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

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

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

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

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

 

 

 

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

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

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

 

 

 

打开配置文件后,

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

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

 

 

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

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

 

 

(3)     保存退出

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

 

 

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

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

 

 

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

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

 

 

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

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