Управление метками портов SELinux

Red Hat Enterprise LinuxIntermediate
Практиковаться сейчас

Введение

Security-Enhanced Linux (SELinux) — это важнейший механизм безопасности в Red Hat Enterprise Linux, который реализует политику принудительного управления доступом (MAC). Ключевым аспектом этой системы является маркировка (labeling), которая распространяется и на сетевые порты. Назначая портам определенные метки SELinux, вы можете контролировать, каким службам разрешено привязываться к ним.

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

Управление метками портов SELinux

Представьте, что вы системный администратор, которому необходимо настроить веб-сервер для работы на нестандартном порту 8081. По умолчанию SELinux запретит процессу веб-сервера (например, httpd) привязку к этому порту, так как у порта отсутствует правильная метка SELinux. Ваша задача — использовать утилиту semanage, чтобы временно добавить нужную метку порту 8081, а затем удалить её.

Задачи

  • Просмотреть существующие метки портов SELinux, связанные с HTTP-службой.
  • Добавить новое правило для маркировки TCP-порта 8081 типом http_port_t, что позволит веб-серверам использовать его.
  • После подтверждения работы нового правила удалите пользовательское правило для TCP-порта 8081, чтобы откатить изменения.

Требования

  • Все команды должны выполняться от имени пользователя labex. Используйте sudo там, где требуются права администратора.
  • Все операции должны выполняться в директории /home/labex.
  • Для управления метками портов SELinux необходимо использовать команду semanage.

Пример

Перед добавлением новой метки порта запрос для http_port_t покажет порты по умолчанию:

## sudo semanage port -l | grep http_port_t
http_port_t                    tcp      80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t            tcp      5988

После добавления правила для порта 8081 вывод должен включать новый порт:

## sudo semanage port -l | grep http_port_t
http_port_t                    tcp      8081, 80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t            tcp      5988

Резюме

В этом испытании вы освоили основные операции по управлению метками сетевых портов SELinux. Вы научились использовать команду semanage port для просмотра существующих политик, добавления новых определений портов с помощью semanage port -a и их удаления с помощью semanage port -d. Правильная маркировка портов является критически важным навыком для безопасного развертывания сетевых служб в системах с включенным SELinux, таких как Red Hat Enterprise Linux.

✨ Проверить решение и практиковаться