selinux(8)

ИМЯ
SELinux - Linux с улучшенной безопасностью от NSA (SELinux)

ОПИСАНИЕ
Linux с улучшенной безопасностью от NSA - это реализация гибкой архитектуры мандатного управления доступом в операционной системе Linux. Архитектура SELinux предоставляет общую поддержку использования различных видов политик мандатного управления доступом, включая основанные на концепциях Type Enforcement® (принудительное присвоение типов), Role-Based Access Control (управление доступом на основе ролей) и Multi-Level Security (многоуровневая безопасность). Дополнительная информация и техническая документация по SELinux доступна по адресу https://github.com/SELinuxProject.

Файл конфигурации /etc/selinux/config позволяет управлять включением и отключением SELinux и, если SELinux включён, устанавливать режим его работы - разрешительный или принудительный. Переменной SELINUX можно задать значение отключённой, разрешительной или принудительной, чтобы выбрать один из этих вариантов. Если выбрать отключение режима, код ядра и приложения SELinux будет полностью отключён, система будет работать без какой-либо защиты SELinux. При установке разрешительного режима код SELinux включён, но не выполняет отказы в доступе, а только журналирует те действия, которые были бы запрещены при принудительном режиме. При установке принудительного режима код SELinux включён, выполняет отказы в доступе и журналирует соответствующие попытки доступа. Набор отказов в доступе в разрешительном режиме может отличаться от этого набора в принудительном режиме как по причине того, что принудительный режим предотвращает дальнейшее выполнение операции после первого отказа, так и из-за того, что после получения отказа в доступе часть кода приложения вернётся к работе в менее привилегированном режиме.

Файл конфигурации /etc/selinux/config также управляет тем, какая политика активна в системе. SELinux позволяет установить в системе несколько политик, но одновременно можно использовать только одну из них. В настоящее время имеется несколько видов политики SELinux, например, целевая политика (targeted), политика многоуровневой безопасности (mls). Целевая политика позволяет большинству процессов пользователя выполняться без ограничений, помещая в отдельные домены безопасности, ограниченные политикой, только отдельные службы. Например, процессы пользователя выполняются в никак не ограниченном домене, в то время как именованная управляющая программа или управляющая программа apache будет выполняться в отдельном специально настроенном домене. Если используется политика MLS (Multi-Level Security), все процессы будут разделены по детально настроенным доменам безопасности и ограничены политикой. MLS также поддерживает модель Белла — Лападулы, в которой процессы ограничиваются не только по типу, но и по уровню данных.

Чтобы определить, какая политика будет выполняться, следует установить переменную среды SELINUXTYPE в /etc/selinux/config. Чтобы применить к системе изменение типа политики, необходимо перезагрузить систему и, возможно, повторно проставить метки. В каталогах /etc/selinux/{SELINUXTYPE}/ необходимо установить для каждой такой политики соответствующую конфигурацию.

Дальнейшую настройку отдельной политики SELinux можно выполнить с помощью набора настраиваемых при компиляции параметров и набора логических переключателей среды выполнения политики. system-config-selinux позволяет настроить эти логические переключатели и настраиваемые параметры.

Многие домены, которые защищены SELinux, также содержат man-страницы SELinux с информацией о настройке соответствующей политики.

ПРОСТАВЛЕНИЕ МЕТОК ДЛЯ ФАЙЛОВ
Всем файлам, каталогам, устройствам ... назначены контексты безопасности/метки. Эти контексты хранятся в расширенных атрибутах файловой системы. Проблемы с SELinux часто возникают из-за неправильного проставления меток в файловой системе. Это может быть вызвано загрузкой компьютера с ядром, отличным от SELinux. Появление сообщения об ошибке, содержащего file_t, обычно означает серьёзную проблему с проставлением меток в файловой системе.

Лучшим способом повторного проставления меток в файловой системе является создание файла флага /.autorelabel и последующая перезагрузка. system-config-selinux также имеет эту функциональность. Кроме того, для повторного проставления меток для файлов можно использовать команды restorecon/fixfiles.

ФАЙЛЫ
/etc/selinux/config

СМОТРИТЕ ТАКЖЕ
booleans(8), setsebool(8), sepolicy(8), system-config-selinux(8), togglesebool(8), restorecon(8), fixfiles(8), setfiles(8), semanage(8), sepolicy(8)

Для каждой ограниченной службы в системе имеется man-cтраница следующего формата:

<servicename>_selinux(8)

Например, для службы httpd имеется страница httpd_selinux(8).

man -k selinux

Выведет список всех man-страниц SELinux.

АВТОРЫ
Эта страница руководства была написана Dan Walsh <dwalsh@redhat.com>. Перевод на русский язык выполнила Герасименко Олеся <gammaray@basealt.ru>.