Openssh服务的部署及安全优化

实验环境:

本章节的学习我们一共会用到三台Linux虚拟机,用来进行远程连接测试,因此要确保三台虚拟机的IP地址在同一网段,彼此之间可以互相通信。
虚拟机的网络连接设置:具体方法点击这里

1. Openssh功能介绍

  • OpenSSH 是 SSH (Secure SHell) 协议的免费开源软件。SSH通过在网络中创建安全隧道来实现SSH客户端与服务器之间的连接,人们通常利用SSH来传输命令行界面和远程执行命令。
  • 软件安装名称: Openssh-server
  • 配置文件:/etc/ssh/sshd_config
  • 默认端口:22
  • 客户端命:ssh

2. ssh命令

2.1、命令的用法:

ssh remoteUSER@remoteIP
在这里插入图片描述

2.2、ssh的相关参数:
参数作用
-l指定登录用户
-i指定密钥
-X开启图形
-p指定端口
-f后台运行
-o指定连接参数
-t指定连接跳板

示例:
客户机A:192.168.110.128
客户机B:192.168.110.129
服务机:192.168.110.130
①:连接IP为192.168.110.130虚拟机的root用户,输入密码,登录成功
在这里插入图片描述
在服务机上运行w -i 命令,可以查看到客户机A远程连接了自己
在这里插入图片描述
执行exit,可退出登录
②:在客户机上远程连接服务机,执行vim命令
在这里插入图片描述
③:客户机A用客户机B作为跳板,连接服务机
在这里插入图片描述
在服务机上执行w -i命令,可以看到是客户机B连接了自己,而不是客户机A
在这里插入图片描述

3.Openssh服务的key认证

3.1、Openssh认证方式

1.密码认证

  • 至少6个字符
  • 包含数字,字母,下划线特殊符号等
  • 易泄漏
  • 可被暴力破解
  • 密码容易丢失

2.密钥认证

  • 新型认证方式,分为公钥及私钥
  • 公钥上传服务器
  • 私钥配对认证,不会被盗用
  • 攻击者一般无法通过密钥登录服务器

基于密钥的安全验证就是说,你必须为自己创建一对密匙,把公匙放在需要访问的服务器上。如果你要连接到SSH服务器上,客户端软件就会向服务器发出请求,请求用你的密匙进行安全验证。服务器收到请求之后,先在该服务器上你的主目录下寻找你的公匙,然后把它和你发送过来的公匙进行比较。如果两个密匙一致,服务器就用公用密匙加密“质询”(challenge)并把它发送给客户端软件。客户端软件收到“质询”之后就可以用你的私人密匙解密再把它发送给服务器

3.2、Openssh KEY

支持rsa及dsa加密
加密方法:

  • 生成密钥 ssh-keygen
  • 上传密钥 ssh-copy-id –i keyfile remoteUSER@remoteIP

示例:
客户机A: 192.168.110.128
客户机B: 192.168.110.130
服务机: 192.168.110.129
①:在客户机B上执行ssh-keygen生成密钥
在这里插入图片描述
②:通过原始认证方式,客户机B把生成的公钥上传给服务机在这里插入图片描述
此时,在服务机的/root/.ssh目录下自动生成了一个相应的已授权密钥文件,文件内容和客户机B的公钥文件内容一样
在这里插入图片描述
在这里插入图片描述
③:客户机B远程登录服务机,不需要输入密码
在这里插入图片描述
④:没有私钥的客户机A远程登录服务机,需要输入密码
在这里插入图片描述
⑤:为了防止暴力破解,修改服务机的配置文件,关闭密码认证,重启sshd服务
在这里插入图片描述
在这里插入图片描述
⑥:没有私钥的客户机A远程登录服务机,直接被拒绝
在这里插入图片描述
⑦:客户机A想要远程登录客户机B的话,需要客户机B把私钥文件传输给客户机A
在这里插入图片描述
此时,客户机A也可免密登录服务机
⑧:如果服务机不想要别人免密登录自己,可以通过删除或重命名authorized_keys文件,破坏掉已授权密钥文件

4.Openssh服务的安全优化

4.1、sshd服务常用相关配置参数

配置文件
• /etc/ssh/sshd_config
在这里插入图片描述
配置参数

参数解释
Port 22监听端口
Protocol 2指定协议版本
ListenAddress绑定IP
HostKey设定HostKey密钥路径
PermitRootLogin设定超级用户是否能登录
PubkeyAuthentication公钥认证开关
PasswordAuthentication密码认证开关
AllowUsers用户白名单
DenyUsers用户黑名单

示例:
服务机:IP =192.168.110.128
用户:student test
客户机:IP =192.168.110.129
示例①:在服务机上设定超级用户不能登录,修改配置文件后,reload一下sshd服务
在这里插入图片描述
在这里插入图片描述
在客户机远程登录服务机的root用户,被拒绝,登录失败
在这里插入图片描述
示例②:在服务机上添加用户黑名单,禁止登录test用户
在这里插入图片描述
在客户机登录test用户,登陆失败;可以成功登录student用户
在这里插入图片描述
示例③:将示例②中设置的黑名单注释掉,添加白名单用户,只允许登录test用户
在这里插入图片描述
在客户机尝试远程登录student用户,登录失败;可以成功登录test用户
在这里插入图片描述

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值