我一直在致力于使用Ansible,分子on Vagrant在CentOS8上自动执行CIS基准测试指南。我一直在引用https://github.com/MindPointGroup/RHEL7-CIS等repos的ansible脚本,并且在"1.1.6确保/var存在单独分区“这一点上遇到了问题。
运行诸如shell: mount | grep "on /var "
之类的命令似乎不会为/var创建单独的分区,并且运行mount | grep -E '/var'
会返回sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs
,而不是预期的/dev/xvdg1 on /var type xfs (rw,relatime,data=ordered)
我曾尝试在ansible上使用parted
自动为/var创建分区,但总是收到分区太小的错误消息。
如何才能确保/var位于单独的分区上?
发布于 2020-11-06 20:11:57
要捕获正确的路径,请运行以下命令:
安装| grep -E "(^| )/var( |$)“
或
安装| grep -E "(^|\s)/var(\s|$)"
发布于 2020-11-06 21:46:31
遵从性有两个步骤,它们会反复重复。首先,应用强化配置。然后查看/扫描。重复操作,直到没有发现为止。
配置阶段:为了确保/var
挂载在单独的分区上,您需要将原始的/var
移到另一个文件夹(例如/var_old
),构建一个新的分区,将其挂载到/var
,并将内容从/var_old
移到/var
。最好在将系统引导至live CD的情况下执行此操作。实际上,最好从一开始就这样构建系统。
审核/扫描阶段:
与其他答案中的建议类似:
mount | grep -E "(\s)/var(\s)"
应该能胜任这项工作。关键区别在于正则表达式'"(\s)/var(\s)"`。
这意味着在/var
之前和之后都有一个空格。使用mount
命令,这是一个空格。
您也可以对/etc/fstab使用相同的表达式。grep -E "(\s)/var(\s)" /etc/fstab
使用mount
并不能告诉您挂载是持久的还是临时的。使用/etc/fstab
并不能告诉您挂载是否正在工作和活动。如果您这样做是为了遵从性,请确保使用CIS指南中建议的测试。
所以你的问题似乎是如何测试合规性,但如果你真的想知道如何合规,我也列出了这一点。
您也可以编写一本简单实用的手册来完成配置部分,但是在系统处于活动状态时尝试移动/var将非常复杂,并且不值得为成百上千的系统执行此操作所需的hassle...unless。在这种情况下,我的建议是编写重新安装所有系统所需的攻略,并将/var、/var/log/audit、/tmp和/home都放在不同的分区上。一旦你做到了,恭喜你,你已经在你的组织中建立了Infrastructure as Code。另一种方法是自动执行我上面列出的流程。这是可行的,但您必须手动启动到live CD或网络映像,或者至少是恢复模式。
https://stackoverflow.com/questions/63295283
复制相似问题