Linux 远程登陆服务 -- Openssh服务部署及安全优化

实验环境:

两台虚拟机 :

服务器端:192.168.122.11& 客户端:192.168.122.111

删除 /root/.ssh/ ,保持实验环境纯净

配置虚拟机环境,为了方便操作对虚拟机进行改名操作,和配置连接。

Linux 远程登陆服务 -- Openssh服务部署及安全优化

1. Openssh介绍

OpenSSH 是 SSH (Secure SHell远程连接) 协议的免费开源软件 。
软件安装名称——Openssh-server
配置文件——/etc/ssh/sshd_conf
默认端口——22(接口是用来区分Ip地址开启的不同)
客户端命令——ssh

rpm -qa | grep epenssh 查看系统中是否装有openssh-server

2. ssh命令的用法  

参数 解释
ssh 用户名@ip 连接指定登录用户
ssh -l 连接指定登录用户
ssh -i 指定密钥
ssh -X 开启图形

ssh -p 指定端口
ssh -f 后台运行
ssh -o 指定连接参数
ssh -t 指定连接跳板

基本用法:ssh -l root xxx.xxx.xxx.xxx

当输入<yes>后,客户端会向服务器发送身份公钥,并保存此公钥到~/.ssh/know_hosts,服务器持有私钥,当客户主机再次连接时会对客户主机进行身份验证。

Linux 远程登陆服务 -- Openssh服务部署及安全优化

如果删除服务器已生成的密钥文件,重启sshd服务,服务器会生成新的密钥文件,此时身份验证改变,在客户端再次登陆时服务器会拒绝连接 

Linux 远程登陆服务 -- Openssh服务部署及安全优化

Linux 远程登陆服务 -- Openssh服务部署及安全优化

 当连接因为认证问题被拒绝时解决方案:
vim ~/.ssh/know_hosts :在此文件中删除报错提示相应的行即可

Linux 远程登陆服务 -- Openssh服务部署及安全优化

3. Openssh服务的key认证

3.1 Openssh的认证方式 

 对称加密:

加密和解密是同一串字符

容易泄漏 、可暴力破解 、容易遗忘

 非对称加密:

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

3.2 ssh key认证生成非对称加密密钥

 1、生成密钥   ssh-keygen    |  ssh-keygen -f /root/.ssh/id_rsa -P ""

2、  将公钥传输给服务器端:ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.122.11

3、客户端可以直接登陆服务器端

 1、

Linux 远程登陆服务 -- Openssh服务部署及安全优化

 2、

Linux 远程登陆服务 -- Openssh服务部署及安全优化

 3、

Linux 远程登陆服务 -- Openssh服务部署及安全优化

注意: 密钥的生成地无所谓。

3.3sshd安全优化参数详解

 在进行sshd安全优化参数设置前,首先要执行这两条命令:
setenforce 0:关闭内核加强级防火墙
systemctl disable --now firewalld:关闭系统防火墙

1、关闭原始认证

vim /etc/ssh/sshd_config

73 行 yes|no

Linux 远程登陆服务 -- Openssh服务部署及安全优化

Linux 远程登陆服务 -- Openssh服务部署及安全优化

 测试结果:

Linux 远程登陆服务 -- Openssh服务部署及安全优化

 2 改端口

17行 port XXX
直接登陆不成功,必须指定端口,ssh -l westos 172.25.254.113  -p xxx

Linux 远程登陆服务 -- Openssh服务部署及安全优化

 测试结果:

Linux 远程登陆服务 -- Openssh服务部署及安全优化

3. 黑白名单:

 AllowUsers user1 user2 ..   白名单(允许登陆的用户)
 DenyUsers   user1 user2 ..   黑名单(不允许登陆的用户)

Linux 远程登陆服务 -- Openssh服务部署及安全优化

Linux 远程登陆服务 -- Openssh服务部署及安全优化

上一篇:ansible与windows主机交互


下一篇:[LOJ#2324]「清华集训 2017」小Y和二叉树