Подойдет для настройки любого приложения с запущенным Selinux.
Настраивал zabbix-agent на хосте где включен selinux.
Собираем логи аудита по заббиксу.
grep 'denied.*zabbix_agent' /var/log/audit/audit.log | audit2allow -m zabbixsudoallow > zabbixsudoallow.te
Посмотрим, что попало в правила
less zabbixsudoallow.te
Создаем свой модуль политики для заббикса
grep 'denied.*zabbix_agent' /var/log/audit/audit.log | audit2allow -M zabbixsudoallow
Далее вносим изменения
semodule -i zabbixsudoallow.pp
Запускаем агент, смотрим /var/log/audit/audit.log если опять 'denied.*zabbix_agent' присутствует, то повторяем все с начала.
Если не интересно, что попадает в правила то можно ограничиться, только
grep 'denied.*zabbix_agent' /var/log/audit/audit.log | audit2allow -M zabbixsudoallow
и
semodule -i zabbixsudoallow.pp
Если в аудите нет запретов, а приложение все также не работает, то делаем следующее.
semodule -DB
Команда показывает "подавленные" сообщения (dontaudit).
После того как приложение заработало как надо, включаем dontaudit.
semodule -B
Подсмотрено на https://wiki.centos.org/HowTos/SELinux