复习之linux中的远程登陆服务

一、实验环境配置

本次实验需要两台新的虚拟机,因此我们reset虚拟机aa 和 bb

  • 修改虚拟机的主机名
  • 配置基础ip网络
  • 删除/root/.ssh/目录------恢复原始状态

1. 重置虚拟机aa,bb

#  westos-vmctl   reset   aa

复习之linux中的远程登陆服务_第1张图片

2. 修改虚拟机的主机名

# hostnamectl set-hostname bbbbbb.westos.org  (bb虚拟机)

复习之linux中的远程登陆服务_第2张图片

# hostnamectl  set-hostname  aaaaaaaa.westos.org(aa虚拟机)

 

 3. 配置ip

aa虚拟机:172.25.254.100

复习之linux中的远程登陆服务_第3张图片

bb虚拟机:172.25.254.200

 复习之linux中的远程登陆服务_第4张图片

设置完ip记得reload+up !!

4. 删除/root/.ssh/目录

在虚拟机aa,bb上删除/root/.ssh/目录,方便做实验!

# rm   -fr   /root/.ssh/

复习之linux中的远程登陆服务_第5张图片

 配置成功后,将虚拟机转换为无图形界面!ps:init  5 可换为有图形界面!

#  init  3

复习之linux中的远程登陆服务_第6张图片

5. 真机ssh虚拟机

在真机上远程连接虚拟机aa,bb

复习之linux中的远程登陆服务_第7张图片

 二、sshd服务的基本信息

1.作用

ssh通过网络远程连接主机!

client ----客户端,执行ssh操作的主机

server-----服务端,被连接的主机端

2. 安装包

# dnf search ssh :查找ssh的安装包:openssh-server.x86_64

复习之linux中的远程登陆服务_第8张图片

 系统默认安装并开启sshd服务

复习之linux中的远程登陆服务_第9张图片

 3.主配置文件

# rpm -qc openssh-server.x86_64   :  /etc/ssh/sshd_config

复习之linux中的远程登陆服务_第10张图片

4. 默认端口

# netstat -antupe | grep ssh :查看ssh服务的默认端口 :默认为22端口

复习之linux中的远程登陆服务_第11张图片

 三、ssh命令的常用参数

将aa虚拟机作为服务端,bb虚拟机作为客户端进行实验。

1. 第一次ssh连接

# ssh -l root 172.25.254.100:第一次ssh连接会出现认证!

复习之linux中的远程登陆服务_第12张图片

 认证成功后即使不登陆,也会有密匙出现!

在客户端进入/root/.ssh/目录即可看到密匙。

复习之linux中的远程登陆服务_第13张图片

 接着进入服务端的目录/etc/ssh/ 也可查看密钥,该密钥与上完全一致,否则无法连接!!

复习之linux中的远程登陆服务_第14张图片

 2. ssh连接出现warning警告

当ssh 连接出现warning警告时,原因是密钥不匹配!

解决方法:按照提示删除文件的指定行即可!

 --------------------------------------------------------------实验------------------------------------------

服务端aa 删除 rm -fr ssh_host_* 文件!注意不要直接删除*

删除后重新启动sshd服务,密钥就会更改!

复习之linux中的远程登陆服务_第15张图片

 此时密钥与客户端bb的不一致,在客户端bb上连接aa时,会出现!!

复习之linux中的远程登陆服务_第16张图片

 解决方法很简单,按照提示,删除文件的第一行即可!删除后再次连接,就像第一次连接一样。

复习之linux中的远程登陆服务_第17张图片

3. 其他常用参数

  • -l  :指定登陆用户
  • -X :开启图形
  • -f :后台运行
  • -o :指定连接参数  ----【StrictHostKeyChecking=no ,首次连接不需要输入yes】
  • -t :指定连接跳板

--------------------------------------------------实验-------------------------------------------------

默认情况下,ssh为文本连接,无法打开图形

复习之linux中的远程登陆服务_第18张图片

 # ssh -X   -l  root 172.25.254.200  :-X -l顺序不能反,成功打开图形

复习之linux中的远程登陆服务_第19张图片

但是打开图形,占用了终端,因此可以利用-f  后台运行!

# ssh -X  -f  -l   root 172.25.254.200   gedit : 将gedit打入后台运行

