• Narrow screen resolution
  • Wide screen resolution
  • Wide screen resolution
OOPS. Your Flash player is missing or outdated.Click here to update your player so you can see this content.
Главная Linux Использование утилиты SELinux Troubleshooting Tool
Использование утилиты SELinux Troubleshooting Tool Печать E-mail
Рейтинг пользователей: / 0
ХудшийЛучший 
Автор: Administrator   

5.1.2. Использование утилиты SELinux Troubleshooting Tool


По умолчанию система SELinux посылает служебные сообщения в файл /var/log/messages если не используется система аудита событий. Если используется система аудита событий, то данные события записываются в файл /var/Iog/audit/audit.log. События SELinux помечаются меткой AVC, поэтому их легко определить среди других событий. Для анализа данных событий в ОС Linux используется утилита SELinux Troubleshooting Tool, для использования которой необходимо установить пакет setroubleshoot.
Демон setroubleshootd, входящий в состав данного пакета используется для запуска процесса анализа. Все данные анализа журналируются в файл /var/log/setroubleshootd.log. Для просмотра результатов работы анализа необходимо запустить утилиут SELinux Troubleshooting Tool из меню Administration -> SELinux Troubleshooting.

Работа с контекстами безопасности

Когда механизм SELinux активизирован в системе, все объекты файловой системы имеют контекст безопасности. Ядро разрешает доступ процесса к объекту только если данный тип доступа разрешен политикой SELinux. Политика SELinux в свою очередь, для управления доступом к объектам файловой системы, помечает каждый файл при помощи контекста безопасности.
Алгоритм работы механизма SELinux заключается в следующем. Если приложение выполняет попытку доступа к объекту, например, файлу или сокету, то механизм SELinux проверяет в ядре кэш вектора доступа (Access Vector Cache (AVC)), в котором находятся кэшированные данные о правах доступа к объекту. Если решение по контролю доступа не может быть сделано на основе данных кэша AVC, то проверяется контекст безопасности приложения и самого объекта. На основании контента безопасности приложения и самого объекта решается вопрос о предоставлении или запрете прав доступа приложения к данному объекту. В результате данной проверки в журнале /var/log/messages, в случае запрета доступа к объекту, будет выведено сообщение, содержащее строку avc: denied.
Контекст безопасности для процессов, например, таких как httpd имеет вид httpdt. Контекст безопасности для файлов называется файловым контекстом и записывается в расширенных атрибутах файла. Файловый контекст имеет четыре поля, разделенных символом двоеточия:

user:role:type:mis

В поле user указывается пользователь, который создал данный файл. Поле role определяет роль объекта или файла. Поле type определяет правило, ассоциированное с данным объектом. До тех пор пока не будет использована политика MLS, четвертое поле не используется. Пример файлового контекста в случае использования политики targeted имеет следующий вид:

system_u:object_r:etc_r

В данном примере файл идентифицируется в поле system_u. Данный файл является объектом, помеченным меткой object_r, и подчиняется правилу etc_r, так как данный файл содержится в каталоге /etc.
Для просмотра файлового контекста объектов файловой системы используется команда Is -Z. Для просмотра контекста безопасности процессов используется команда ps -Z.


-rw-r--r—          root    root       system_u:object_r:etc_t:sO                              apmd
drwxr-xr-x        root    root       system_u:object_r:etc_t:sO                              apm-scripts
-rw-r-----      ----root    root       system_u:object_r:etc_t:sO                              auditd
-rw-r--r—          root    root       system_u:object_r:etc_t:sO                              authconfig
-rw-r--r--           root    root       system_u:object_r:etc_t:sO                              autofs
-rw-r--r—          root    root       system_u:object_r:etc_t:sO                              bluetooth


Листинг 5.1. Файловые контексты при просмотре содержимого каталога /etc/sysconfig


В процессе копирования файлов для указания их контекста безопасности используется следующая команда:

ср -Z <context> file <путь_к_файлу>

Если ключ -z указан не будет, то для копируемого файла создастся новый контекст безопасности на основе процесса, который его создал и каталога, в котором находится созданный файл. При использовании команды mv контекст безопасности файла сохраняется. Если необходимо изменить контекст безопасности для перемещенного файла, то следует использовать следующую команду:

chcon <контекст> <имя_файла>

После того, как контекст безопасности для файла будет изменен, необходимо в этом убедиться, используя команду
secon -f <имя_файла>.

 

 

Добавить комментарий


Защитный код
Обновить


Авторизация


Новости с OpenNet

Проект OpenNET

Карта сайтаПартнеры