Как проверить, включен ли SELinux в Linux

LinuxLinuxBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии (лабораторной работе) вы научитесь проверять статус и настройки SELinux на системе Linux. SELinux - это важный механизм безопасности, который обеспечивает обязательный контроль доступа.

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


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") subgraph Lab Skills linux/echo -.-> lab-558802{{"Как проверить, включен ли SELinux в Linux"}} linux/cat -.-> lab-558802{{"Как проверить, включен ли SELinux в Linux"}} end

Проверка статуса SELinux с помощью команды sestatus

На этом этапе вы научитесь проверять статус SELinux на своей системе. SELinux (Security-Enhanced Linux) - это механизм безопасности, который обеспечивает обязательный контроль доступа (MAC, mandatory access control) для процессов и ресурсов. Он добавляет дополнительный уровень безопасности поверх традиционного дискреционного контроля доступа (DAC, discretionary access control).

Для проверки текущего статуса SELinux используется команда sestatus. Эта команда предоставляет сводку о конфигурации SELinux и его текущем состоянии.

Если терминал еще не открыт, откройте его. Для этого нажмите на значок Xfce Terminal слева на рабочем столе.

Теперь введите следующую команду в терминал и нажмите Enter:

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 version:                 ...
Policy load time:               ...

Разберем важные части вывода:

  • SELinux status: Указывает, включен ли SELinux на системе или выключен.
  • Current mode: Показывает текущий режим работы SELinux. Общими режимами являются enforcing, permissive и disabled.
  • Mode from config file: Показывает режим, установленный в файле конфигурации SELinux (/etc/selinux/config).

В этом выводе SELinux status: enabled означает, что SELinux активен, а Current mode: enforcing означает, что SELinux активно применяет свои политики безопасности.

Понимание статуса SELinux является первым шагом в управлении его поведением.

Нажмите Continue (Продолжить), чтобы перейти к следующему шагу.

Проверка конфигурации SELinux с помощью команды cat /etc/selinux/config

На предыдущем этапе вы проверили текущий статус SELinux с помощью команды sestatus. Теперь давайте посмотрим на файл конфигурации, который определяет поведение SELinux по умолчанию.

Основной файл конфигурации SELinux находится по пути /etc/selinux/config. Мы можем просмотреть содержимое этого файла с помощью команды cat. Команда cat используется для отображения содержимого файлов.

Введите следующую команду в терминале и нажмите Enter:

cat /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=enforcing
## SELINUXTYPE= can take one of these three values:
##     targeted - Targeted processes are protected,
##               for more information see selinux-policy-targeted(8)
##     strict - Full SELinux protection, see selinux-policy(8)
##     mls - Multi-Level Security protection.
SELINUXTYPE=targeted

В этом файле вы настраиваете режим SELinux по умолчанию (SELINUX=) и тип политики (SELINUXTYPE=).

  • SELINUX=enforcing: Эта строка указывает, что система настроена на запуск в режиме enforcing по умолчанию.
  • SELINUXTYPE=targeted: Эта строка указывает, что используется политика targeted. Политика targeted является самой распространенной и защищает определенные системные процессы.

Настройки в этом файле обычно применяются при загрузке системы. Хотя вы можете временно изменить текущий режим (мы рассмотрим это на следующем этапе), изменения, внесенные в /etc/selinux/config, требуют перезагрузки системы для полного вступления в силу.

Понимание файла конфигурации помогает понять, какое состояние SELinux предполагается для системы.

Нажмите Continue (Продолжить), чтобы перейти к следующему этапу.

Проверка режима SELinux с помощью команды getenforce

На предыдущих этапах вы использовали команду sestatus для получения подробного обзора SELinux и команду cat /etc/selinux/config для просмотра конфигурации по умолчанию. Теперь давайте используем более простую команду getenforce для быстрой проверки текущего режима работы SELinux.

Команда getenforce специально разработана для вывода только текущего режима работы SELinux. Это полезно для быстрой проверки без необходимости выводить полный отчет, как в случае с командой sestatus.

Введите следующую команду в терминале и нажмите Enter:

getenforce

Вы должны увидеть вывод, похожий на следующий:

Enforcing

Вывод может быть одним из следующих:

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

В данном случае вывод Enforcing подтверждает, что SELinux в настоящее время работает в режиме Enforcing, что соответствует тому, что мы увидели с помощью команды sestatus.

Команда getenforce - это удобный инструмент для быстрой проверки статуса SELinux.

Нажмите Continue (Продолжить), чтобы завершить этот практический урок.

Резюме

В этом практическом уроке вы узнали, как проверить статус SELinux на системе Linux. Вы использовали команду sestatus для получения сводки о конфигурации SELinux, включая информацию о том, включен ли он, текущий режим работы (enforcing, permissive или disabled) и режим, заданный в файле конфигурации.

Вы также узнали, как проверить конфигурацию SELinux, просматривая файл /etc/selinux/config с помощью команды cat, которая показывает режим SELinux по умолчанию, который будет применен при загрузке системы. Наконец, вы использовали команду getenforce для быстрой проверки текущего режима работы SELinux. Эти шаги предоставляют важные методы для понимания текущего состояния и конфигурации SELinux.