SELinux (Security Enhanced Linux) je bezpečnostní modul linuxového jádra, který umožňuje správcům a uživatelům větší kontrolu nad řízením přístupu. Umožňuje přístup na základě pravidel zásad SELinux.
Pravidla zásad SELinuxu určují, jak procesy a uživatelé spolu interagují, a také to, jak procesy a uživatelé interagují se soubory.
Pokud žádné pravidlo zásad SELinux výslovně nepovoluje přístup, jako je tomu u procesu otevírání souboru, přístup je odepřen.
SELinux má tři režimy:
- Vynucování:SELinux umožňuje přístup na základě pravidel zásad SELinux.
- Přípustné:SELinux zaznamenává pouze akce, které by byly odepřeny, pokud by byly spuštěny v režimu vynucení.
- Zakázáno:Nejsou načteny žádné zásady SELinux.
Ve výchozím nastavení je v CentOS 7 SELinux povolen a v režimu vynucení.
Doporučuje se ponechat SELinux v režimu vynucení, ale v některých případech jej možná budete muset nastavit do tolerantního režimu nebo jej úplně zakázat.
V tomto tutoriálu vám ukážeme, jak deaktivovat SELinux na systémech CentOS 7.
Předpoklady #
Než začnete s výukovým programem, ujistěte se, že jste přihlášeni jako uživatel s právy sudo.
Zkontrolujte stav SELinux #
Chcete-li zobrazit aktuální stav SELinux a zásady SELinux, které se ve vašem systému používají, použijte sestatus
příkaz:
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
Max kernel policy version: 31
Z výše uvedeného výstupu můžete vidět, že SELinux je povolen a nastaven na režim vynucení.
Zakázat SELinux #
Režim SELinux můžete dočasně změnit z targeted
na permissive
pomocí následujícího příkazu:
sudo setenforce 0
Tato změna je však platná pouze pro aktuální běhovou relaci.
Chcete-li trvale zakázat SELinux na vašem systému CentOS 7, postupujte podle následujících kroků:
-
Otevřete
/etc/selinux/config/etc/selinux/config
a nastavteSELINUX
mod nadisabled
:# This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of these two values: # targeted - Targeted processes are protected, # mls - Multi Level Security protection. SELINUXTYPE=targeted
-
Uložte soubor a restartujte systém CentOS pomocí:
sudo shutdown -r now
-
Jakmile se systém spustí, ověřte změnu pomocí
sestatus
příkaz:sestatus
Výstup by měl vypadat takto:
SELinux status: disabled