====== Активация и работа биллинга на SELinux ====== Данные модули selinux находятся в режиме теста Только для Centos 8 и версии биллинга от 3.05.01 \\ Данные модули позволят работать билингу с включенным SELinux в режиме **enforcing** ====== Включение SELinux ====== \\ Установить базовый набор правил и утилиты для работы с SELinux: yum install -y selinux-policy-targeted policycoreutils policycoreutils-python-utils \\ Если SSH или NGINX используют нестандартные порт, их нужно разрешить выполнив: \\ Пример для для ssh с 2222 портом: semanage port -a -t ssh_port_t -p tcp 2222 \\ Пример для NGINX с 4443 портом: semanage port -a -t http_port_t -p tcp 4443 \\ Далее выбрать подходящий режим работы. \\ Рекомендуем для начала Permissive режим с дальнейшим переходом в Enforcing: ==== Enforcing ==== Режим по-умолчанию. При выборе этого режима все действия, которые каким-то образом нарушают текущую политику безопасности, будут блокироваться, а попытка нарушения будет зафиксирована в журнале. \\ В /etc/selinux/config изменить параметр [[https://ru.wikipedia.org/wiki/SELinux|SELINUX]] на: SELINUX=enforcing \\ После чего необходимо перезагрузить сервер для активации enforcing режима. ==== Permissive ==== В случае использования этого режима, информация о всех действиях, которые нарушают текущую политику безопасности, будут зафиксированы в журнале, но сами действия не будут заблокированы. Если возникнут проблемы при работе с enforcing, на время решения переключитесь в permissive режим: SELINUX=permissive \\ После чего необходимо перезагрузить сервер. ====== Установка модулей ====== \\ [[http://setup.2x.mikbill.pro/selinux.tar.gz|Скачать архив]] с модулями и распаковать его: wget http://setup.2x.mikbill.pro/selinux.tar.gz tar xzf selinux.tar.gz cd selinux И запустить установку модулей через Ansible: ansible-playbook selinux.yml ====== Отладка ====== \\ SELinux записывает логи своей работы в файл /var/log/audit/audit.log \\ Получить сообщения о блокировке действия можно по фильтру **denied**: grep "denied" /var/log/audit/audit.log ====== Обновление модулей ====== \\ Для обновления модуля, необходимо [[http://setup.2x.mikbill.pro/selinux/roles/selinux/files/|скачать]] его новую версию и загрузить в SELinux. \\ Пример модуль **mrtg_selinux**: wget http://setup.2x.mikbill.pro/selinux/roles/selinux/files/mrtg_selinux.pp \\ Выгружаем текущий модуль из SELinux semodule -r mrtg_selinux \\ Загружаем обновленный модуль semodule -i mrtg_selinux.pp \\ Доступные модули можно найти [[http://setup.2x.mikbill.pro/selinux/roles/selinux/files/|по ссылке]] а так же увидеть дату их последнего обновления.