Тотальный контроль над пингвином Денис Колисниченко Хакер, номер #091, стр. 091-112-4 * enforcing - применить политику безопасности SELinux * permissive - режим отладки (вместо запрета тех или иных операций SELinux будет просто выводить предупреждения) * disabled - SELinux отключена Для второй директивы возможны два значения: * targeted - будут защищены только целевые сетевые демоны (которые будут явно указаны) * strict - полная защита Если тебе нужна полная защита, установи пакет selinux-policy-strict. Данный пакет находится на первом CD ASPLinux 11. Со второго компакта я бы посоветовал установить пакет selinux-doc. Дополнительная документация никогда не помешает. Для аудита политик SELinux используется программа seaudit, но при запуске мы получаем сообщение, что не установлена политика по умолчанию. Интересно то, что на дистрибутивных дисках я так и не нашел пакет policy, содержащий эту дефолтную политику. Пришлось качнуть его из интернета: ftp://rpmfind.net/linux/ASPLinux/i386/RPMS.10/policy-1.11.3-3.noarch.rpm. Выбор роли Роль имеет большое значение, ведь у каждой роли свои полномочия. Например, sysadm_r полномочий намного больше, чем у user_r, поэтому нужно знать, как можно изменить роль. Хотя, с другой стороны, у targeted, в которой мы сейчас работаем, роли пользователей особого интереса не представляют, поскольку осуществляется защита только выбранных сетевых демонов. Но о команде newrole сказать все-таки нужно. Ее синтаксис следующий: «newrole -r роль». Например: # newrole -r sysadm_r После этого нужно будет ввести пароль для сущности (пароль пользователя). Если нет прав доступа к указанной роли, ты увидишь сообщение: den:sysadm_r:sysadm_t is not a valid context В этом случае указывается, что сущность den не имеет права доступа к роли sysadm_r. Псевдофайловая система /selinux При запуске системы с поддержкой SELinux в корне появится каталог /selinux - это псевдофайловая система SELinux (наподобие /proc). С помощью этой ФС можно изменять некоторые параметры SELinux, например режим работы. Как уже было отмечено, есть два режима работы: разрешающий (permissive) и принудительный (enforcing). В первом режиме SELinux только ругается, и ОС работает так же, как и обычная Linux-система, без SELinux, а во втором случае применяются все настроенные политики. Отладочные сообщения в разрешающем режиме протоколируются в файл /var/log/messages. Для переключения в принудительный режим используется команда: # echo "1" > /etc/selinux/enforce Для перехода в разрешающий режим используется команда: # echo "0" > /etc/selinux/enforce Разборки с пользователями Лучше добавить всех необходимых пользователей в систему до включения SELinux, но бывают такие случаи, когда сделать это просто невозможно (например, система работает продолжительное время, и все пользователи давно заведены). Если SELinux уже активна, то для добавления нового пользователя нужно выполнить следующий набор команд. Становимся администратором: $ su Входим в роль sysadm_r: # newrole -r sysadm_r Добавляем нового пользователя: |