SELinux - это относительно новая подсистема ядра, разработанная агентством национальной безопасности США для улучшения безопасности операционных систем на базе ядра Linux. SELinux создаёт свои атрибуты контроля доступа для файлов и папок, а также позволяет указывать, каким программам можно иметь к ним доступ.
Таким образом, можно обезопасить систему от взлома, даже если злоумышленнику удастся взломать одну из запущенных программ, то он сможет получить доступ только к файлам, которые может открывать уязвимая программа. Так сложилось, что SELinux чаще всего используется в CentOS, а в Ubuntu больше применяется другая система - AppArrmor. Использование SELinux не всегда целесообразно, поскольку настройка системы с включённой системой безопасности усложняется в разы. Поэтому мы в этой статье разберём, как отключить SELinux CentOS 7.
Как отключить SELinux в CentOS
SELinux может работать в нескольких режимах:
- Enforcing - система безопасности запущена и работает, все попытки доступа к файлам, для которых не созданы разрешающие правила, блокируются;
- Permissive - система запущена и работает, но при попытке несанкционированного доступа к файлам, доступ не блокируется, а всего лишь заносится об этом запись в системный журнал. Это режим для отладки правил;
- Disabled - система полностью отключена и не работает.
Также есть несколько политик работы системы безопасности. По умолчанию SELinux в CentOS включена и работает согласно политике targeted. Это значит, что SELinux будет управлять только теми приложениями, для которых созданы правила. Все приложения, для которых правила не созданы, будут работать без ограничений. Этот принцип чем-то похож на работу AppArrmor. Существует также политика strict, это самая строгая политика, которая запрещает доступ ко всему, что не разрешено. Прочитать подробнее обо всём этом можно в статье настройка SELinux.
Сначала необходимо посмотреть текущее состояние SELinux в системе:
sestatus
Здесь мы видим, что SELinux включён (enforcing) и использует политику targeted.
Если у вас используется политика strict, и вы не хотите полностью отключать SELinux, но хотите, чтобы система трогала ваши программы, то можно переключить политику на targeted. Для этого откройте файл /etc/selinux/config и в строке SELINUXTYPE установите значение targeted:
sudo vi /etc/selinux/config
Чтобы изменения применились, систему надо перезагрузить. Переключить SELinux в режим permissive, когда система будет только предупреждать о несанкционированном доступе, можно, выполнив команду в терминале:
sudo setenforce 0
Но она будет действовать только до перезагрузки. Чтобы изменение действовало всегда, нужно изменить режим в конфигурационном файле /etc/selinux/config:
sudo vi /etc/selinux/config
Чтобы отключить SELinux CentOS 7 полностью, откройте файл /etc/selinux/config и замените значение enforcing в параметре SELinux на disabled:
sudo vi /etc/selinux/config
Теперь можно перезагружать компьютер, и SELinux будет отключена. Также можно отключить SELinux через Grub, это может быть полезно, например, если вы не можете загрузить систему из-за неправильно настроенного SELinux. Для этого достаточно добавить параметр ядра selinux=0.
Откройте конфигурационный файл grub - /boot/grub/grub.cfg и найдите там строчку запуска ядра, она начинается с linux... В её конец нужно добавить параметр:
sudo vi /boot/grub/grub.cfg
Этот способ также удобен тем, что вы можете нажать кнопку E в меню Grub и внести все изменения на ходу перед загрузкой системы.
Выводы
В этой небольшой статье мы разобрали, как отключить SELinux в CentOS 7. Это система безопасности, поэтому подумайте перед тем, как сделать это. Отключение SELinux CentOS 7 - это последний вариант и самое простое решение. Но, возможно, лучше всё настроить, чтобы сервер был более безопасным.
Какая безопасность от targeted, если всё новое ПО будет работать без ограничений? Особенно "нравится" эта ситуация, когда в результате автообновления что-то пошло не так и защиты не стало или ОС легла... И чем собственно selinux сможет защитить в такой ситуации: имеем некий системный файл, доступ к которому имеют несколько программ по selinux, вот взломали одну из программ и изменили этот самый системный файл, Вы наивно предпологаете, что для других программ он останется неизменным?
Лучше расскажите, как полностью выпилить эту каку из ядра Линукс, чтоб бесполезно не расходовала ресурсы не особо мощного процессора моего ПК.
Всех с НОВЫМ ГОДОМ! Простите, а кроме CentOS, когда что-либо появится? Или на этой системе свет клином сошелся или это сейчас любимое блюдо Админа? Есть, например, еще KDE Neon - отличная система, но по которой много вопросов, например - добавление прав Администратора в Dolphin - многим это было бы интересно, так, как ранее существовавшие плагины уже не работают! )))))
С Новым Годом. У меня вопрос - причем тут кде неон к центос? не нравится не читай, что за тупая манера писать срань не относимую к теме.... и если уж нужна инфа по кде неону ну так гугл все знает, в чем проблема пробить нужную инфу?
В гугле нужной инфы нет! Это первое. Все, что есть - уже не работает! Без такого дельного совета просто не догадался бы! И обращался я не к тебе и, даже извинения попросил, вежливый ты наш )))
А команда kdesu dolphin & exit не подойдет? Нужен пункт в меню?
Добрый день! Может здесь кто ответит.
Установил centos на рабочей машине, после ввода пароля в первый раз на экране gdm3 машина перезагружается. После перезагрузки до ввода пароля не доходит, перезагружается сразу после загрузочного экрана. Даже в консоль не перейти не посмотреть, что упало.
Грешу на амд видеокарту, ибо моник гаснет.
С дебианом на этой машине проблем не было, но нужен centos. В гугле тишина.
Заранее спасибо.
А в GRUB нет recovery mode, чтоб в консольном режиме запустить?
админы, давайте Ubuntu опять поустанавливаем вместо CentOS-а... вот на скриншоте Ubuntu или Lubuntu? вроде Ubuntu а как туда LXDE впихнули?
sudo apt-get install lxde
не не катит. на скриншоте голая lxde, других окружений нет, и минимальная система, видно по менюхе. предложенная вами команда вывалит кучу зависимостей. не годится. другие предложения?
ftp://services.anyathome.be/linux/iso-builder-perso/ubuntu-18.04.0-unity-06.07.2018/ubuntu-18.04.0-unity-06.07.2018.iso и не парься. нахудой конец нет инстал сделай под себя заточи. https://pkgs.org/ найдёшь что хочешь в дебе. Становится всё. Хватит дрочить. Мозги включайте.
Мишаня умный, только шутит криво... Миха, ну что за лексика - дрочить... не парься... тьфу! какаяж хрень у вас в ментале....
на скриншоте система установлена из mini.iso с необходимым и достаточным набором зависимостей и активным использованием опции --no-install-recommends. на скриншоте показано начальное состояние в процессе доводки...
Другие окружения можно потом удалить.
зачем удалять то, что можно не устанавливать.
Во-первых, SELinux не "относительно новая", а весьма старая подсистема.
А во-вторых, лучший и простейший способ остановить SELinux (в RedHat, CentOS, Fedora - где он установлен по умолчанию) - это удалить просто его нахрен с помощью yum/dnf.
Не "Permisive", а "PermisSive".
Прям элементарный случай охреневания...