V některých distribucích Linuxu je SELinux ve výchozím nastavení povolen, což může způsobit nežádoucí problémy, pokud tak neučiníte Nechápu, jak SELinux funguje a základní podrobnosti o tom, jak jej nakonfigurovat. Důrazně doporučuji, abyste rozuměli SELinuxu a implementovali jej do vašeho prostředí. Ale dokud neporozumíte detailům implementace SELinuxu, možná jej budete chtít deaktivovat, abyste předešli zbytečným problémům.
Chcete-li zakázat SELinux můžete použít kteroukoli ze 4 různých metod uvedených v tomto článku.
SELinux bude prosazovat bezpečnostní zásady včetně povinných kontrol přístupu definovaných ministerstvem obrany USA pomocí definovaného modulu Linux Security Module (LSM). v linuxovém jádře. Každý soubor a proces v systému bude označen specifickým štítkem, který bude SELinux používat. Můžete použít ls -Z a zobrazit tyto štítky, jak je uvedeno níže.
# ls -Z /etc/ -rw-r--r-- root root system_u:object_r:etc_t:s0 a2ps.cfg -rw-r--r-- root root system_u:object_r:adjtime_t:s0 adjtime -rw-r--r-- root root system_u:object_r:etc_aliases_t:s0 aliases drwxr-x--- root root system_u:object_r:auditd_etc_t:s0 audit drwxr-xr-x root root system_u:object_r:etc_runtime_t:s0 blkid drwxr-xr-x root root system_u:object_r:bluetooth_conf_t:s0 bluetooth drwx------ root root system_u:object_r:system_cron_spool_t:s0 cron.d -rw-rw-r-- root disk system_u:object_r:amanda_dumpdates_t:s0 dumpdates
Metoda 1:Dočasně deaktivujte SELinux
Chcete-li dočasně deaktivovat SELinux, musíte upravit soubor /selinux/enforce, jak je uvedeno níže. Upozorňujeme, že toto nastavení zmizí po restartu systému.
# cat /selinux/enforce 1 # echo 0 > /selinux/enforce # cat /selinux/enforce 0
Pro deaktivaci SELinux můžete také použít příkaz setenforce, jak je ukázáno níže. Možné parametry pro příkazy setenforce jsou:Vynucování , Povolení, 1 (povolit) nebo 0 (zakázat).
# setenforce 0
Metoda 2:Trvale deaktivujte SELinux
Chcete-li SELinux trvale zakázat, upravte soubor /etc/selinux/config a nastavte SELINUX=disabled, jak je uvedeno níže. Jakmile provedete jakékoli změny v /etc/selinux/config, restartujte server, aby se změny vzaly v úvahu.
# cat /etc/selinux/config SELINUX=disabled SELINUXTYPE=targeted SETLOCALDEFS=0
Následující jsou možné hodnoty pro SELINUX proměnná v /etc/selinux/config soubor
- vynucování – Bezpečnostní politika je vždy vynucována
- povolující – Toto pouze simuluje vynucování politiky pouze tiskem varovných zpráv a ve skutečnosti nevynucuje SELinux. Je dobré nejprve vidět, jak SELinux funguje, a později zjistit, jaké zásady by měly být vynucovány.
- vypnuto – Úplně vypněte SELinux
Následují možné hodnoty pro SELINUXTYPE proměnná v /etc/selinux/config soubor. Toto označuje typ politik, které lze použít pro SELinux.
- cílené – Tato zásada bude chránit pouze konkrétní cílené síťové démony.
- přísné – Toto je pro maximální ochranu SELinux.
Metoda 3:Vypněte SELinux z Grub Boot Loader
Pokud nemůžete ve svém systému najít soubor /etc/selinux/config, můžete předat vypnout SELinux tak, že jej předáte jako parametr zavaděči Grub Boot Loader, jak je uvedeno níže.
# cat /boot/grub/grub.conf default=0 timeout=5 splashimage=(hd0,0)/boot/grub/splash.xpm.gz hiddenmenu title Enterprise Linux Enterprise Linux Server (2.6.18-92.el5PAE) root (hd0,0) kernel /boot/vmlinuz-2.6.18-92.el5PAE ro root=LABEL=/ rhgb quiet selinux=0 initrd /boot/initrd-2.6.18-92.el5PAE.img title Enterprise Linux Enterprise Linux Server (2.6.18-92.el5) root (hd0,0) kernel /boot/vmlinuz-2.6.18-92.el5 ro root=LABEL=/ rhgb quiet selinux=0 initrd /boot/initrd-2.6.18-92.el5.img
Metoda 4:Zakažte v SELinuxu pouze konkrétní službu – HTTP/Apache
Pokud nemáte zájem deaktivovat celý SELinux, můžete také deaktivovat SELinux pouze pro konkrétní službu. Například deaktivujte SELinux pro službu HTTP/Apache, upravte httpd_disable_trans proměnná v /etc/selinux/targeted/booleans soubor.
Nastavte proměnnou httpd_disable_trans na 1, jak je uvedeno níže.
# grep httpd /etc/selinux/targeted/booleans httpd_builtin_scripting=1 httpd_disable_trans=1 httpd_enable_cgi=1 httpd_enable_homedirs=1 httpd_ssi_exec=1 httpd_tty_comm=0 httpd_unified=1
Nastavte booleovskou hodnotu SELinux pomocí příkazu setsebool, jak je ukázáno níže. Po této změně nezapomeňte restartovat službu HTTP.
# setsebool httpd_disable_trans 1 # service httpd restart