在 CentOS 系统中,Enforce 是一种 SELinux(Security-Enhanced Linux)策略执行模式
确保 SELinux 已安装并启用:
检查 SELinux 是否已安装:
rpm -qa | grep selinux
如果未安装,请使用以下命令安装:
sudo yum install policycoreutils-python-selinux
检查 SELinux 是否已启用:
getenforce
如果未启用,请使用以下命令启用:
sudo setenforce 1
创建 Enforce 策略文件:
使用 audit2allow
工具从审计日志中提取策略规则,并将其保存到文件中。首先,确保已安装 audit2allow
:
sudo yum install audit2allow
然后,运行以下命令以从审计日志中提取策略规则:
sudo ausearch -m avc -ts recent
这将显示一些示例输出。现在,使用 audit2allow
将这些规则保存到文件中:
sudo ausearch -m avc -ts recent | audit2allow -M mypolices
这将在当前目录下创建一个名为 mypolices.te
的策略文件。
编译策略文件:
使用 checkpolicy
工具编译策略文件:
sudo checkpolicy -M mypolices.te
如果编译成功,将生成一个名为 mypolices.pp
的策略文件。
启用 Enforce 模式:
使用 semodule
工具加载策略文件并启用 Enforce 模式:
sudo semodule -i mypolices.pp
sudo setenforce 1
现在,Enforce 模式已生效,SELinux 将强制执行策略规则。请注意,您可能需要根据实际需求调整策略文件以满足特定需求。