Назад | Перейти на главную страницу

разрешающий selinux и целевой тип

я использую centos 6.2

недавно я заметил, что apache работает с включенным selinux

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=Permissive
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

я заметил, что эти ошибки приходили на dmesg

type=1400 audit(1354453732.704:9056368): avc:  denied  { name_connect } for  pid=39006 comm="httpd" dest=11211 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=system_u:object_r:memcache_port_t:s0 tclass=tcp_socket
type=1400 audit(1354453735.777:9056369): avc:  denied  { name_connect } for  pid=39046 comm="httpd" dest=6379 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=system_u:object_r:port_t:s0 tclass=tcp_socket

я тогда включил

 /usr/sbin/setsebool httpd_can_network_connect=1

и это остановило ошибки, а также начали работать веб-страницы.

Мой вопрос: если selinux находится в разрешающем режиме, будет ли selinuxtype = target применять какие-либо политики?

если нет, то как это решило проблему с apache, поскольку selinux уже был в разрешающем режиме?

В разрешающем режиме SElinux будет регистрировать элементы, которые привели бы к отказу в доступе в принудительном режиме, но не будет фактически отклонять эти действия. Так что нет, он не будет применять политики в разрешающем режиме, но он будет обращаться к этим политикам. Если бы вы были в принудительном режиме, вы не смогли бы запускать / использовать httpd, пока не выполнили команду setsebool, поскольку связь между ним и сетевым подключением была бы запрещена SELinux.

Как уже ответил Джон, SELinux просто регистрирует ошибки, а не блокирует службы.

Мы используем SElinux в сценариях, где мы хотели бы протестировать вещи перед их развертыванием в производственной среде и хотели бы понять, что все могло пойти не так.

Хотя вы также можете протестировать то же самое в производственной среде и продолжать исправлять политики до тех пор, пока не убедитесь, что все на месте, а затем измените режим на целевой.