请问一下SELinux的策略怎么修改

发布于 2022-09-21 01:06:50 字数 1747 浏览 10 评论 0

我的系统是Fedora9,apache、mysql都是yum安装的(因为是开发用,所以没有自己编译)。
现在的情况是:把apache不能访问目录的情况解决了,也就是说把web根目录下的fiel context type改成httpd_sys_content_t了。但是现在没有办法访问mysql的socket,大概是说httpd不能对mysql.sock做connectto操作,但是被selinux拒绝了。

我在网上找了很多资料,看了大概一天时间,翻来覆去就是抄的那么三四篇,大篇大篇介绍selinux,涉及到操作的部分少得可怜,而且还是在他们自己的特定环境下的操作,操作流程本身的可复制性就很低。

现在想请问各位大大,怎样才能满足以下的要求:
1、selinux不改用source模式,而是用direct模式;
2、可以用audit2allow,但是请详细解释一下从log里面导出来的源码的含义,另外就是我用audit2allow的时候,最后如果用semodule -i local.pp的话会把前一次的local.pp覆盖掉,如果用 semodule -u local.pp 的话它又说现在的 local.pp不比上一次的新,巨汗…………
3、不装第三方的所谓修改工具,或者selinux的策略源码
4、实现两个功能即可:一是现在 mysqld_safe 和 mysqld 的selinux标签都是“unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023”,有没有办法把这两个进程归到一个我自己创建的标签下,比如:mysql_exec_t。二是怎样才能让http_t的进程访问mysql.sock

httpd和mysql.sock的详细情况如下:

1、httpd进程:
system_u:system_r:httpd_t:s0     2547 ?        Ss     0:00 /usr/sbin/httpd -k start
2、mysql进程:
unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 6164 pts/2 S   0:00 /bin/sh /usr/bin/mysqld_safe --defaults-file=/etc/my.cnf --datadir=/data/mysqldata
unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 6197 pts/2 Sl   0:02 /usr/libexec/mysqld --defaults-file=/etc/my.cnf --basedir=/usr --datadir=/data/mysqldata --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --socket=/var/lib/mysql/mysql.sock
3、mysql.sock
srwxrwxrwx  mysql mysql unconfined_ubject_r:mysqld_db_t:s0 mysql.sock

拜托各位大大了~~~

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

游魂 2022-09-28 01:06:50

setstaus -b    #查看SELinux的所有状态;
setsebool -P *** ON    #永久设置***为ON

再见回来 2022-09-28 01:06:50

man sestatus、
man getsebool、
man setsebool。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文