Настраивая что-нибудь в центоси вы обязательно огребете проблем если у вас включен SELinux.
Таким замечательным примером может служить настройка Postfix с SASL аутентификацией в Dovecot. Вы спокойно сделали конфиги, всё проверили, рестартанули сервисы, а в результате нижуя не работает! WTF? Это няши, SELinux.
Идем в лог /var/log/maillog и любуемся такой вот ошибкой:
localhost postfix/smtpd: warning: SASL: Connect to private/auth failed: Permission denied
Благодарим это чудо за чудесную ночь секаса или же берем клаву и ставив на место это безобразие (:
grep smtpd_t /var/log/audit/audit.log | audit2allow -M postfixsasl
коротко о команде — найти smtpd_t в логе аудита и создать на основе этого правило для selinux
semodule -i posfixsasl.pp
добавляем правило в проклятый selinux, перезапускаем сервис(ы) и всё няшно. Эх, если бы я нашла эту фичку год назад…
Дополнительно:
Иногда может случиться так, что вы вроде бы всё добавили (например, модули для munin), а что-то всё ещё не работает из-за SELinux’a. Причиной этому может быть то, что события блокировки попадают под donotaudit события. В этом случае можно временно включить donotaudit события командой:
semodule -DB
и потом вернуть обратно
semodule -B
Так же, помимо описанного выше способа поиска для создания правил. Можно воспользоваться командой:
ausearch -m avc -ts today | audit2allow -M myfix
Которая автоматически поищет все события и создаст правила для их разрешения.
p.s.
Вот тут: гайд как это работает + ещё примеры для тех кто любит и пожестче.