GNU/Linux >> Znalost Linux >  >> Linux

3 Výstup příkazu SELinux sestatus Vysvětlen s příklady

sestatus znamená stav SELinux.

Tento příkaz se používá k zobrazení aktuálního stavu SELinuxu, který běží na vašem systému.

Tento tutoriál vysvětluje následující:

  1. Výstup příkazu sestatus s podrobnostmi
  2. Zobrazit kontext zabezpečení vybraných objektů v sestavu
  3. Zobrazit booleovské hodnoty v sestavu

1. Vysvětlení výstupu příkazu sestatus

příkaz sestatus zobrazí, zda je SELinux povolen nebo zakázán. Zobrazí se také další informace o některých nastaveních SELinuxu, která jsou vysvětlena zde.

Následuje příkaz sestatus v systému CentOS 7. Na starší verzi CentOS / RedHat bude tento výstup mírně odlišný.

# 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:      28

Poznámka:Ve výše uvedeném výstupu je „aktuální režim“ nejdůležitější řádek, kterému byste měli věnovat pozornost, což je vysvětleno níže.

Stav SELinux: To ukazuje, zda je ve vašem systému povolen nebo zakázán samotný modul SELinux. Mějte na paměti, že i když to může být povoleno, SELinux stále nemusí být technicky povolený (vynucený), což je skutečně indikováno řádkem „aktuální režim“ vysvětleným níže.

Připojení SELinuxfs: Toto je bod připojení dočasného souborového systému SELinux. Toto je interně používáno SELinuxem. To je to, co uděláte, když se pokusíte provést ls na tomto souborovém systému SELinux. Pro naše praktické účely nemůžeme v tomto adresáři s ničím manipulovat, protože je interně spravován SELinuxem.

# ls -l /sys/fs/selinux
total 0
-rw-rw-rw-.  1 root root    0 Jun  4 22:16 access
dr-xr-xr-x.  2 root root    0 Jun  4 22:16 avc
dr-xr-xr-x.  2 root root    0 Jun  4 22:16 booleans
-rw-r--r--.  1 root root    0 Jun  4 22:16 checkreqprot
..
..
-r--r--r--.  1 root root    0 Jun  4 22:16 policy
-rw-rw-rw-.  1 root root    0 Jun  4 22:16 relabel
-r--r--r--.  1 root root    0 Jun  4 22:16 status
-rw-rw-rw-.  1 root root    0 Jun  4 22:16 user

Kořenový adresář SELinux: Zde jsou umístěny všechny konfigurační soubory SELinux. Ve výchozím nastavení uvidíte následující soubory a adresáře. Tento adresář obsahuje všechny konfigurační soubory potřebné pro provoz SELinuxu. Tyto soubory můžete upravit.

# ls -l /etc/selinux
total 8
-rw-r--r--. 1 root root  546 May  1 19:08 config
drwx------. 2 root root    6 May  1 19:09 final
-rw-r--r--. 1 root root 2321 Jan 17 18:33 semanage.conf
drwxr-xr-x. 7 root root  215 May  1 19:09 targeted
drwxr-xr-x. 2 root root    6 Jan 17 18:33 tmp

Načtený název zásady: To bude indikovat, jaký typ zásad SELinux je aktuálně načten. Téměř ve všech běžných situacích uvidíte jako zásadu SELinux „cílené“, protože to je výchozí zásada. Následující jsou možné dostupné zásady SELinux:

  • cílené – To znamená, že SELinuxem jsou chráněny pouze cílené procesy
  • minimální – Toto je mírná úprava cílené politiky. V tomto případě je chráněno pouze několik vybraných procesů.
  • mls – Toto je pro ochranu víceúrovňového zabezpečení. MLS je poměrně složitý a ve většině situací se téměř nepoužívá.

Aktuální režim: To ukazuje, zda SELinux aktuálně vynucuje zásady nebo ne. Jinými slovy, technicky vám to řekne, zda je SELinux aktuálně povolen a spuštěn na vašem systému, nebo ne.

Následující jsou možné režimy SELinux:

  • vynucování – To znamená, že je vynucována bezpečnostní politika SELinux (tj. SELinux je povolen)
  • permisivní – Označuje, že SELinux místo vynucování vypisuje varování. To je užitečné při ladění, když chcete vědět, co by SELinux potenciálně zablokoval (aniž by to ve skutečnosti blokoval), když se podíváte na protokoly SELinux.
  • deaktivováno – Nejsou načteny žádné zásady SELinux.

Pro naše praktické účely se vynucování rovná povoleno. permisivní a zakázaný se rovná zakázaný.

Zásady Stav MLS udává aktuální stav zásad MLS. Ve výchozím nastavení bude tato možnost povolena.

Zásady deny_unknown status udává aktuální stav příznaku deny_unknown v našich zásadách. Ve výchozím nastavení to bude povoleno.

Max verze zásad jádra označuje aktuální verzi zásad SELinux, která je v nás. V tomto příkladu se jedná o verzi 28.

Následuje výstup stavu na CentOS a RedHat 6.

# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   enforcing
Mode from config file:          enforcing
Policy version:                 24
Policy from config file:        targeted

Pokud chcete deaktivovat SELinux na vašem systému, můžete použít jednu z těchto metod:4 efektivní metody dočasného nebo trvalého deaktivace SELinux

2. Zobrazit kontext zabezpečení vybraných objektů v sestatus

Pomocí volby -v spolu s běžným stavem selinux můžete také zobrazit kontext SELinux pro vybrané soubory a procesy.

Následující je výchozí výstup volby sestatus -v:

# sestatus -v
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:      28

Process contexts:
Current context:                unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
Init context:                   system_u:system_r:init_t:s0
/usr/sbin/sshd                  system_u:system_r:sshd_t:s0-s0:c0.c1023

File contexts:
Controlling terminal:           unconfined_u:object_r:user_devpts_t:s0
/etc/passwd                     system_u:object_r:passwd_file_t:s0
/etc/shadow                     system_u:object_r:shadow_t:s0
/bin/bash                       system_u:object_r:shell_exec_t:s0
/bin/login                      system_u:object_r:login_exec_t:s0
/bin/sh                         system_u:object_r:bin_t:s0 -> system_u:object_r:shell_exec_t:s0
/sbin/agetty                    system_u:object_r:getty_exec_t:s0
/sbin/init                      system_u:object_r:bin_t:s0 -> system_u:object_r:init_exec_t:s0
/usr/sbin/sshd                  system_u:object_r:sshd_exec_t:s0

Ve výše uvedeném výstupu:

  • Sekce Kontexty procesů zobrazuje kontext SELinuxu několika vybraných procesů. Do tohoto seznamu můžete přidat svůj vlastní proces tak, že je přidáte do souboru /etc/sestatus.conf. Jak vidíte zde, zobrazuje kontext zabezpečení procesu sshd.
  • Sekce Kontexty souborů zobrazuje kontext SELinuxu několika vybraných souborů. Do tohoto seznamu můžete přidat své vlastní soubory tak, že je přidáte do souboru /etc/sestatus.conf. Jak vidíte ve výše uvedeném výstupu, zobrazuje kontext zabezpečení hesla, stínu a několika dalších souborů.
  • Pokud je soubor, který jste určili, symbolický odkaz, zobrazí se také kontext cílového souboru.
    V této části se vždy zobrazí kontext zabezpečení aktuálního procesu, init procesu a ovládání kontext souboru terminálů.

Následuje výchozí nastavení souboru /etc/sestatus.conf. Přidejte své vlastní soubory do sekce [files] a přidejte svůj vlastní proces do sekce [process].

# cat /etc/sestatus.conf 
[files]
/etc/passwd
/etc/shadow
/bin/bash
/bin/login
/bin/sh
/sbin/agetty
/sbin/init
/sbin/mingetty
/usr/sbin/sshd
/lib/libc.so.6
/lib/ld-linux.so.2
/lib/ld.so.1

[process]
/sbin/mingetty
/sbin/agetty
/usr/sbin/sshd

3. Zobrazit booleovské hodnoty v sestavu

Pomocí volby -b můžete zobrazit aktuální stav booleanů, jak je ukázáno níže.

Jak je ukázáno níže, kromě typického výstupu stavu se v sekci „Policy booleans:“ zobrazí aktuální booleovské hodnoty SELinuxu pro všechny parametry.

# sestatus -b | more
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:      28

Policy booleans:
abrt_anon_write                             off
abrt_handle_event                           off
abrt_upload_watch_anon_write                on
antivirus_can_scan_system                   off
antivirus_use_jit                           off
auditadm_exec_content                       on
authlogin_nsswitch_use_ldap                 off
authlogin_radius                            off
authlogin_yubikey                           off
awstats_purge_apache_log_files              off
boinc_execmem                               on
cdrecord_read_content                       off
...
...
...
xend_run_blktap                             on
xend_run_qemu                               on
xguest_connect_network                      on
xguest_exec_content                         on
xguest_mount_media                          on
xguest_use_bluetooth                        on
xserver_clients_write_xshm                  off
xserver_execmem                             off
xserver_object_manager                      off
zabbix_can_network                          off
zarafa_setrlimit                            off
zebra_write_config                          off
zoneminder_anon_write                       off
zoneminder_run_sudo                         off

Výše uvedený výstup obvykle ukazuje to, co byste viděli ve výstupu příkazu getebool. tj. Výše ​​uvedený příkaz „sestatus -b“ je ekvivalentní spuštění následujících dvou příkazů:

sestatus

getsebool -a

Linux
  1. Příkaz vypnutí Linuxu s příklady

  2. Příkaz nslookup Linux vysvětlený s příklady

  3. Příkaz Linux Traceroute, vysvětlený s příklady

  1. Linux cut Command Vysvětlení pomocí 6 příkladů

  2. Příkaz Linux ldd vysvětlený s příklady

  3. Příkaz whoami v Linuxu vysvětlený na příkladech

  1. 8 Linux Tee Command s příklady

  2. Linux dělá příkaz vysvětlený s příklady

  3. Linux více Příkaz vysvětlený s příklady