Как отключить SELinux на CentOS 8
Security Enhanced Linux или SELinux — это механизм безопасности, встроенный в ядро Linux, используемый дистрибутивами на основе RHEL.
SELinux добавляет к системе дополнительный уровень безопасности, позволяя администраторам и пользователям контролировать доступ к объектам на основе правил политики.
Правила политики SELinux определяют, как процессы и пользователи взаимодействуют друг с другом, а также как процессы и пользователи взаимодействуют с файлами. Если нет правила, явно разрешающего доступ к объекту, например, для процесса, открывающего файл, доступ запрещается.
SELinux имеет три режима работы:
- Применение: SELinux разрешает доступ на основе правил политики SELinux.
- Разрешающий: SELinux регистрирует только те действия, которые были бы запрещены при работе в принудительном режиме. Этот режим полезен для отладки и создания новых правил политики.
- Отключено: политика SELinux не загружается, и сообщения не регистрируются.
По умолчанию в CentOS 8 SELinux включен и находится в принудительном режиме. Настоятельно рекомендуется держать SELinux в принудительном режиме. Однако иногда это может мешать работе какого-либо приложения, и вам необходимо установить его в разрешающий режим или полностью отключить.
В этом руководстве мы объясним, как отключить SELinux в CentOS 8.
Предпосылки
Только пользователь root или пользователь с привилегиями sudo может изменить режим SELinux.
Проверка режима SELinux
Используйте sestatus
команду, чтобы проверить статус и режим, в котором работает SELinux:
sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Memory protection checking: actual (secure)
Max kernel policy version: 31
Приведенные выше выходные данные показывают, что SELinux включен и установлен в принудительный режим.
Изменение режима SELinux на разрешающий
Когда он включен, SELinux может находиться либо в принудительном, либо в разрешающем режиме. Вы можете временно изменить режим с целевого на разрешающий с помощью следующей команды:
sudo setenforce 0
- Однако это изменение действительно только для текущего сеанса выполнения и не сохраняется между перезагрузками.
Чтобы навсегда установить разрешающий режим SELinux, выполните следующие действия:
- Откройте
/etc/selinux/config
файл и установитеSELINUX
мод наpermissive
:
/etc/selinux/config# This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=permissive # SELINUXTYPE= can take one of these three values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
- Откройте
- Сохраните файл и выполните
setenforce 0
команду, чтобы изменить режим SELinux для текущего сеанса:sudo shutdown -r now
-
Отключение SELinux
Вместо отключения SELinux настоятельно рекомендуется изменить режим на разрешающий. Отключите SELinux только тогда, когда это необходимо для правильной работы вашего приложения.
Выполните следующие шаги, чтобы навсегда отключить SELinux в вашей системе CentOS 8:
- Откройте
/etc/selinux/config
файл и изменитеSELINUX
значение наdisabled
:
/etc/selinux/config# This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of these three values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
- Откройте
- Сохраните файл и перезагрузите систему:
sudo shutdown -r now
- Когда система загружается, используйте
sestatus
команду, чтобы убедиться, что SELinux отключен:sestatus
Результат должен выглядеть так:
SELinux status: disabled