openEuler 操作系统安全加固实验
一. 文档概述
本文档基于 openEuler 官方安全基线规范,旨在修复系统默认安全风险、规避恶意攻击、提升系统机密性、完整性、可用性,适配等保2.0、企业服务器安全运维规范、日常安全合规自查。
二. 加固前置准备
2.1 实验环境
- 操作系统:openEuler 22.03 SP3
- 实验平台:天枢一体化虚拟仿真平台

2.2 系统信息核查
加固前先确认系统版本、内核、运行状态,确保加固适配性:
|
# 查看openEuler版本 |
2.3 配置备份
所有系统核心配置文件修改前,统一备份,备份文件保留修改时间戳,便于故障回滚:
- 本实验环境,有初始模版暂不需要进行备份操作,如中途有操作备份也可以使用平台的快照功能保存配置。
- 生产环境:加固前创建服务器快照/镜像,规避配置错误导致系统故障
- 确认加固窗口为业务低峰期,记录业务进程、端口、数据库状态,便于异常恢复
- 禁止业务高峰期执行内核参数、SSH、账号权限等核心加固操作
三. 账号与口令安全加固
3.1 清理无效账号
核查系统所有账号,删除闲置、无效、测试账号,锁定无用系统账号:
|
# 查看所有系统账号 |
加固标准:仅保留业务必需账号、root账号,无闲置、匿名、测试账号。
3.2 配置口令复杂度策略
通过 PAM 模块强制口令复杂度,杜绝弱口令,适配官方安全基线要求:
|
# 安装PAM口令校验组件(系统默认已安装,缺失则执行) |
添加/修改如下配置:
|
password required pam_pwquality.so retry=3 minlen=8 dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 enforce_for_root |
参数说明:
- minlen=8:口令最小长度8位
- dcredit=-1:至少包含1个数字
- ucredit=-1:至少包含1个大写字母
- lcredit=-1:至少包含1个小写字母
- ocredit=-1:至少包含1个特殊字符
- retry=3:输错3次退出修改
- enforce_for_root:root账号同样生效,不豁免
3.3 口令有效期与修改策略
修改登录配置文件,规范口令生命周期,避免长期不更换弱口令:
|
vi /etc/login.defs |
修改如下参数:
|
PASS_MAX_DAYS 90 # 口令最大有效期90天 |
3.4 登录失败锁定策略
防止暴力破解登录,配置登录失败锁定机制(openEuler 默认基础锁定,优化强化):
|
vi /etc/pam.d/sshd |
文件末尾添加:
|
# 连续输错3次锁定账号,锁定600秒 |
解锁账号命令:
|
pam_tally2 --reset -u 用户名 |
3.5 限制 su 权限
仅允许 root 及 wheel 组用户执行 su 切换权限,杜绝普通用户越权切换 root:
|
vi /etc/pam.d/su |
开启如下配置(取消注释):
|
auth required pam_wheel.so use_uid |
加固效果:非 wheel 组普通用户无法执行 su 切换 root 账号。
四. SSH 服务安全加固
SSH 为远程登录核心服务,是攻击高频入口,需全面加固,禁用弱算法、高危配置。
4.1 禁止 root 直接 SSH 登录
|
vi /etc/ssh/sshd_config |
修改参数:
|
PermitRootLogin no |
加固说明:禁止 root 账号远程直接登录,需通过普通用户登录后切换 root,降低爆破风险。
4.2 配置登录超时与最大会话数
|
vi /etc/ssh/sshd_config |
添加/修改如下参数:
|
# 客户端心跳检测,300秒无响应断开 |
同时配置全局字符界面超时,统一闲置退出规则:
|
echo "export TMOUT=300" >> /etc/profile |
4.3 禁用弱加密算法,启用强加密套件
禁用 CBC、MD5、SHA1 等不安全算法,仅保留高强度加密算法,适配 openEuler 官方安全配置:
|
vi /etc/ssh/sshd_config |
添加如下配置:
|
Ciphers aes128-ctr,aes192-ctr,aes256-ctr |
4.4 关闭 SSH 弱特性
|
vi /etc/ssh/sshd_config |
修改关闭高危配置:
|
# 禁止空密码登录 |
4.5 重启 SSH 服务生效
|
systemctl restart sshd |
注意:修改加密算法后,低版本 Xshell、PuTTY 可能无法登录,需使用 5.0 及以上版本客户端。
五. 内核参数安全加固
通过优化内核参数,防范端口扫描、SYN 洪水、ICMP 攻击、路由欺骗等网络攻击,提升系统网络安全防护能力。
5.1 统一加固配置
|
vi /etc/sysctl.conf |
清空原有冗余配置,添加如下标准加固参数:
|
# 关闭IP转发,防止路由劫持 |
5.2 生效配置并核查
|
# 生效所有内核参数 |
六. 文件系统与权限安全加固
6.1 配置默认 UMASK 权限
修改系统默认权限掩码,确保新建文件、目录权限最小化,防止权限过宽:
|
vi /etc/profile |
添加/修改:
|
umask 077 |
生效后新建文件默认权限600、目录默认权限700,仅属主可读写执行。
|
source /etc/profile |
6.2 关键文件权限锁定
系统核心配置文件仅允许 root 读写,禁止其他用户访问、修改:
|
# 关键权限加固 |
6.3 临时目录安全挂载加固
加固 /tmp、/var/tmp、/dev/shm 临时目录,禁止执行恶意程序、SUID 提权:
|
vi /etc/fstab |
添加如下挂载参数:
|
tmpfs /tmp tmpfs defaults,noexec,nosuid,nodev 0 0 |
重新挂载生效:
|
mount -o remount /tmp |
6.4 清理 SUID/SGID 高危权限文件
SUID/SGID 文件易被利用提权,清理无用高危权限文件:
|
# 查找所有SUID文件 |
七. 系统服务与开机自启加固
7.1 关闭无用高危服务
关闭系统默认闲置、高危服务,减少攻击面:
|
# 关闭打印、蓝牙、邮件等无用服务 |
7.2 管控定时任务权限
限制普通用户使用 crontab、at 任务,防止恶意定时任务植入:
|
# 仅允许root使用定时任务 |
八. 日志审计安全加固
8.1 开启系统完整审计日志
安装并启用 audit 审计服务,记录系统关键操作,满足合规追溯需求:
|
yum install audit audit-libs -y |
8.2 配置日志留存与轮转策略
|
vi /etc/audit/auditd.conf |
修改参数:
|
# 日志文件大小2048M |
8.3 加固系统日志权限
所有日志文件仅 root 可读写,防止普通用户篡改、删除日志:
|
chmod 600 /var/log/*.log |
openEuler 安全加固工具日志默认存储于 /var/log/openEuler-security.log,需定期巡检。
九. GRUB 引导加固
防止恶意人员修改系统引导参数、破解 root 密码、篡改启动项,openEuler 默认 GRUB 密码为 openEuler#12,必须修改。
9.1 生成加密 GRUB 密码
|
# 生成SHA-512加密密码 |
输入自定义密码,复制生成的加密密文。
9.2 配置 GRUB 密码保护
|
vi /etc/grub.d/40_custom |
添加如下内容(粘贴上述加密密文):
|
set superusers="root" |
9.3 生效 GRUB 配置
|
# BIOS服务器 |
加固效果:修改引导参数、进入单用户模式必须输入 GRUB 密码。
十. 防火墙与端口安全加固
10.1 启用 firewalld 防火墙
|
systemctl start firewalld |
10.2 仅放行业务必需端口
|
# 放行SSH端口(自定义端口需同步修改) |
十一. 安全加固验收标准与核查命令
所有加固完成后,逐项核查,确保100%合规,以下为核心验收命令:
11.1 账号口令核查
|
# 核查口令有效期 |
11.2 内核参数核查
|
sysctl -a | grep tcp_syncookies |
11.3 文件权限核查
|
ls -l /etc/shadow /etc/passwd |
11.4 服务与端口核查
|
systemctl list-unit-files | grep disable |
11.5 加固工具日志核查
|
cat /var/log/openEuler-security.log |
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)