复习之linux中的远程登陆服务_第20张图片

 清空bb虚拟机的/root/.ssh文件,再次连接aa就是第一次连接,需要输入yes!

复习之linux中的远程登陆服务_第21张图片

# ssh    -o  "StrictHostKeyChecking=no"   -l       root 172.25.254.100 : 首次连接不需要输入yes

复习之linux中的远程登陆服务_第22张图片

 # ssh  -l  root   172.25.254.73   -t   ssh   -l   root   172.25.254.100 : 通过73主机连接100主机

复习之linux中的远程登陆服务_第23张图片

 在aa虚拟机:100上查看,其实是73连接的100

复习之linux中的远程登陆服务_第24张图片

 四、为服务器添加key认证

以上ssh认证方式是用户密码登陆,还有一张认证方式是key认证!

1. 生成加密密钥

(1)交互式方法

在客户端bb虚拟机生加密密钥

#   ssh-keygen : 生成非对称加密密钥,一直回车即可!

复习之linux中的远程登陆服务_第25张图片

 (2)非交互式方法

首先删除/root/.ssh/id_*,重新生成密钥!

# ssh-keygen   -f    /root/.ssh/id_rsa    -P   "" :-f 指定文件,-P:密码为空 ,直接用钥匙开门,不用额外输入密码!

复习之linux中的远程登陆服务_第26张图片

2. 对服务器进行加密

在客户端bb上对服务器aa进行加密

# ssh-copy-id    -i    /root/.ssh/id_rsa.pub    [email protected] : 对服务器进行加密!

复习之linux中的远程登陆服务_第27张图片 此时进入服务器aa查看:/root/.ssh/目录发现生成了authorized_keys文件,该文件与客户端的/root/.ssh/id_rsa.pub文件一样!!

复习之linux中的远程登陆服务_第28张图片

 3. 客户端测试

# ssh   -i   /root/.ssh/id_rsa   -l     root    172.25.254.100 :ssh连接用户,不用密码直接连接

复习之linux中的远程登陆服务_第29张图片

 其他主机ssh连接服务端仍然要密码登陆,因为没有私钥!复习之linux中的远程登陆服务_第30张图片

五、sshd安全优化参数

sshd优化参数在服务端主配置文件:/etc/ssh/sshd_config  进行设置!

  • PasswordAuthentication yes|no :是否开启密码认证方式
  • Port 2222 :设定端口为2222
  • AllowUsers /  DenyUsers lee:黑白名单设置

-------------------------------------------------实验--------------------------------------------------------

1. 是否开启密码认证

默认情况下,密码认证自动开启!当真机ssh连接aa时,可以使用密码认证或者key认证。

复习之linux中的远程登陆服务_第31张图片

在服务端aa虚拟机,查询主配置文件:

复习之linux中的远程登陆服务_第32张图片

 進入該文件,關閉密碼認證方式!!

systemctl restart sshd :关闭后重启服务

复习之linux中的远程登陆服务_第33张图片

 在真机再次测试,发现无法通过密码认证方式连接aa

复习之linux中的远程登陆服务_第34张图片

 2. 设定端口

开始本次实验前,先关闭selinux和火墙!

# setenforce 0 :关闭selinux服务

# systemctl disable --now firewalld:关闭火墙

复习之linux中的远程登陆服务_第35张图片

修改端口为2222,修改成功后重启服务。

复习之linux中的远程登陆服务_第36张图片此时真机连接aa,显示连接失败!

#   ssh   -l   root   172.25.254.100   -p   2222:加上端口号成功!

复习之linux中的远程登陆服务_第37张图片

3. 黑名单/白名单设置

服务器设置黑名单!!

添加一行:DenyUsers root

ps:多个用户用空格间隔开!!

复习之linux中的远程登陆服务_第38张图片

 真机测试连接,root用户无法连接,westos用户可以连接!复习之linux中的远程登陆服务_第39张图片

服务器设置白名单!!

添加一行:AllowUsers root

复习之linux中的远程登陆服务_第40张图片

 在真机测试连接,只有root用户可以连接!!复习之linux中的远程登陆服务_第41张图片

ps:做完实验,恢复默认配置!!!

你可能感兴趣的:(linux,运维,服务器)