💾 Archived View for tilde.team › ~rami › redhat_selinux.gmi captured on 2023-12-28 at 16:13:05. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-01-29)

-=-=-=-=-=-=-

~Rami ₪ MANUALS

רמי

SUBJECT: SELinux: Установка, контроль событий и создание собственных политик

AUTHOR: Rami Rosenfeld

DATE: 12/09/22

TIME: 15.00

LANG: ru, en

LICENSE: GNU FDL 1.3

TAGS: gnu, gnome, software, opensource, linux, system, man, manual, bash, privacy, security, rhel, centos, mate, xfce, lxde, spin, de, systemd, systemctl, selinux, firewalld, dnf, rpm

SELinux: Установка, контроль событий и создание собственных политик

INTRO

Важно: Отключать SELinux или переводить его в режим "разрешено" категорически не рекомендуется!

NOTE

Установка контролирующих сервисов SELinux

Примечание: по большому счету, этот шаг можно пропустить, так как в RHEL, Fedora, CentOS они будут наличествовать по умолчанию, равно как и в Fedora Spins: MATE, XFCE. А вот LXDE - под вопросом, поэтому все же приведу данную информацию:

dnf install sealert seapplet setroubleshoot setroubleshoot-plugins setroubleshoot-server

Выполните команду:

sestatus

Результат:

SELinux status: enabled

SELinuxfs mount: /sys/fs/selinux

SELinux root directory: /etc/selinux

Loaded policy name: targeted

Current mode: enforcing

Mode from config file: enforcing

Policy MLS status: enabled

Policy deny_unknown status: allowed

Memory protection checking: actual (secure)

Max kernel policy version: 33

Создание собственных политик

При определенных пользовательских действиях в операционных системах с установленным и активированным SELinux возникают ситуации, когда последний блокирует те или иные попытки изменения ОС в соответствии с предустановленными контекстами безопасности. Об этом выдаст предупреждение система sealert/seapplet.

Гипотетический и опасный пример, требующий принятия экстренных мер: ваш любимый пасьянс "Три листочка" внезапно запросил для себя разрешений доступа к системе печати или соединения с интернетом (не волнуйтесь: sealert обязательно предупредит вас об этом). Конечно, такой ситуации в мире GNU/Linux не может быть в принципе, но все же...

Если вы уверены в правильности своих действий, контекст безопасности можно изменить на разрешающий при помощи двух простых команд.

Cразу после возникновения сообщения о запрете последовательно выполняем с правами администратора, т.е. от root:

grep chcon /var/log/audit/audit.log | audit2allow -M mypol

Результат:

"IMPORTANT. To make this policy package active, execute: semodule -i mypol.pp"

["ВАЖНО. Чтобы сделать эту политику активной, выполните: semodule -i mypol.pp"]

Далее создаем разрешающее правило:

semodule -i mypol.pp

Примечание: chcon - "change file SELinux security context".

Переопределение контекстных меток SELinux

Если вы, особенно после обновления или полного апгрейда ОС наблюдаете предупреждения, связанные с правилами SELinux, скорее всего, некоторые файлы имеют некорректные разрешения SELinux. Зачастую это связано с тем, что вы деактивировали SELinux ранее.

Для исправления SELinux-контекстов безопасности файлов выполните:

fixfiles -B onboot

Примечание: процесс произойдет во время перезагрузки ОС.

Подробнее см.:

Getting started with SELinux

Changing SELinux states and modes

Troubleshooting SELinux

SELinux Project Wiki

How-to guide for SELinux policy enforcement

Sysadmin's guide to SELinux

₪ Back to home ₪

🄯 Rami Rosenfeld, 2022. GNU FDL 1.3.