Преди да започнете, ще трябва да научите следните понятия:
Теми: процеси или потребители.
Обекти: файлове или файлови системи.
Изпълнение на типа: на SELinux всички субекти и обекти имат идентификатор на тип, завършващ с _t. „Изпълнението на типа е идеята, че в задължителна система за контрол на достъпа достъпът се управлява чрез разрешаване въз основа на набор от правила за обект-достъп-обект.
В SELinux изпълнението на типа се реализира въз основа на етикетите на обектите и обектите. SELinux сам по себе си няма правила, които да казват / bin / bash може да изпълни / bin / ls. Вместо това има правила, подобни на „Процесите с етикет user_t могат да изпълняват обикновени файлове с етикет bin_t.”(Източник https: // wiki.gentoo.org / wiki / SELinux / Type_enforcement)
Дискреционен контрол на достъпа (DAC): DAC е системата за собственост и разрешения, която използваме в Linux за управление на достъпа до обекти като файлове или директории. Дискреционният контрол на достъпа няма нищо общо със SELinux и е различен защитен слой. За допълнителна информация относно DAC посетете обяснените разрешения на Linux.
Задължителен контрол на достъпа (MAC): е вид контрол на достъпа, който ограничава взаимодействието на достъпа на субекти с обекти. За разлика от DAC с MAC потребителите не могат да променят политиките.
Субектите и обектите имат контекст на защита (атрибути на защитата), наблюдаван от SELinux и администриран в съответствие с политиките за сигурност, създадени от правила, които трябва да бъдат приложени.
Ролеви контрол на достъпа (RBAC): е вид контрол на достъпа, базиран на роли, може да се комбинира както с MAC, така и с DAC. Политиките на RBAC улесняват управлението на много потребители в организацията за разлика от DAC, който може да извлече при индивидуални задания за разрешения, улеснява одита, конфигурацията и актуализациите на политиките.
Налагащ режим: SELinux ограничава достъпа на субекти до обекти въз основа на политики.
Разрешителен режим: SELinux регистрира само незаконна дейност.
Функциите на SELinux включват (списък на Wikipedia):
- Чисто разделяне на политиката от прилагането
- Добре дефинирани политически интерфейси
- Поддръжка за приложения, заявяващи политиката и налагащи контрол на достъпа (например, кронд изпълняващи се задачи в правилния контекст)
- Независимост на конкретни политики и политически езици
- Независимост на специфични формати и съдържание на етикети за сигурност
- Индивидуални етикети и контроли за обекти и услуги на ядрото
- Подкрепа за промени в политиката
- Отделни мерки за защита на целостта на системата (тип домейн) и поверителността на данните (многостепенна сигурност)
- Гъвкава политика
- Контролира инициализацията на процеса и наследяването и изпълнението на програмата
- Контролира файловите системи, директориите, файловете и отварянето дескриптори на файлове
- Контролира сокети, съобщения и мрежови интерфейси
- Контрол върху използването на „възможности“
- Кеширана информация за решения за достъп чрез кеша за вектор на достъп (AVC)
- По подразбиране-отказ политика (всичко, което не е изрично посочено в политиката, е забранено).
Източник: https: // en.wikipedia.org / wiki / Security-Enhanced_Linux # Характеристики
Забележка: потребителите са различни в SELinux и passwd.
Настройване на SELinux на Debian 10 Buster
В моя случай SELinux беше деактивиран на Debian 10 Buster. Поддържането на активиран SELinux е една от основните стъпки за осигуряване на безопасност на устройство с Linux. За да разберете състоянието на SELinux във вашето устройство, изпълнете командата:
/ # sestatus
Открих, че SELinux е деактивиран, за да го активирате, трябва да инсталирате някои пакети преди, след подходяща актуализация, изпълнете командата:
/ # apt инсталирайте selinux-basics selinux-policy-default
При поискване натиснете Y за да продължите инсталационния процес. Бягай подходяща актуализация след приключване на инсталацията.
За да активирате SELinux, изпълнете следната команда:
/ # selinux-activate
Както можете да видите, SELinux беше правилно активиран. За да приложите всички промени, трябва да рестартирате системата си, както е указано.
Командата getenforce може да се използва за научаване на състоянието на SELinux, ако е в разрешителен или налагащ режим:
/ # getenforce
Разрешителният режим може да бъде заменен чрез задаване на параметъра 1 (разрешителното е 0). Можете също да проверите режима на конфигурационния файл с помощта на командата по-малко:
/ # по-малко / etc / selinux / config
Изход:
Както можете да видите конфигурационните файлове показват разрешителния режим. Натиснете Въпрос: да напусне.
За да видите контекст на защита на файл или процес, можете да използвате флага -Z:
/ # ls -Z
Форматът на етикета е потребител: роля: тип: ниво.
semanage - Инструмент за управление на политики на SELinux
semanage е инструментът за управление на политиките на SELinux. Позволява да се управляват булеви числа (които позволяват да се променя процесът в движение), потребителски роли и нива, мрежови интерфейси, модули на политики и други. Semanage позволява да конфигурирате политики на SELinux, без да е необходимо да компилирате източници. Semanage позволява връзката между потребителите на операционната система и SELinux и някои контексти на сигурността на обектите.
За допълнителна информация относно семенадж посетете ръководството на адрес: https: // linux.умре.net / man / 8 / semanage
Заключение и бележки
SELinux е допълнителен начин за администриране на достъпа от процеси до системни ресурси като файлове, дялове, директории и т.н. Тя позволява да се управляват масивни привилегии според ролята, нивото или типа. Активирането му е задължително като мярка за сигурност и при използването му е важно да запомните нейния защитен слой и да рестартирате системата след активиране или деактивиране (деактивирането изобщо не се препоръчва, с изключение на специфични тестове). Понякога достъпът до файл се блокира въпреки разрешенията за системата или ОС, тъй като SELinux го забранява.
Надявам се, че тази статия за SELinux ви е била полезна, тъй като въведете това решение за сигурност, продължете да следвате LinuxHint за повече съвети и актуализации за Linux и мрежи.
Свързани статии:
- SELinux за урок за Ubuntu
- Как да деактивирам SELinux на CentOS 7
- Контролен списък за укрепване на сигурността на Linux
- Профили на AppArmor в Ubuntu