12.2. 部署 fapolicyd
在部署 fapolicyd
应用程序允许列表框架时,您可以先以 permissive 模式尝试配置,或者在默认配置中直接启用该服务。
流程
安装
fapolicyd
软件包:# dnf install fapolicyd
可选:要首先尝试配置,请将 mode 更改为 permissive。
在您选择的文本编辑器中打开
/etc/fapolicyd/fapolicyd.conf
文件,例如:# vi /etc/fapolicyd/fapolicyd.conf
将
permissive
选项的值从0
改为1
,保存文件并退出编辑器:permissive = 1
或者,您可以在启动该服务前使用
fapolicyd --debug-deny --permissive
命令调试配置。如需更多信息,请参阅与 fapolicyd 相关的 故障排除部分。
启用并启动
fapolicyd
服务:# systemctl enable --now fapolicyd
如果您通过
/etc/fapolicyd/fapolicyd.conf
启用 permissive 模式:为记录
fapolicyd
事件设置审计服务:# auditctl -w /etc/fapolicyd/ -p wa -k fapolicyd_changes # service try-restart auditd
- 使用您的应用程序。
检查审计日志中的
fanotify
denials,例如:# ausearch -ts recent -m fanotify
在调试后,通过将对应的值改回到
permissive = 0
来禁用 permissive 模式,然后重新启动服务:# systemctl restart fapolicyd
验证
验证
fapolicyd
服务是否正常运行:# systemctl status fapolicyd ● fapolicyd.service - File Access Policy Daemon Loaded: loaded (/usr/lib/systemd/system/fapolicyd.service; enabled; preset: disabled) Active: active (running) since Tue 2024-10-08 05:53:50 EDT; 11s ago … Oct 08 05:53:51 machine1.example.com fapolicyd[4974]: Loading trust data from rpmdb backend Oct 08 05:53:51 machine1.example.com fapolicyd[4974]: Loading trust data from file backend Oct 08 05:53:51 machine1.example.com fapolicyd[4974]: Starting to listen for events
以没有 root 权限的用户身份登录,检查
fapolicyd
是否正常工作,例如:$ cp /bin/ls /tmp $ /tmp/ls bash: /tmp/ls: Operation not permitted