Как отключить SELinux на CentOS 8

Как отключить SELinux на CentOS 8

4 Января 2020 | CentOS

В этом руководстве мы объясним, как отключить SELinux в CentOS 8.

Как отключить SELinux на CentOS 8

Enhanced Security Linux или SELinux - это механизм безопасности, встроенный в ядро ​​Linux, используемый дистрибутивами на основе RHEL.

SELinux добавляет дополнительный уровень безопасности в систему, позволяя администраторам и пользователям контролировать доступ к объектам на основе правил политики.

Правила политики SELinux определяют, как процессы и пользователи взаимодействуют друг с другом, а также как процессы и пользователи взаимодействуют с файлами. Когда нет правила, явно разрешающего доступ к объекту, например, процессу, открывающему файл, доступ запрещается.

SELinux имеет три режима работы:

  • Enforcing - Принудительный: SELinux разрешает доступ на основе правил политики SELinux.
  • Permissive - Разрешающий: SELinux регистрирует только те действия, которые были бы запрещены, если бы они выполнялись в принудительном режиме. Этот режим полезен для отладки и создания новых правил политики.
  • Disabled - Отключено: политика SELinux не загружена, а сообщения не зарегистрированы.

По умолчанию в CentOS 8 SELinux включен и находится в принудительном режиме Enforcing. Настоятельно рекомендуется поддерживать SELinux в принудительном режиме. Однако иногда это может мешать работе какого-либо приложения, и вам необходимо установить его в разрешающий режим или полностью отключить.

Только пользователь 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 на Permissive

Когда SELinux включен, он может находиться в принудительном. Вы можете временно изменить режим с целевого на разрешающий с помощью следующей команды:

sudo setenforce 0

Однако это изменение действительно только для текущего сеанса времени выполнения и не сохраняется между перезагрузками.

Чтобы навсегда установить режим SELinux разрешающим, выполните следующие действия:

  1. Откройте /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

  2. Сохраните файл и выполните setenforce 0 команду, чтобы изменить режим SELinux для текущего сеанса:

    sudo shutdown -r now


Отключение SELinux 

Вместо отключения SELinux настоятельно рекомендуется изменить режим на разрешающий. Отключайте SELinux только тогда, когда это требуется для правильного функционирования вашего приложения.

Выполните следующие действия, чтобы навсегда отключить SELinux в вашей системе CentOS 8:

  1. Откройте /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
    копия
  2. Сохраните файл и перезагрузите систему:

    sudo shutdown -r now
    
    
  3. Когда система загрузится, используйте sestatusкоманду, чтобы убедиться, что SELinux отключен:

    sestatus
    
    

    Вывод должен выглядеть так:

    SELinux status:                 disabled
    
    


Вывод 

SELinux - это механизм защиты системы путем реализации обязательного контроля доступа (MAC). SELinux по умолчанию включен в системах CentOS 8, но его можно отключить, отредактировав файл конфигурации и перезагрузив систему.

Чтобы узнать больше о мощных функциях SELinux, посетите руководство CentOS SELinux .

    Комментарии

    Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.

Загрузка комментариев...