SELinux - 允許多個服務存取相同 /home/dir

SELinux - 允許多個服務存取相同 /home/dir

我目前啟用了 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 之間共用檔案。

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Managing_Confined_Services/sect-Managing_Confined_Services-Configuration_examples-Sharing_files_ Between_services.html

相關內容