Примеры настройки SELinux для отдельных программ
В данной статье рассмотрены некоторые примеры по настройке системы безопасности SELinux.
Использование политик
Для применения некоторых политик в CentOS, необходимо установить следующие пакеты:
yum install policycoreutils setroubleshoot
Samba
Политики
Список готовых политик и текущее значение смотрим командой:
getsebool -a | grep samba
Задаем политику, например, разрешить шары доманших каталого:
setsebool -P samba_enable_home_dirs=1
Ручная настройка
Посмотреть текущие настройки для samba:
semanage fcontext -l | grep samba
Задать разрешение:
semanage fcontext -a -t samba_share_t "/share/samba(/.*)?"
restorecon -R -v /share/samba
* в данном примере политика применяется к каталогу /share/samba и всем входящим папкам и файлам.
Rsyslog
Список для разрешенных портов смотрим командой:
semanage port -l | grep syslog
Если мы хотим использовать rsyslog для соединений по TCP на порту 514 вводим:
semanage port -m -t syslogd_port_t -p tcp 514
Keepalived
Keepalived может использовать notify для запуска своих скриптов. Данный скрипт должен иметь контекст безопасности keepalived_unconfined_script_exec_t.
Предположим, что наш скрипт находится по пути /etc/keepalived/notify-script.sh. Тогда команды будут такие:
semanage fcontext -a -t keepalived_unconfined_script_exec_t /etc/keepalived/notify-script.sh
restorecon -R -v /etc/keepalived/notify-script.sh