Я установил nagios ядро и плагины впервые, и не могу заставить его работать с SElinux. Ошибка в контрольном журнале,
type=AVC msg=audit(1441480084.865:710): avc: denied { execute } for
pid=5444 comm="httpd" name="statusjson.cgi" dev="dm-1" ino=135240040
scontext=system_u:system_r:httpd_t:s0
tcontext=unconfined_u:object_r:httpd_sys_content_t:s0 tclass=file
Система: Scientific Linux 7
Nagios: 4.1.1
Я следовал инструкциям здесь
Это работает, когда SElinux находится в разрешающем режиме (setenforce 0
)
(Для любого пытающегося выяснять, как получить журнал ошибок, политика SELinux, кажется, имеет, по умолчанию, не контролируют httpd исполнительные сообщения. Я восстановил политику SELinux включить все сообщения аудита в соответствии с этой статьей
#semodule --disable_dontaudit --build
и посмотревший использование журнала
#sealert -a /var/log/audit/audit.log > auditlog.log
Кроме того, после предложений sealert не работал на меня),
Таким образом, изменение контекста безопасности в сценариях CGI на httpd_sys_script_exec_t
, похоже, сработало. Хотя я не уверен, что это желаемое решение.
chcon -R -t httpd_sys_script_exec_t /usr/local/nagios/sbin
Дополнительная информация: https://fedoraproject.org/wiki/SELinux/apache
Обратите внимание, что chcon
изменяет контекст только временно ; если файловая система перемаркирована или выполняется restorecon
, контекст вернется к типу по умолчанию. Чтобы изменить контекст навсегда , введите:
semanage fcontext -a -t httpd_sys_script_exec_t /usr/local/nagios/sbin
restorecon -v /usr/local/nagios/sbin