
我目前啟用了 SELinux,並且能夠配置 apache 以允許使用chcon
授予“httpd_sys_content_t”類型的命令訪問 /home/src/web。但現在我嘗試從同一目錄提供 rsyslogd.conf 文件,但每次啟動 rsyslogd 時,我都會在審核日誌中看到一個條目,指出 rsyslogd 被拒絕存取。我的問題是,是否可以授予兩個應用程式存取同一目錄的能力,同時仍保持 SELinux 啟用?
/home/src 上的目前權限:
drwxr-xr-x. src src unconfined_u:object_r:httpd_sys_content_t:s0 src
審核日誌訊息:
type=AVC msg=audit(1349113476.272:1154): avc: denied { search } for pid=9975 comm="rsyslogd" name="/" dev=dm-2 ino=2 scontext=unconfined_u:system_r:syslogd_t:s0 tcontext=system_u:object_r:home_root_t:s0 tclass=dir
type=SYSCALL msg=audit(1349113476.272:1154): arch=c000003e syscall=2 success=no exit=-13 a0=7f9ef0c027f5 a1=0 a2=1b6 a3=0 items=0 ppid=9974 pid=9975 auid=500 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=30 comm="rsyslogd" exe="/sbin/rsyslogd" subj=unconfined_u:system_r:syslogd_t:s0 key=(null)
- 編輯 -
遇到了這個郵政,這就是我想要實現的目標。然而當我查看清單時允許的 sebool 參數,唯一與 syslog 相關的是:syslogd_disable_trans(SELinux 服務保護),似乎我可以在目錄上維護目前的 SELinux「類型」/home/src/
,但將 syslogd_disable_trans 上的 bool 設為 false。我想知道是否有更好的方法?
答案1
由於我仍在學習 SELinux,我嘗試不實作自訂 SELinux 策略包,但在這種情況下,我似乎別無選擇。所以我遵循了原來的答案郵政,並且能夠讓 rsyslog 與 /home/src/web 很好地配合。
答案2
類型強制有助於防止進程存取供其他進程使用的檔案。例如,預設情況下,Samba 無法讀取標有 httpd_sys_content_t 類型的文件,這些文件旨在供 Apache HTTP Server 使用。如果所需檔案標示為 public_content_t 或 public_content_rw_t 類型,則可以在 Apache HTTP Server、FTP、rsync 和 Samba 之間共用檔案。