OpenSCAP 内存消耗问题
在具有有限内存的系统上,OpenSCAP 扫描程序可能会预先终止,或者可能无法产生结果文件。OpenSCAP 将所有收集到的结果存储在内存中,直到扫描完成。一般来说,我们建议系统的内存至少为 2 GB 才能成功完成扫描。
内存消耗如此之高的原因有多种:
-
所选配置文件的复杂性
-
评估的规则数量及其复杂性
-
扫描的文件系统上存储的文件数以及该系统上安装的软件包数
以下解决方法可以降低内存消耗:
-
您可以设置环境变量
OSCAP_PROBE_MEMORY_USAGE_RATIO
来更改 OpenSCAP 探针的最大内存使用率(已使用/总计),默认值为 0.1。 -
您可以使用以下命令生成 HTML 报告,而不是在扫描期间生成报告:
$ oscap xccdf generate report
-
您可以自定义扫描配置文件以取消选择涉及整个
/
文件系统递归的规则:rpm_verify_hashes
rpm_verify_permissions
rpm_verify_ownership
file_permissions_unauthorized_world_writable
no_files_unowned_by_user
dir_perms_world_writable_system_owned
file_permissions_unauthorized_suid
file_permissions_unauthorized_sgid
file_permissions_ungroupowned
dir_perms_world_writable_sticky_bits
-
在完成另一次扫描之前,您可以尝试对上一点中列出的规则应用修复。这些补救措施可以帮助减少扫描期间需要收集的数据量,从而减少扫描仪的内存消耗。
-
您可以在 RAM 有限的系统上使用较小的软件包组,例如
服务器
和最小安装
。 -
您可以为
oscap
命令设置内存限制。
Comments