GNU/Linux >> Znalost Linux >  >> Linux

Jak povolit/zakázat režimy SELinux v RHEL/CentOS

Režimy SELinux

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.

Dočasné přepínání režimů SELinux

K dočasnému přepínání mezi režimy SELinux můžeme použít příkaz setenforce, jak je ukázáno níže:

# setenforce [ Enforcing | Permissive | 1 | 0 ]

0 –> Povolující
1 –> Vynucování

Nebo můžete hodnoty jednoduše přenést do pseudo souboru – /sys/fs/selinux/enforce nebo /selinux/enforce .

# echo [0|1] > /sys/fs/selinux/enforce

Chcete-li zkontrolovat aktuální režim SELinux:

# getenforce
Enforcing

nebo můžeme také použít příkaz sestatus k získání podrobného stavu:

# sestatus
SELinux status:                 enabled         
SELinuxfs mount:                /selinux        --> virtual FS similar to /proc
Current mode:                   enforcing       --> current mode of operation 
Mode from config file:          permissive      --> mode set in the /etc/sysconfig/selinux file.
Policy version:                 24
Policy from config file:        targeted

Trvalá změna režimů SELinux

Pomocí souboru /etc/sysconfig/selinux
Jedním ze způsobů, jak trvale změnit režim SELinux na Vynucování nebo Povolení, je – upravit soubor /etc/sysconfig/selinux a nastavit hodnotu parametrů SELINUX buď na vynucení nebo povolení.

# ls -l /etc/sysconfig/selinux
lrwxrwxrwx. 1 root root 17 Mar  2 13:03 /etc/sysconfig/selinux -> ../selinux/config
# cat /etc/sysconfig/selinux

# 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,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

Upravte tento soubor a restartujte systém, aby se změny projevily.

Použití spouštěcích parametrů jádra
Pro nastavení režimu SELinux můžeme také použít zaváděcí parametr jádra při zavádění. Pro tuto úpravu /etc/grub.conf soubor a přidejte možnost “selinux=1 vynucení=[0|1]” na spouštěcí parametry.

# cat /etc/grub.conf
........
	root (hd0,0)
	kernel /vmlinuz-2.6.32-279.el6.x86_64 root=/dev/md3 selinux=1 enforcing=0
	initrd /initramfs-2.6.32-279.el6.x86_64.img
.........

selinux=1 –> Povolit SELinux
enforced=0 –> Permisivní režim
enforcing=1 –> Enforcing mode

Zakázání SELinux

Někdy, když nejste dobře obeznámeni s funkcemi SELinuxu, je lepší jej vypnout. Nemůžeme deaktivovat SELinux bez restartu. Alternativní možností by bylo – nastavit SELinux v Permisivním režimu. Chcete-li SELinux úplně zakázat, upravte konfigurační soubor /etc/sysconfig/selinux nebo /etc/selinux/config což je měkký odkaz na soubor /etc/sysconfig/selinux.

# ls -l /etc/sysconfig/selinux
lrwxrwxrwx. 1 root root 17 Mar  2 13:03 /etc/sysconfig/selinux -> ../selinux/config
# cat /etc/sysconfig/selinux

# 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

Upravte tento soubor a restartujte systém, aby se změny projevily.

Použití spouštěcích parametrů jádra k deaktivaci SELinux
Další způsob, jak trvale deaktivovat SELinux, je upravit zaváděcí parametry jádra. Upravte soubor /etc/grub.conf a přidejte volbu selinux=0 k volbě spouštění, abyste SELinux při zavádění deaktivovali. V tomto případě jsou nastavení v /etc/sysconfig/selinux ignorována.

# cat /etc/grub.conf
........
	root (hd0,0)
	kernel /vmlinuz-2.6.32-279.el6.x86_64 root=/dev/md3 selinux=0
	initrd /initramfs-2.6.32-279.el6.x86_64.img
.........


Linux
  1. Jak zakázat SELinux na CentOS 7/6 a RHEL 7/6

  2. CentOS / RHEL 6,7 :Jak povolit nebo zakázat službu XDMCP (GDM)

  3. Jak povolit IPv6 na CentOS / RHEL 7

  1. Jak zakázat IPv6 na CentOS / RHEL 5

  2. Jak povolit IPv6 v CentOS / RHEL 5

  3. CentOS / RHEL 5, 6 :jak deaktivovat NetworkManager

  1. Jak zakázat SELinux na CentOS?

  2. CentOS / RHEL 7 :Jak spustit / zastavit nebo povolit / zakázat Firewalld

  3. Jak zakázat NetworkManager v CentOS/RHEL 8