[4] SELinux – wartości Boolean

16 marca 2022 Wyłączono przez Adam [zicherka] Nogły

W Polityce SELinux dostarczanej z pakietem RPM, takim jak [targeted], można łatwo zmienić ustawienia SELinux, aby przełączać wartości logiczne.

Poniższy przykład dotyczy [targeted] środowiska polityki.

[1] Możliwe jest potwierdzenie wartości logicznych w następujący sposób.

# pokaż listę aktualnych ustawień
[root@vlsr01 ~]# getsebool -a
abrt_anon_write --> off
abrt_handle_event --> off
abrt_upload_watch_anon_write --> on
. . . . .
zebra_write_config --> off
zoneminder_anon_write --> off
zoneminder_run_sudo --> off

# pokaż z opisem
[root@vlsr01 ~]# semanage boolean -l
Zmienna logiczna SELinuksa     Stan  Domyślnie Opis
abrt_anon_write                (wyłączone,wyłączone)  Allow abrt to anon write
abrt_handle_event              (wyłączone,wyłączone)  Allow abrt to handle event
abrt_upload_watch_anon_write   (włączone,włączone)  Allow abrt to upload watch anon write
antivirus_can_scan_system      (wyłączone,wyłączone)  Allow antivirus to can scan system
. . . . .
zabbix_run_sudo                (wyłączone,wyłączone)  Allow zabbix to run sudo
zarafa_setrlimit               (wyłączone,wyłączone)  Allow zarafa to setrlimit
zebra_write_config             (wyłączone,wyłączone)  Allow zebra to write config
zoneminder_anon_write          (wyłączone,wyłączone)  Allow zoneminder to anon write
zoneminder_run_sudo            (wyłączone,wyłączone)  Allow zoneminder to run sudo

# jeżeli [semanage] nie jest zainstalowany – zainstaluj go
[root@vlsr01 ~]# dnf install policycoreutils-python-utils

[2] Na przykład Skonfiguruj wartość logiczną [samba_enable_home_dirs].

[samba_enable_home_dirs] jest domyślnie ustawione na [off], co oznacza, że kontrola dostępu przez SELinux jest włączona.

Nawet, jeśli skonfigurowałeś Sambę z pełnym dostępem do udziału w [/home/share] (777), nie można uzyskać do niego dostępu, ponieważ SELinux odmawia tego, ponieważ poprawny kontekst SELinux nie jest przypisany do folderu.

# domyślnie ustawione na OFF (wyłączone)
[root@vlsr01 ~]# semanage boolean -l | grep samba_enable_home_dirs
samba_enable_home_dirs         (wyłączone,wyłączone)  Allow samba to enable home dirs

Dostępy jest odmawiany jak poniżej, nawet jeśli pliki mają uprawnienia do odczytu, a katalog nadrzędny ma uprawnienia [777].

Zmień wartość logiczną [samba_enable_home_dirs] na [on], aby móc normalnie uzyskać dostęp do folderu.

# zmień na ON (włączony) [samba_enable_home_dirs]
[root@vlsr01 ~]# setsebool -P samba_enable_home_dirs on
[root@vlsr01 ~]# getsebool samba_enable_home_dirs
samba_enable_home_dirs --> on # zmienione

Wszystko OK, można się „dostać” do udostępnionego zasobu.

Przywróć domyślny kontekst SELinux dla [/home/share01]

[root@vlsr01 ~]# restorecon -R /home/share01