在宝塔面板检测出服务器存在 57 个安全问题后,为保障系统安全,需对各类漏洞及配置缺陷进行修复,以下是详细操作步骤。
一、【CVE-2022-42919】Python 版本安全漏洞修复
问题成因
系统中 python3.10-3.10.4-3
版本低于安全版本 3.10.6-1~22.04.1
,存在安全风险。
修复步骤

- 查看系统与 Python 版本信息
- 执行
lsb_release -a
查看系统发行版本信息。 - 执行
python3.10 -V
查看 Python 3.10 当前版本。
- 执行
- 更新软件源
在终端执行sudo apt update
,更新系统软件源列表,获取最新软件包信息。 - 升级 Python 3.10
执行sudo apt upgrade python3.10
,系统提示升级相关软件包及依赖时,输入Y
并回车确认。 - 验证升级结果
升级完成后,再次执行python3.10 -V
,确认版本已更新至3.10.6~22.04.1
或更高版本。
二、【CVE-2023-0386】Linux 内核版本安全漏洞修复
问题成因
当前内核版本 5.15.0-30-generic
存在安全风险,需升级至 5.15.0-70
及以上版本。

修复步骤
1.确认当前内核版本
执行 uname -r
查看当前 Linux 内核版本。
2.查看并安装安全内核版本(Ubuntu 22.04 系统)
- 执行
apt install linux-image
查看可安装的内核版本号。
- 选择高于
5.15.0-70
的版本号(如假设为5.15.0-80
),执行sudo apt install linux-image-5.15.0-80
。
3.重启服务器
安装完成后,执行 sudo reboot
重启服务器使新内核生效。
三、SSH 相关安全配置优化
未使用安全套接字加密远程管理 SSH

1.执行 vim /etc/ssh/sshd_config
编辑配置文件,按 /Protocol 2
查找,若无相关设置,按下 i
键进入编辑模式,在文件末尾添加 Protocol 2
。
2.按下 Esc
键,输入 :wq
保存退出。
3.执行 systemctl restart sshd
重启进程使配置生效。
SSH 空闲超时时间检测

1.执行 vim /etc/ssh/sshd_config
编辑配置文件,将 ClientAliveInterval
设置为 600 到 900 之间(如改为 900)。
2.保存退出后,重启 sshd
服务(systemctl restart sshd
)。
SSH密码修改最小间隔

1.执行 vim /etc/login.defs
编辑文件,将 PASS_MIN_DAYS
改为大于等于 7。
2.保存退出。
禁用wheel组外的用户su切换为root用户
1.执行 vim /etc/pam.d/su
编辑文件,在末尾添加 auth required pam_wheel.so
。
2.保存退出。
SSH 登录超时配置

1.执行 vim /etc/ssh/sshd_config
编辑配置文件,找到 LoginGraceTime
配置项,去掉 #
注释符号,并设置为 60。
2.保存退出后,重启 sshd
服务。
四、命令行与系统安全配置
未配置命令行超时退出

1.执行 vim /etc/profile
编辑文件,在文件中添加 export tmout=300
(符合等保不大于 600 秒要求)。
2.执行 source /etc/profile
使配置生效。
检查重要文件 suid 和 sgid 权限
宝塔面板会显示存在问题的文件,对这些文件:
1.执行 chmod g-s 【文件名】
去除 sgid 权限。
2.执行 chmod u-s 【文件名】
去除 suid 权限。
检查 ls 和 rm 命令别名设置

1.执行 vim ~/.bashrc
编辑文件,添加或修改 alias ls='ls -alh'
以及 alias rm='rm -i'
。
2.执行 source ~/.bashrc
使配置生效。
开启 TCP – SYNcookie 保护

1.执行 vim /etc/sysctl.conf
编辑文件,添加 net.ipv4.tcp_syncookies=1
。
2.执行 sysctl -p
使配置生效。
限制核心转储
执行 sysctl -w fs.suid_dumpable=0
限制核心转储。
检查是否允许空密码 sudo 提权

1.打开 /etc/sudoers
或 /etc/sudoers.d
下的文件。
2.删除或注释包含 NOPASSWD
标记的行。