Nginx

啟用 selinux 後,nginx 如何訪問其預設的虛擬主機文件?

  • July 15, 2016

據我所知,nginx是在httpd_t安全上下文中執行,而index.html,例如,是usr_t一個:

$ ps auxZ | grep 'nginx.*worker'
system_u:system_r:httpd_t:s0    nginx    13734  0.0  0.2 112948  3600 ?        S    02:07   0:00 nginx: worker process

$ ls -Z /usr/share/nginx/html/index.html
-rw-r--r--. root root system_u:object_r:usr_t:s0       /usr/share/nginx/html/index.html

我在這裡執行 CentOS 7,如果有的話。

據我所知:

$ sesearch -A -t usr_t -p read | grep 'httpd usr_t'
  allow httpd_t usr_t : file { ioctl read getattr execute execute_no_trans open } ;
  allow httpd_t usr_t : dir { ioctl read getattr lock search open } ;
  allow httpd_t usr_t : lnk_file { read getattr } ;

據推測,這意味著允許 Web 伺服器訪問usr_t文件。另外,有人告訴我,它usr_t具有廣泛的可讀性。

引用自:https://unix.stackexchange.com/questions/295306