Контекст RHEL SELinux отличается между matchpathcon и restorecon

Нет. Используйте несколько locations, это может выглядеть ужасным, но Вы закончите меньшим шансом если сумасшествие.

Также помните, что nginx обрабатывает сначала соответствия regex и если ни один не соответствует ему, пробует самое определенное литеральное местоположение, будучи location / своего рода поймайте все местоположение. Знание, что можно, возможно, уменьшить количество местоположений, в которых Вы нуждаетесь. Смотрите на этот документ, чтобы видеть, как обрабатываются запросы.

2
задан 9 January 2014 в 11:27
1 ответ

Служба поддержки Red Hat подсказала мне, как правильно действовать. Контекст должен быть установлен для /etc/rc.d/init.d/my-httpd , а не для /etc/init.d/my-httpd .

$ semanage fcontext -d -t httpd_initrc_exec_t /etc/init.d/my-httpd
$ semanage fcontext -C -l
$ semanage fcontext -a -t httpd_initrc_exec_t /etc/rc.d/init.d/my-httpd
$ semanage fcontext -C -l
SELinux fcontext                                   type               Context

/etc/rc.d/init.d/my-httpd                          all files          system_u:object_r:httpd_initrc_exec_t:s0

Один раз правильный набор правил контекста, restorecon работает с файлом /etc/init.d/my-httpd .

ls -Z /etc/rc.d/init.d/my-httpd /etc/init.d/my-httpd
-rw-------. root root system_u:object_r:initrc_exec_t:s0 /etc/init.d/my-httpd
-rw-------. root root system_u:object_r:initrc_exec_t:s0 /etc/rc.d/init.d/my-httpd
$ restorecon /etc/init.d/my-httpd
$ ls -Z /etc/rc.d/init.d/my-httpd /etc/init.d/my-httpd
-rw-------. root root system_u:object_r:httpd_initrc_exec_t:s0 /etc/init.d/my-httpd
-rw-------. root root system_u:object_r:httpd_initrc_exec_t:s0 /etc/rc.d/init.d/my-httpd
1
ответ дан 3 December 2019 в 12:56

Теги

Похожие вопросы