sestatus sta per SELinux status.
Questo comando viene utilizzato per visualizzare lo stato corrente di SELinux in esecuzione sul sistema.
Questo tutorial spiega quanto segue:
- Spiegazione dell'output del comando sestatus con dettagli
- Visualizza il contesto di sicurezza degli oggetti selezionati in stato
- Visualizza i valori booleani in stato
1. sestatus Spiegazione dell'output del comando
sestatus visualizzerà se SELinux è abilitato o disabilitato. Questo mostrerà anche informazioni aggiuntive su alcune delle impostazioni di SELinux che sono spiegate qui.
Quello che segue è il comando sestatus sul sistema CentOS 7. Nella versione precedente di CentOS/RedHat questo output sarà leggermente diverso.
# 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
Nota:nell'output sopra, "modalità corrente" è la riga più importante a cui dovresti prestare attenzione, come spiegato di seguito.
Stato di SELinux: Questo indica se il modulo SELinux stesso è abilitato o disabilitato sul tuo sistema. Tieni presente che anche se questo potrebbe dire abilitato, ma SELinux potrebbe ancora non essere tecnicamente abilitato (applicato), il che è effettivamente indicato dalla riga "modalità corrente" spiegata di seguito.
Montaggio SELinuxfs: Questo è il punto di montaggio del filesystem temporaneo di SELinux. Questo è usato internamente da SELinux. Questo è ciò che farai se provi a fare un ls su questo filesystem SELinux. Per il nostro scopo pratico, non possiamo manipolare nulla in questa directory, poiché è gestita internamente da SELinux.
# 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
Directory principale di SELinux: Qui è dove si trovano tutti i file di configurazione di SELinux. Per impostazione predefinita, vedrai i seguenti file e directory. Questa directory contiene tutti i file di configurazione necessari per il funzionamento di SELinux. Puoi modificare questi file.
# 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
Nome criterio caricato: Questo indicherà quale tipo di politica SELinux è attualmente caricata. In quasi tutte le situazioni comuni, vedrai "mirato" come la politica di SELinux, poiché questa è la politica predefinita. Di seguito sono riportate le possibili policy di SELinux disponibili:
- mirato – Ciò significa che solo i processi mirati sono protetti da SELinux
- minimo:si tratta di una leggera modifica della politica mirata. In questo caso, solo pochi processi selezionati sono protetti.
- mls – Questo è per la protezione di sicurezza multilivello. MLS è piuttosto complesso e praticamente non utilizzato nella maggior parte delle situazioni.
Modalità attuale: Questo indica se SELinux sta attualmente applicando le politiche o meno. In altre parole, tecnicamente questo ti dirà se SELinux è attualmente abilitato e in esecuzione sul tuo sistema o meno.
Di seguito sono elencate le possibili modalità di SELinux:
- enforcing:indica che la politica di sicurezza di SELinux è stata applicata (ovvero SELinux è abilitato)
- permissivo – Indica che SELinux stampa avvisi invece di imporre. Questo è utile durante il debug quando vuoi sapere cosa potrebbe potenzialmente bloccare SELinux (senza bloccarlo realmente) guardando i log di SELinux.
- disabilitato – Nessuna politica SELinux caricata.
Per il nostro scopo pratico, far rispettare è uguale a abilitato. permissive e disabilitato è uguale a disabilitato.
Lo stato della politica MLS indica lo stato corrente della politica MLS. Per impostazione predefinita sarà abilitato.
Lo stato di negazione_sconosciuta della politica indica lo stato corrente del flag di negazione_sconosciuta nella nostra politica. Per impostazione predefinita, verrà impostato su consentito.
La versione massima della politica del kernel indica la versione corrente della politica di SELinux che è in noi. In questo esempio, è la versione 28.
Quello che segue è l'output di sestatus su CentOS e 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
Se vuoi disabilitare SELinux sul tuo sistema, puoi usare uno di questi metodi:4 metodi efficaci per disabilitare SELinux temporaneamente o permanentemente
2. Visualizza il contesto di sicurezza degli oggetti selezionati in stato
Usando l'opzione -v, insieme al normale stato di selinux, puoi anche visualizzare il contesto di SELinux per file e processi selezionati.
Quello che segue è l'output predefinito dell'opzione 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
Nell'output sopra:
- La sezione Contesti di processo mostra il contesto SELinux di alcuni processi selezionati. Puoi aggiungere il tuo processo a questo elenco aggiungendolo al file /etc/sestatus.conf. Come vedi qui, mostra il contesto di sicurezza del processo sshd.
- La sezione Contesti dei file mostra il contesto SELinux di alcuni file selezionati. Puoi aggiungere i tuoi file personalizzati a questo elenco aggiungendoli al file /etc/sestatus.conf. Come puoi vedere nell'output sopra, mostra il contesto di sicurezza di password, shadow e pochi altri file.
- Inoltre, se il file che hai specificato è un collegamento simbolico, verrà visualizzato anche il contesto del file di destinazione.
Questa sezione mostrerà sempre il contesto di sicurezza del processo corrente, del processo init e del controllo contesto del file dei terminali.
Quella che segue è l'impostazione predefinita del file /etc/sestatus.conf. Aggiungi i tuoi file personalizzati alla sezione [file] e aggiungi il tuo processo personalizzato alla sezione [processo].
# 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. Visualizza valori booleani in stato
Usando l'opzione -b, puoi visualizzare lo stato corrente dei booleani come mostrato di seguito.
Come mostrato di seguito, a parte il tipico output di sestatus, nella sezione "Policy booleans:", questo visualizzerà i valori booleani di SELinux correnti per tutti i parametri.
# 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
L'output sopra in genere mostra ciò che vedresti nell'output del comando getsebool. cioè il comando "sestatus -b" sopra è equivalente a eseguire i seguenti due comandi:
sestatus getsebool -a