Налаштування selinux
Security-Enhanced Linux (SELinux) - це новий метод контролю доступу в Linux на основі модуля ядра Linux Security (LSM). SELinux включений за замовчуванням в багатьох дистрибутивах на основі Red Hat, що використовують пакетну базу rpm, наприклад, Fedora, CentOS, OpenSUSE і т д.
Відео: Firewall and selinux in RHEL 6.1
У цій статті буде розглянута настройка SELinux, ми не будемо чіпати створення нових політик, а постараємося підійти до системи з іншого боку, подивитися чим вона може бути корисна звичайному користувачеві Linux, розглянемо основи її роботи, включення, відключення і зміна станів.
основи SELinux
SELinux являє собою систему маркування, кожен процес має мітку. Кожен файл, каталог або навіть користувач в системі має мітку. Навіть портів та пристроїв і іменах хостів в системі присвоєні мітки. SELinux визначає правила доступу процесу до об`єктів з певними мітками. Це і називається політикою. За дотриманням правил стежить ядро. Іноді це ще називається обов`язковий контроль доступу (Mandatory Access Control, MAC)
Власник файлу не має повної свободи дій над атрибутами безпеки. Стандартні атрибути контролю доступу, такі як група і власник нічого не значать для SELinux. Повністю все управляється мітками. Значення атрибутів можуть бути встановлені і без прав root, але на це потрібно мати спеціальні повноваження SELinux.
Тепер поговоримо трохи про політиків. Ми визначаємо мітку для процесів певного типу, а також на об`єкти файлової системи теж певного типу. Ось уявіть, собі систему, в якій об`єкти (процеси) це кішки і собаки. Це типи процесів. І у нас є об`єкти, до яких вони хочуть мати доступ - їжа. Але їжа у них різна еда_котов і еда_собак. Потрібно щоб об`єкти мали доступ тільки до своєї їжі.
Відео: SELinux Essentials + RHCE (TOPIC)
У собаки є дозвіл з`їсти власну вечерю, а у кішки - свою. В політиках SELinux це буде виглядати ось так:
$ Sudo apt-get install selinux
Після завершення установки, систему необхідно буде перезавантажити для застосування всіх налаштувань, оскільки буде перезаписан файл конфігурації Grub, для передачі необхідних параметрів ядру.
Після перезавантаження ми можемо подивитися стан SELinux:
SELinux status: enabledSELinuxfs mount: / sys / fs / selinux
SELinux root directory: / etc / selinux
Loaded policy name: ubuntu
Current mode: permissive
Mode from config file: permissive
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 29
Тут ми бачимо, що система включена SELinux status: enabled, Поточний режим Current mode - permissive, тобто ми будемо тільки отримувати повідомлення про порушення в балці. Використовувана зараз політика - Ubuntu.
Зараз давайте включимо активний режим, для цього виконайте команду:
$ Sudo setenforce 0Подивитися використовуваний зараз режим теж можна подібної командою:
$ Sudo vi / etc / selinux / configЦей параметр означає режим роботи SELinux, ви можете вказати тут один з трьох параметрів enforce, permissive і disabled
SELINUXTYPE = ubuntuВи можете посилатися на будь-яку політику, розташовану в каталозі / etc / selinux.
Відео: CentOS: Disable SELinux
Можуть використовуватися три основні політики:
- targeted (Або тут ubuntu) захищає основні системні сервіси, наприклад, веб-сервер, DHCP, DNS, але не чіпає всі інші програми.
- minimum - це політика для експериментів, заснована на targeted, але її правила не включені за замовчуванням, ви можете ввімкнути або вимкнути коли потрібно також часто використовується на мобільних пристроях.
- strict - найсуворіша політика, управляє не тільки мережевими службами, а й програмами користувача.
- mls - містить не тільки правила, а й різні рівні безпеки. Вона дозволяє реалізувати багаторівневу систему безпеки на основі SELinux.
Політики в Ubuntu необхідно встановлювати окремо, для targeted і strict встановіть пакет:
$ Sudo vi ~ / .autolabelХочете відчути всю міць і заодно недоліки SELinux? Встановіть значення SELINUXTYPE в strict, щоб перезапустити систему:
$ Sudo semoule -r unconfinedПотім запускаємо активний режим:
- Команда label - робота з мітками томів в windows
- Мтчелл м. - програмування для linux. Професійний підхід
- Налаштування сервера centos 7 після установки
- Кращі консольні браузери для linux
- Кращі arm linux дистрибутиви
- Кращі дистрибутиви linux для новачка
- Великий огляд red hat linux
- 5 Команд linux для початківців
- Що нового в linux kernel 4.9
- Віруси і linux
- Налаштування udev rules в linux
- Налаштування мережі opensuse
- Віртуальна флешка в linux
- Лінус торвальдс повідомив про перший релізі linux 4.6 rc1
- 5 Міфів про контейнерах linux
- Модулі ядра linux
- Корисні alias linux
- Системи ініціалізації linux
- Налаштування apparmor в ubuntu 16.04
- Оновлення ядра linux до нової версії
- Список процесів linux