Otázka:Jak úplně zakázat SELinux (Security Enhanced Linux) nebo jej nastavit do „povolovacího“ režimu
Odpověď :
SELinux poskytuje další vrstvu zabezpečení zdrojům v systému. Poskytuje MAC (povinné řízení přístupu) na rozdíl od DAC (Discretionary access control). Než se ponoříme do nastavení režimů SELinux, podívejme se, jaké jsou různé provozní režimy SELinuxu a jak fungují. SELinux může pracovat v kterémkoli ze 3 režimů:
1. Vynuceno :Akce v rozporu se zásadami jsou blokovány a odpovídající událost je zaznamenána do protokolu auditu.
2. Permisivní :Akce v rozporu se zásadami se zaznamenávají pouze do protokolu auditu.
3. Zakázáno :SELinux je zcela deaktivován.
Chcete-li úplně zakázat SELinux , použijte některou z těchto metod:
1. Upravte /etc/selinux/config (vyžaduje restart)
Změňte hodnotu SELINUX na SELINUX=disabled v souboru /etc/selinux/config.
# cat /etc/selinux/config # 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 three two values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
Restartujte server.
# shutdown -r now
2. Append kernel boot options
Upravte zaváděcí řádek jádra v /boot/grub/grub.conf a připojte selinux=0 k možnostem spouštění jádra. Například:
title Red Hat Enterprise Linux AS (2.6.9-42.ELsmp) root (hd0,0) kernel /vmlinuz-2.6.9-42.ELsmp ro root=LABEL=/ rhgb quiet selinux=0 initrd /initrd-2.6.9-42.ELsmp.img
Restartujte server.
# shutdown -r now
Chcete-li nastavit SELinux na Permisivní režim , použijte některou z těchto metod:
1. Nastavte režim SELinux na Permisivní dočasný (bez restartu)
Příkaz setenforce se používá ke změně mezi režimem vynucení a povolením. Změna do tolerantního režimu:
# setenforce 0
Pro zobrazení aktuálního režimu SELinux použijte příkaz getenforce:
# getenforce Permissive
2. Trvalé nastavení SELinuxu na Permisivní režim
a. Upravte /etc/selinux/config
Změňte hodnotu SELINUX na „SELINUX=permisivní“
# cat /etc/selinux/config # 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=permissive # SELINUXTYPE= can take one of these two values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
b. Append kernel boot options
Upravte zaváděcí řádek jádra a připojte “enforced=0” k možnostem zavádění jádra (Za předpokladu, že SELinux není nastaven na vypnuto, jak je uvedeno výše). Například:
title Red Hat Enterprise Linux AS (2.6.9-42.ELsmp) root (hd0,0) kernel /vmlinuz-2.6.9-42.ELsmp ro root=LABEL=/ rhgb quiet enforcing=0 initrd /initrd-2.6.9-42.ELsmp.img
Restartujte server.
# shutdown -r now
Chcete-li zkontrolovat stav SELinux, zadejte:
# sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: permissive Mode from config file: permissive Policy MLS status: enabled Policy deny_unknown status: allowed Max kernel policy version: 28Jak zkontrolovat, zda je SELinux povolen nebo zakázán