RHEL系统安全配置与扫描实践指南
在当今数字化时代,系统安全至关重要。对于使用RHEL 9系统的用户来说,遵循相关安全标准并进行有效的安全扫描是保障系统安全的关键。本文将详细介绍如何在RHEL 9系统中启用FIPS模式、使用DISA STIG SCAP配置文件以及进行系统安全扫描等操作。
1. 启用RHEL中的FIPS模式
RHEL 9自几年前开始开发时就专注于FIPS 140 - 3标准。构建符合FIPS标准的系统需从安装时开始,将安装程序置于FIPS模式。具体操作步骤如下:
- 安装时设置 :在系统引导过程中编辑一行内容,在安装程序引导内核选项的内核行后追加 fips=1 。
- 安装后配置(可选) :若想再次确认配置,可在安装后通过命令行强制执行FIPS模式。以root用户身份运行以下命令:
# fips-mode-setup
此命令输出可能冗长且复杂,可在实验室环境中自行测试。
在进行系统扫描前,可通过以下步骤验证FIPS模式是否启用:
- 检查内核引导选项 :在实际引导Linux之前,检查内核的引导选项,确保已设置FIPS支持。可通过图形化示例查看引导配置,确认包含 fips=1 。
- 强制设置系统策略 :运行以下命令强制设置系统策略:
# update-crypto-policies --set FIPS
- 验证FIPS模式 :
- 以root用户身份运行以下命令检查FIPS模式是否启用:
# fips-mode-setup --check
若输出显示“Installation of FIPS modules is not completed. FIPS mode is disabled.”,则表示还需进一步操作。
2. 运行以下命令启用FIPS模式:
# fips-mode-setup --enable
此命令执行时间可能较长,执行完成后需重启系统使设置生效。
3. 重启系统后,再次以root用户身份运行验证命令:
# fips-mode-setup --check
若输出显示“FIPS mode is enabled.”,则表示FIPS模式已成功启用。
2. DISA STIG SCAP配置文件的使用
在深入设置符合STIG标准的系统之前,需先安装DISA提供的工具来查看STIG标准文档。具体操作如下:
- 下载STIG Viewer工具 :打开浏览器,访问 DISA网站 ,下载免费的STIG Viewer工具。该工具支持Windows和Linux系统,不支持Mac系统。
- 下载RHEL 9 STIG配置文件 :访问 该链接 ,选择RHEL 9 STIG配置文件进行下载。可能需要浏览多个操作系统的STIG条目才能找到,通常在第三页。
建议花时间熟悉STIG Viewer工具,并使用它查看RHEL 9.x STIG SCAP配置文件及其他感兴趣的配置文件。
3. 验证作为QA过程的一部分
无论在安装和配置过程中选择遵循何种标准,都需要在发布过程中详细验证解决方案。可参考 Red Hat的文档 获取最新信息,查看该信息需登录账户。
接下来进行一个练习,安装OpenSCAP工具并运行扫描:
- 安装软件包 :运行以下命令安装所需软件包:
$ sudo dnf install -y scap-workbench \
openscap-utils openscap-engine-sce \
openscap-scanner scap-security-guide bzip2
该命令输出较长,安装完成后会显示安装的重要信息。
- 下载RHEL 9 SCAP配置文件 :运行以下命令下载通用的RHEL 9 SCAP配置文件:
# wget -O - https://www.redhat.com/security/data/oval/v2/RHEL9/rhel-9.oval.xml.bz2 | bzip2 --decompress > rhel-9.oval.xml
该命令输出也较长,下载完成后会显示相关信息。
- 运行测试扫描 :运行以下命令进行测试扫描:
$ oscap-ssh <username>@<hostname> <port> oval eval --report <scan-report.html> <path to rhel-9.oval.xml>
注意:oscap工具(即openscap - utils软件包)需安装在目标主机和执行该命令的主机上。若没有两台安装了该工具的机器,可在本地主机上针对自己的用户账户运行该命令。该命令执行输出可能很长,执行完成后会生成扫描报告。
- 查看扫描报告 :打开浏览器,查看生成的扫描报告。若未安装图形化桌面,可将报告HTML文件复制到其他系统查看。建议仔细查看报告内容,记录发现的任何缺陷,并将这些报告作为构建和测试操作的工件保存,以备产品提交政府认证时作为尽职调查的证据。
4. 使用OpenSCAP Workbench
在之前的练习中,我们已安装了 scap - workbench 和 scap - security - guide 软件包。当扫描系统处于图形化UI模式时,可使用OpenSCAP Workbench查看、编辑和创建自己的SCAP配置文件,对主机运行扫描,并自动修复扫描发现的缺陷。操作步骤如下:
- 打开OpenSCAP Workbench应用程序 :在Gnome桌面中,依次点击“Applications”,然后选择“SCAP Workbench”。
- 选择SCAP配置文件 :启动工作bench应用程序后,会提示选择要加载的SCAP配置文件,从下拉菜单中选择“Other SCAP Content”。
- 选择已下载的RHEL 9 STIG SCAP配置文件 :选择之前下载的RHEL 9 STIG SCAP配置文件。在执行操作前,可查看设置并选择执行路径。从该界面可执行远程扫描、编辑配置文件以满足公司需求,也可在本地或远程主机上执行扫描。该工具还可在扫描完成后协助生成缺陷修复自动化脚本。
5. 作为CI/CD过程的一部分实现安全扫描
将安全扫描集成到CI/CD过程中,不仅是对QA工作的重复,更是对当前维护的标准和认证进行审查,以及决定是否添加或停止某些安全措施。以下是一些建议:
- 关注标准更新 :及时关注提供安全标准的机构的更新,确保系统符合最新的安全法规。对于敏捷开发团队,建议将这些活动添加到待办事项列表中,并至少每半年进行一次审查,以增强团队的安全意识。
- 自动化扫描 :建议建立一定程度的自动化机制,对任何发布候选主机运行扫描。可根据自身或公司的标准选择自动化工具,如脚本。
- CI/CD链的建议 :
- 构建一个永久主机用于运行OpenSCAP扫描。
- 维护一个合适的SCAP配置文件库。
- 自动化扫描活动并分发结果报告。
- 将扫描结果作为构建/发布的工件保存,以备将来参考。
- 保留所有记录,维护审计跟踪。
通过以上步骤,可在RHEL 9系统中有效实施安全配置和扫描,提高系统的安全性和合规性。在实际操作过程中,可根据具体需求和环境进行适当调整。
RHEL系统安全配置与扫描实践指南(续)
6. 关键操作流程总结
为了更清晰地呈现前面所介绍的各项操作,下面以流程图和表格的形式对关键流程进行总结。
6.1 FIPS模式启用流程
graph LR
A[安装时设置] --> B[编辑内核引导选项,追加fips=1]
B --> C{是否需要再次确认}
C -- 是 --> D[安装后配置]
C -- 否 --> E[验证FIPS模式]
D --> F[以root身份运行fips-mode-setup]
F --> E
E --> G[检查内核引导选项]
G --> H[强制设置系统策略:update-crypto-policies --set FIPS]
H --> I[运行fips-mode-setup --check]
I -- 未启用 --> J[运行fips-mode-setup --enable]
J --> K[重启系统]
K --> L[再次运行fips-mode-setup --check]
I -- 已启用 --> M[完成,FIPS模式成功启用]
L --> M
| 步骤 | 操作 | 命令示例 |
|---|---|---|
| 安装时设置 | 编辑内核引导选项,追加 fips=1 | 无(图形化操作) |
| 安装后配置 | 以root身份运行命令 | # fips-mode-setup |
| 验证FIPS模式 - 检查内核引导选项 | 查看内核引导配置 | 无(图形化查看) |
| 验证FIPS模式 - 强制设置系统策略 | 运行命令 | # update-crypto-policies --set FIPS |
| 验证FIPS模式 - 初次检查 | 运行命令 | # fips-mode-setup --check |
| 启用FIPS模式 | 运行命令 | # fips-mode-setup --enable |
| 重启系统 | 执行重启操作 | # reboot |
| 再次验证 | 运行命令 | # fips-mode-setup --check |
6.2 系统安全扫描流程
graph LR
A[安装OpenSCAP工具] --> B[下载RHEL 9 SCAP配置文件]
B --> C[运行测试扫描]
C --> D[查看扫描报告]
| 步骤 | 操作 | 命令示例 |
|---|---|---|
| 安装OpenSCAP工具 | 运行命令安装所需软件包 | $ sudo dnf install -y scap-workbench openscap-utils openscap-engine-sce openscap-scanner scap-security-guide bzip2 |
| 下载RHEL 9 SCAP配置文件 | 运行命令下载配置文件 | # wget -O - https://www.redhat.com/security/data/oval/v2/RHEL9/rhel-9.oval.xml.bz2 | bzip2 --decompress > rhel-9.oval.xml |
| 运行测试扫描 | 运行命令进行扫描 | $ oscap-ssh <username>@<hostname> <port> oval eval --report <scan-report.html> <path to rhel-9.oval.xml> |
| 查看扫描报告 | 打开浏览器查看报告 | 无(图形化操作) |
7. 常见问题及解决方法
在实施上述安全配置和扫描过程中,可能会遇到一些常见问题,下面为大家提供相应的解决方法。
7.1 FIPS模式相关问题
- 问题:
fips-mode-setup --check显示未完成安装或未启用- 原因 :可能是安装时内核引导选项设置错误,或者安装后配置步骤未正确执行。
- 解决方法 :重新检查安装时是否正确追加
fips=1到内核引导选项,再次执行fips-mode-setup --enable并重启系统。
- 问题:
fips-mode-setup --enable执行时间过长- 原因 :该命令会重新生成内核initramdisks,可能会消耗较多时间。
- 解决方法 :耐心等待,确保系统资源充足,避免在系统负载过高时执行该命令。
7.2 系统扫描相关问题
- 问题:
oscap-ssh命令执行失败- 原因 :可能是目标主机未安装oscap工具,或者网络连接问题。
- 解决方法 :确保目标主机和执行命令的主机都安装了
openscap-utils软件包,检查网络连接是否正常。
- 问题:扫描报告显示大量缺陷
- 原因 :系统可能未满足SCAP配置文件的要求,或者配置存在错误。
- 解决方法 :仔细查看报告中的缺陷描述,根据描述进行相应的配置调整,可使用OpenSCAP Workbench协助生成修复脚本。
8. 安全配置与扫描的拓展应用
除了前面介绍的基本操作,RHEL系统的安全配置和扫描还可以有一些拓展应用。
8.1 多主机批量扫描
如果有多个RHEL主机需要进行安全扫描,可以编写脚本实现批量扫描。以下是一个简单的示例脚本:
#!/bin/bash
# 定义主机列表
hosts=(
"host1.example.com"
"host2.example.com"
"host3.example.com"
)
# 定义用户名、端口、配置文件路径和报告路径
username="your_username"
port="22"
profile_path="/path/to/rhel-9.oval.xml"
report_dir="/path/to/reports"
# 循环扫描每个主机
for host in "${hosts[@]}"
do
report_file="${report_dir}/${host}-scan-report.html"
oscap-ssh $username@$host $port oval eval --report $report_file $profile_path
done
将上述脚本保存为一个文件(如 batch_scan.sh ),并赋予执行权限( chmod +x batch_scan.sh ),然后运行该脚本即可实现多主机批量扫描。
8.2 与监控系统集成
可以将系统扫描结果与监控系统集成,实现实时监控系统的安全状态。例如,将扫描结果发送到Prometheus或Grafana等监控工具,通过可视化界面展示系统的安全指标。具体实现方式可根据所使用的监控工具进行调整。
9. 总结与展望
通过本文的介绍,我们详细了解了在RHEL 9系统中启用FIPS模式、使用DISA STIG SCAP配置文件、进行系统安全扫描以及将安全扫描集成到CI/CD过程的方法。通过遵循这些步骤和建议,可以有效提高系统的安全性和合规性。
在未来的系统安全管理中,随着安全标准的不断更新和系统环境的日益复杂,我们需要持续关注安全技术的发展,不断优化安全配置和扫描策略。同时,加强团队的安全意识培训,确保每个成员都能正确理解和执行安全操作,也是保障系统安全的重要环节。希望大家在实际操作中能够灵活运用这些知识,为系统的安全稳定运行保驾护航。
超级会员免费看
4294

被折叠的 条评论
为什么被折叠?



