Как получить список всех контекстов SELinux

Мы можем получить доступ к средствам контроля безопасности, которые может поддерживать Security Enhanced Linux (SE), модуль безопасности ядра Linux, в операционной системе Linux. Он может быть использован функциями SELinux для предоставления контекстов безопасности процессам, запущенным в системных объектах, и файлам, существующим в каталогах.

Как перечислить контексты SELinux

Каждая операция и объект маркируются таким образом, что представляют собой метаданные защиты от угроз, которые запускают SELinux в системе. В этой статье мы рассмотрим различные методы составления списка всех контекстов SELinux в операционной системе Linux. Мы обсудим способы и команды для использования списка элементов для всей системы, а также инструменты командной строки и выбор, который осуществляется с помощью графического интерфейса пользователя.

Понимая существующую настройку контекста SELinux, мы можем решать проблемы SELinux и легко изменять контексты SELinux определенных ресурсов, что используется несколькими способами для перечисления контекстов SELinux. Мы можем быстро перечислить все контексты SELinux просто в системе Linux, используя описанные в этой статье методы. Мы можем контролировать безопасность нашей операционной системы, используя эту информацию. Метод "semanage" используется, если мы хотим просмотреть сразу все контексты процессов и документов SELinux.

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

Давайте посмотрим на работу команд, которые используются для перечисления контекста. Для этого нам нужно открыть терминал Linux, а затем добавить флаг "-Z" вместе с командой "ls". Команда "ls" используется для вывода списка любых данных. Она отображает содержимое каталога вместе с контекстом SELinux для каждого элемента. Команда выглядит следующим образом:

После завершения команды мы нажимаем Enter. На экране появится следующий результат в виде простого перечисления контекста, который используется в текущем каталоге:

ls -Z

Мы также можем выбрать любой другой каталог, передав его путь в качестве аргумента предыдущей команды вместе со слешем "/" и "etc" следующим образом:

После завершения команды она отобразит все запущенные процессы каталога в виде последовательного списка с контекстом файла.

ls -Z /etc

Команда "ls -Z" также может быть использована для быстрой проверки контекстов SELinux файлов и каталогов в любом запущенном текущем каталоге. Это особенно удобно для диагностики проблем SELinux, чтобы легко обнаружить файлы с неожиданными контекстами. Запущенный список расширенной безопасности далее перемещается и отображается вместе с процессом, который включает некоторые процессы Bash, Bluetooth, сеть, apport, legal и т.д.

Теперь мы используем команду "stat", которая может быть использована для отображения обширной информации о файле и контексте SELinux. Это может быть сделано путем печати метаданных файла и свойств, которые включают их временные метки и размер. Мы применим команду "stat" к текстовому файлу с именем "file.txt", который находится в каталоге рабочего стола, чтобы просмотреть его контекст SElinux. Ниже приведена команда для файла "file.txt" в каталоге рабочего стола:

Когда мы выполняем предыдущую команду на терминале, она отображает контекст файла вместе с именем, размером и устройством на выходном дисплее, как мы можем видеть в следующем виде:

stat file.txt

Теперь мы реализуем команду "find", которая также может быть использована в контексте SELinux для поиска файлов и каталогов, соответствующих заданным критериям имени, размера и разрешений. Эта команда имеет три интенсивные роли, включая "путь", "опцию" и "выражение". "Путь" определяет, где мы хотим искать файлы. В то время как "опции" изменяют поведение команды. А "выражение" ищет критерии для контекста SELinux. Теперь давайте запустим команду find в операционной системе Linux. Добавим в терминал следующую команду:

Эта команда находит и затем отображает все файлы, которые присутствуют в каталоге "etc", поскольку мы не указали для него никаких конкретных параметров. Затем эта команда выводит на экран терминала Linux следующий вывод с файлами и процессами, которые присутствуют, и показывает их в виде списка.

Теперь есть еще одно расширение для команды "find" для поиска вместе с пользователем, чтобы получить список контекста SELinux. Команда остается такой же, как и предыдущая, но она включает пользователя в команду "find", а не "etc" со слэшем. Для всех файлов, которые принадлежат пользователю нашей системы "Linux", мы используем следующую команду:

После выполнения этой команды, когда мы нажимаем кнопку ввода, на терминал выводится список всех процессов и файлов, работающих в операционной системе пользователя "root", как показано на следующем экране:

find -user root

Заключение

Мы обсудили процедуру или концепцию использования основных команд Linux для составления списка контекста SELinux. Для этого мы использовали команду "ls -Z" для листинга файлов и каталогов. Мы использовали команду "stat" для второго типа списка, чтобы найти файловую систему и файлы, которые присутствуют в рабочих папках, а также их размеры и разрешения. Последняя команда, которую мы использовали, это "find". Она используется для поиска и нахождения файлов, необходимых для выполнения определенного условия.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий