【linux基础8】sshd的简介及环境搭建(在服务器对访问用户进行加密功能)

一.Openssh的功能

一、基本信息

1、sshd服务的用途

作用:可以实现通过网络在远程主机中开启安全shell的操作
Secure SHell   ===>ssh                                ##客户端叫ssh
Secure SHell  daemon ===>sshd                         ##服务端sshd

2、安装包
openssh-server

3、主配置文件地址
/etc/ssh/sshd_conf

4、默认端口

22

5、客户端命令
ssh

二.ssh

一、实验环境搭建

开启两台虚拟机

一台主机名为ck1          172.25.42.1 -->客户端(连接别人)
一台主机名为ck2          172.25.42.2 -->服务端(别别人连接)

二、ssh连接

1、删除ck1和ck2主机的公钥和私钥的文件,便于观察实验效果

rm -fr /root/.ssh

2、ck1主机对ck2进行连接

[root@ck1 ~] ssh -l root 172.25.42.2

在这里插入图片描述
登陆成功
3、在ck1主机里有ck2主机发过来的公钥,可以在ck1文件里查看到公钥
在这里插入图片描述
4、此时ck2主机持有私密钥匙,每次面对ck1的连接时都会对ck1主机的连接进行身份验证
5、当删除ck2主机的密钥文件后,再用ck1主机连接会出现私钥和公钥不匹配的情况。
ck2主机删除密钥文件
在这里插入图片描述
ck1主机连接时发现问题
在这里插入图片描述

6、在ck1主机中删除报错提示的内容
在这里插入图片描述
7、再次重新建立连接即可
在这里插入图片描述

三、ssh 常用参数

-l指定登陆用户
-i指定私钥
-X开启图形
-f后台运行
-o指定连接参数,ssh -l root@172.25.254.x -o “StrictHostKeyChecking=no” 首次连接不许要输入yes
-t指定连接跳板ssh -l root 172.25.254.1 -t ssh -l root 172.25.254.105

三.sshd key认证

一、认证类型

二、对称加密

加密和解密是同一串字符
容易泄漏
可暴力破解
容易遗忘

三、非对称加密

加密用公钥,解密用私钥
不会被盗用
攻击者无法通过无密钥方式登陆服务器

四、生成非对称加密密钥并进行加密连接

1、在ck2主机生成非对称密钥对
在这里插入图片描述
2、用生成密钥文件里面的公钥给ck2主机的root用户加密
在这里插入图片描述
3、可以在/root/.ssh文件里看到认证的密钥
在这里插入图片描述
authorized_keys是存放公钥的地址,类似于上锁的地址
known_hosts是机器本身ssh服务自带的记录ip等登陆信息的文件

4、可以观察到公钥加密就是把公钥id_rsa.pub的2文件内容放在用户/.ssh/authorized_keys的文件里
在这里插入图片描述
5、修改服务器的连接方式进行设置
虽然已经加密了,但客户端还可以通过原有的ssh对称密钥认证方式进行认证。因此为了看到我们操作的效果,需要在服务器端修改sshd服务的配置文件,关闭原来的PasswordAuthentication认证方式(注意:每次对sshd服务的配置文件进行修改后,必须要重启sshd服务才能使修改生效)

[root@ck2 .ssh] vim /etc/ssh/sshd_config           图1、修改服务器的ssh认证文件
[root@ck2 .ssh] systemctl restart sshd             重启ssh服务

在这里插入图片描述
6、此时用ck1主机去连接ck2主机发现连接失败(达到效果)
在这里插入图片描述
7、将ck2主机生成的私钥匙发送到ck1存放私钥的地址

[root@ck2 .ssh] scp /root/.ssh/id_rsa root@172.25.42.1:/root/.ssh/id_rsa

在这里插入图片描述
在ck1主机里查看到私钥
在这里插入图片描述
8、ck1主机再次连接尝试ck2,发现成功
用第一步设置非对称加密钥匙时设置的密码进行连接即可
如果之前设置密码为空,那么此时直接连接,不需要密码
在这里插入图片描述

四.sshd 安全优化参数详解

1、ck2关闭系统防护,便于测试

setenforce 0        关闭加强级防火墙
systemctl disable --now firewalld 关闭防火墙

2、访问端口设置配置
ck2设定新端口为2222

[root@ck2 .ssh]# vim /etc/ssh/sshd_config 
[root@ck2 .ssh]# systemctl restart sshd

在这里插入图片描述
发现直接连接不行、必须 +p 加端口号

[root@ck1 ~] ssh -l root 172.25.42.2 -p 2222

在这里插入图片描述
3、PermitRootLogin yes|no #对超级用户登陆是否禁止
修改配置文件,将之前的端口改回原始的,并禁止超级用户登陆

[root@ck2 .ssh] vim /etc/ssh/sshd_config 
[root@ck2 .ssh] systemctl restart sshd

在这里插入图片描述
ck1登陆时发现失败
在这里插入图片描述
4、PasswordAuthentication yes|no #是否开启原始密码认证方式

[root@ck2 .ssh] vim /etc/ssh/sshd_config 
[root@ck2 .ssh] systemctl restart sshd

在这里插入图片描述
5、AllowUsers #用户白名单
在这里插入图片描述
在白名单里面的用户westos可以实现登陆,不在白名单里面的用户westos2登陆被拒绝
在这里插入图片描述

6、DenyUsers #用户黑名单

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值