问题
我正在使用自定义 kickstart 文件创建 RHEL 7.3 安装映像。
我可以将其添加到我的 kickstart 文件中,以在安装期间启用 SCAP 配置:
%addon org_fedora_oscap
content-type = scap-security-guide
profile = stig-rhel7-server-gui-upstream
%end
但是,当我这样做时,我的内核命令行会nousb
禁用所有 USB 接口,包括键盘和鼠标。
(我之前曾使用 RHEL 7.2 映像做过同样的事情,而且它“可以正常工作”,所以我知道基本方法是合理的。但那是使用较旧的、显然不太完整的安全配置文件。)
现在,我完全理解为什么:有一条规则专门规定了这一点。我需要“定制”规则,以便 SCAP 工具不会禁用我的所有 USB 设备。
我目前了解到的情况
根据Red Hat 的 kickstart 文档和OSCAP Anaconda 网站,我可以通过提供我自己的剪裁文件来暂停这一条规则:
定制路径 - 应使用的定制文件的路径,以档案中的相对路径给出。
因此,我运行 scap-workbench,禁用受影响的规则,并将我的更改保存为 sewing.xml 文件
然后,我可以在 kickstart 配置中添加一行,如下所示:
%addon org_fedora_oscap
content-type = scap-security-guide
profile = stig-rhel7-server-gui-upstream
tailoring-path = ssg-rhel7-ds-tailoring.xml
%end
根据反复试验,我还得出结论,tailoring.xml 文件必须放在 /root/openscap_data 中(绝对路径绝对不起作用——在安装过程中您会看到一个突出的显示停止调试提示)。
我无法理解的是
即使在生成定制文件之后,我nousb
在进行全新安装时仍然会得到一个内核。
我确实将tailoring.xml放在了正确的位置吗?
是否有详细的日志可用于诊断附加组件正在执行的操作?(我在 /var/log/anaconda/journal.log 中仅发现了非常基本的信息。)
如果定制方法由于某种原因失败,那么有什么干净且一致的方法来解决这个问题,而无需完全抛弃 STIG 自动配置?(例如,在 OSCAP 破坏内核参数后,我可以使用另一个附加模块来清理它们吗?)
答案1
基于这篇 OpenShift 博客文章,您需要安装一些软件包才能让 openSCAP 记录到 syslog:
yum install html2text util-linux-ng
就解决问题本身而言,您提到的检查基本上执行以下操作:
sed -i "s/\(GRUB_CMDLINE_LINUX=\)\"\(.*\)\"/\1\"\2 nousb\"/" /etc/default/grub
bootloader
/sbin/grubby --update-kernel=ALL --args="nousb"
因此,您可以通过删除nousb
默认 grub 选项来恢复该特定规则的操作。
但是,我似乎找不到任何关于为什么你的剪裁不起作用的原因。 这个帖子但似乎确实报告了与您的类似的问题,并且此 RH 解决方案- 如果您有访问权限 - 可能会有用(我没有帐户来查看解决方案本身,但它的标题是“支持 Satellite 6 中的 OpenSCAP 定制”)。
OpenSCAP 官方定制指南建议您确保使用以下方式保存工作台定制:
文件 → 仅保存自定义。
还有一件小事需要注意(来自http://static.open-scap.org/scap-workbench-1.1/#_load_a_ready_made_customization_xccdf_tailoring_file_optional):
只有 XCCDF 1.2 正式支持定制。OpenSCAP 项目有一个扩展,允许定制文件与 XCCDF 1.1 一起使用,因此 SCAP Workbench 也支持这一点。详细信息超出了本文档的范围,但请记住,XCCDF 1.1 文件的定制可能不适用于除 openscap 之外的扫描仪。
答案2
如果你添加一个tailoring-path
,你可能需要更新该profile
行
定义tailoring-path
不会自动注入任何新规则,它只会向搜索层次结构添加另一个源。要实际使用它,您需要按名称调用“定制”配置文件,而不是原始配置文件,例如:
%addon org_fedora_oscap
content-type = scap-security-guide
profile = stig-rhel7-server-gui-upstream-MYPROJECT-CUSTOMIZATIONS
tailoring-path = ssg-rhel7-ds-tailoring.xml
%end
定制配置文件名称是 Scap Workbench 在您保存时指示您创建的名称。“长格式”是可以接受的;您只需使用文本编辑器打开定制文件并直接复制即可。