有無人試 selinux? [SOLVED]

本帖最後由 toylet 於 2012-8-2 21:02 編輯

經 /etc/crontab 行 BASH script 時出左句咁野....
  1. Aug  1 19:00:01 changmw kernel: [443838.970529] type=1400 audit(1343818801.861:32880): avc:  denied  { create } for  pid=14215 comm="bash" name="issue.net.txt" scontext=system_u:system_r:system_cronjob_t:s0-s0:c0.c1023 tcontext=system_u:object_r:etc_t:s0 tclass=file
複製代碼

好多人關掉它就算。但咁就無咁Secure.

TOP

本帖最後由 toylet 於 2012-8-1 19:57 編輯
好多人關掉它就算。但咁就無咁Secure.
uxuq 發表於 1/8/2012 19:40

`setenforce 0` 的確解決了所有問題, 不過想玩玩佢...
以前 Fedora SELinux 有個 boolean 叫 crond_disable_trans, RHCE 好似有教的!
但 Fedora 17 已無左.... `getsebool -a | grep cron`就找不到啦...

TOP

SELINUX應該是IPS. 不過, 如果系統只在內部用, 我通常把SELINUX放在一旁. 另外, 我自己打開防火牆來限制指定的服務.

TOP

http://wiki.centos.org/HowTos/SE ... 8c1989e56191c257c01
打呢句都可以check 到邊D sebool 啱用
grep denied /var/log/audit/audit.log | audit2allow

TOP

`setenforce 0` 的確解決了所有問題, 不過想玩玩佢...
以前 Fedora SELinux 有個 boolean 叫 cro ...
toylet 發表於 2012-8-1 19:55


請問師兄你喺邊度上RHCE? 有無報考試? 我call redhat hk office 同send email 去redhat global 問香港考試時間同報名都無人覆.....

TOP

SELINUX應該是IPS. 不過, 如果系統只在內部用, 我通常把SELINUX放在一旁. 另外, 我自己打開防火牆來限制指 ...
polarhei 發表於 2012-8-1 20:33


SELINUX 係MAC.....

TOP

請問師兄你喺邊度上RHCE? 有無報考試? 我call redhat hk office 同send email 去redhat global 問香港考 ...
有你便有我 發表於 1/8/2012 20:46

小人*無*真兮考, 只兮 Google 到 RHCE  的材料有講 crond_disable_trans!

TOP

打呢句都可以check 到邊D sebool 啱用
grep denied /var/log/audit/audit.log | audit2allow
有你便有我 發表於 1/8/2012 20:42
  1. # grep denied /var/log/audit/audit.log | audit2allow
  2. WARNING: Policy would be downgraded from version 27 to 26.
  3. Nothing to do
複製代碼

TOP

[SOLVED]

本帖最後由 toylet 於 2012-8-2 21:01 編輯

After some Google search, found this link:
http://fedoraproject.org/wiki/SELinux/audit2allow
即兮 `man audit2allow`!!!
召喚 audit2allow 時要用 "-m" 去 generate module source codes (*.te) , 跟住手動 compile (*.te->*.pp->*.mod) and install 個 module!!!
  1. $ cat /var/log/audit/audit.log | audit2allow -m local > local.te
  2. $ checkmodule -M -m -o local.mod local.te
  3. $ semodule_package -o local.pp -m local.mod
  4. $ semodule -i local.pp
複製代碼
以下兮 local.te:
  1. module local 1.0;

  2. require {
  3.         type public_content_t;
  4.         type httpd_sys_content_t;
  5.         type etc_t;
  6.         type system_cronjob_t;
  7.         class dir write;
  8.         class file { write setattr };
  9. }

  10. #============= system_cronjob_t ==============
  11. allow system_cronjob_t etc_t:file write;
  12. #!!!! The source type 'system_cronjob_t' can write to a 'dir' of the following types:
  13. # user_home_dir_t, prelink_var_lib_t, innd_log_t, var_lock_t, etc_t, man_t, root_t, tmp_t, system_cronjob_var_lib_t, sysstat_log_t, crond_tmp_t, locate_log_t, var_spool_t, httpd_cache_t, var_log_t, var_lib_t, var_run_t, system_cron_spool_t, spamc_home_t, innd_var_run_t, cyrus_var_lib_t, spamd_var_lib_t, mrtg_log_t, prelink_log_t, root_t

  14. allow system_cronjob_t httpd_sys_content_t:dir write;
  15. allow system_cronjob_t httpd_sys_content_t:file { write setattr };
  16. allow system_cronjob_t public_content_t:file { write setattr };
複製代碼
Thank you, 有你便有我!

TOP