selinux(8) | Документация по командной строке SELinux | 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>.
29 апреля 2005 | dwalsh@redhat.com |