sestatus significa estado de SELinux.
Este comando se usa para ver el estado actual de SELinux que se está ejecutando en su sistema.
Este tutorial explica lo siguiente:
- Salida del comando sestatus explicada con detalles
- Mostrar contexto de seguridad de objetos seleccionados en sestatus
- Mostrar valores booleanos en sestatus
1. Explicación de la salida del comando sestatus
El comando sestatus mostrará si SELinux está habilitado o deshabilitado. Esto también mostrará información adicional sobre algunas de las configuraciones de SELinux que se explican aquí.
El siguiente es el comando sestatus en el sistema CentOS 7. En la versión anterior de CentOS/RedHat, esta salida será ligeramente diferente.
# 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:En la salida anterior, el "modo actual" es la línea más importante a la que debe prestar atención, que se explica a continuación.
Estado de SELinux: Esto indica si el propio módulo SELinux está habilitado o deshabilitado en su sistema. Tenga en cuenta que, aunque esto puede decir habilitado, es posible que SELinux aún no esté técnicamente habilitado (aplicado), lo que realmente se indica mediante la línea de "modo actual" que se explica a continuación.
Montaje SELinuxfs: Este es el punto de montaje del sistema de archivos temporal de SELinux. Esto es utilizado internamente por SELinux. Esto es lo que hará si intenta hacer un ls en este sistema de archivos SELinux. Para nuestro propósito práctico, no podemos manipular nada en este directorio, ya que SELinux lo administra internamente.
# 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
Directorio raíz de SELinux: Aquí es donde se encuentran todos los archivos de configuración de SELinux. De forma predeterminada, verá los siguientes archivos y directorios. Este directorio contiene todos los archivos de configuración necesarios para el funcionamiento de SELinux. Puede modificar estos archivos.
# 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
Nombre de la política cargada: Esto indicará qué tipo de política de SELinux está cargada actualmente. En casi todas las situaciones comunes, verá "dirigido" como la política de SELinux, ya que esa es la política predeterminada. Las siguientes son las posibles políticas de SELinux disponibles:
- dirigido:esto significa que SELinux solo protege los procesos específicos
- mínimo:esta es una ligera modificación de la política específica. Solo unos pocos procesos seleccionados están protegidos en este caso.
- mls:esto es para protección de seguridad multinivel. MLS es bastante complejo y prácticamente no se usa en la mayoría de las situaciones.
Modo actual: Esto indica si SELinux está aplicando actualmente las políticas o no. En otras palabras, técnicamente esto le dirá si SELinux está actualmente habilitado y ejecutándose en su sistema o no.
Los siguientes son los posibles modos de SELinux:
- enforcing:esto indica que se aplica la política de seguridad de SELinux (es decir, SELinux está habilitado)
- permisivo:esto indica que SELinux imprime advertencias en lugar de aplicarlas. Esto es útil durante la depuración cuando desea saber qué bloquearía potencialmente SELinux (sin bloquearlo realmente) mirando los registros de SELinux.
- deshabilitado:no se carga ninguna política de SELinux.
Para nuestro propósito práctico, hacer cumplir es igual a habilitar. permisivo y deshabilitado es igual a deshabilitado.
El estado de la política MLS indica el estado actual de la política MLS. De forma predeterminada, esto estará habilitado.
El estado de la política deny_unknown indica el estado actual del indicador deny_unknown en nuestra política. De forma predeterminada, esto se establecerá como permitido.
Max kernel policy version indica la versión actual de la política de SELinux que tenemos. En este ejemplo, es la versión 28.
El siguiente es el resultado de sestatus en CentOS y 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
Si desea deshabilitar SELinux en su sistema, puede usar uno de estos métodos:4 métodos efectivos para deshabilitar SELinux de manera temporal o permanente
2. Mostrar el contexto de seguridad de los objetos seleccionados en sestatus
Con la opción -v, junto con el estado normal de selinux, también puede mostrar el contexto de SELinux para archivos y procesos seleccionados.
La siguiente es la salida predeterminada de la opción 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
En la salida anterior:
- La sección de contextos de procesos muestra el contexto de SELinux de algunos procesos seleccionados. Puede agregar su propio proceso a esta lista agregándolo al archivo /etc/sestatus.conf. Como puede ver aquí, muestra el contexto de seguridad del proceso sshd.
- La sección de contextos de archivos muestra el contexto de SELinux de algunos archivos seleccionados. Puede agregar sus propios archivos personalizados a esta lista agregándolos al archivo /etc/sestatus.conf. Como puede ver en el resultado anterior, muestra el contexto de seguridad de la contraseña, la sombra y algunos otros archivos.
- Además, si el archivo que especificó es un enlace simbólico, también se mostrará el contexto del archivo de destino.
Esta sección siempre mostrará el contexto de seguridad del proceso actual, el proceso de inicio y el control contexto del archivo de terminales.
La siguiente es la configuración predeterminada del archivo /etc/sestatus.conf. Agregue sus archivos personalizados a la sección [archivos] y agregue su proceso personalizado a la sección [proceso].
# 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. Mostrar valores booleanos en sestatus
Usando la opción -b, puede mostrar el estado actual de los booleanos como se muestra a continuación.
Como se muestra a continuación, además de la salida típica de sestatus, en la sección "Policy booleans:", se mostrarán los valores booleanos actuales de SELinux para todos los parámetros.
# 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
El resultado anterior generalmente muestra lo que vería en el resultado del comando getsebool. es decir, el comando anterior "sestatus -b" es equivalente a ejecutar los siguientes dos comandos:
sestatus getsebool -a