- Проверить статус SELinux
getenforce sestatus
- Отключить SELinux в /etc/selinux/config
SELINUX=disabled setenforce 0
- Просмотреть контекст безопасности
ls -Z
getfattr -n security.selinux <file_name>
ps axZ | grep crond
- Список политик SELinux (вариантов защиты)
yum install policycoreutils-python semanage boolean -l
getsebool -a
- Включить/выключить политику SELinux
setsebool -P on setsebool -P off setsebool -P httpd_enable_homedirs on setsebool -P httpd_can_network_connect on
- Узнать разметку файлов
semanage fcontext -l | grep httpd
- Установить временные разрешения (будут работать до перезагрузки) для папки
chcon -R -t httpd_sys_content_t /path/to/www chcon -R -t httpd_sys_rw_content_t /path/to/www
для файла
chcon -t тип имя-файла
- Установить постоянные разрешения. Команда semanage fcontext -a -t не назначает контекст, а определяет дальнейший способ маркировки, после нее необходимо выполнить restorecon для восстановления контекста безопасности.
semanage fcontext -a -t httpd_sys_content_t "/path/to/www(/.*)?" semanage fcontext -a -t httpd_sys_rw_content_t "/path/to/www(/.*)?"
Или
semanage fcontext --add --type httpd_log_t "/path/to/www/[^/]*/logdir(/.*)?"
Затем
restorecon -R /path/to/www
- Разрешить доступ к порту
semanage port -a -t http_port_t -p tcp 81
- Просмотреть разешения на доступ к порту
semanage port -l | grep http