简介
audit2allow可以根据selinux日志文件中的denied信息生成allow的策略文件,然后再将策略模块加载进内核即可生效。
首选选择一个软件,以tcpdump为例,将其运行一段时间,此时selinux日志中会记录被拒绝的操作。然后使用audit2allow将操作被拒绝的日志信息转为策略文件并加载到内核,再运行tcpdump,即可发现日志文件没有tcpdump的拒绝信息了。
环境
- fedroa/centos
- selinux宽容模式
步骤
- 安装tcpdump(我的系统已经有该程序,就不用再安装了)
- 确保此时处在宽容模式了。
- 可以先清空一下日志文件,或者记录日志文件现有的行数,为下一步做准备
- 打开tcpdump,正常使用一下
此时日志文件里已经出现tcpdump相关操作的denied信息,将这些信息单独拷贝到一个文件中
1
cat /var/log/audit/audit.log | grep tcpdump >avc.txt
使用audit2allow命令(加-M参数可直接生成策略模块)
1
2
3
4audit2allow -M tcpdump -i avc.txt
#此时输出信息会提醒你使用semodule命令将刚生成的tcpdump.pp(在当前目录下)加载到内核
semodule -i tcpdump.pp再次打开日志文件,记录总行数n。
- 再次正常运行tcpdump,然后查看selinux的日志文件中n行之后不再输出denied的信息。
参考
- http://www.sudu.cn/info/index.php?id=315271&op=article
- http://blog.chinaunix.net/uid-12087380-id-3074698.html
- https://blog.csdn.net/q1183345443/article/details/90438283
欢迎与我分享你的看法。
转载请注明出处:http://taowusheng.cn/