SELinux firewall – configuracion básica

Que es SELinux ?

SELinux.fwSecurity-Enhanced Linux (SELinux) es un módulo de seguridad para el kernel Linux que proporciona el mecanismo para soportar políticas de seguridad para el control de acceso, incluyendo controles de acceso obligatorios como los del Departamento de Defensa de Estados Unidos.

 

Chequeamos el estado de SElinux

# sestatus

Modos de SELinux

Para empezar debemos entender que  SELinux puede tener tres posibles modos. y no todos pueden estar activos al mismo tiempo; sino uno solo; para lo cual debemos ir pensando en como dejaremos el firewall en Centos Unicamente, los posibles modos son:

  • Enforcing
  • Permissive
  • Disabled

El modo enforcing (hacer cumplir) de SELinux sera muy “fuerte”  como politioca en el sistema Linux el mismo que NO autoriza acceso a los usuarios y los procesos seran detenidos o denegados. Las denegaciones de acceso también se escriben en los archivos de registro correspondientes.

El modo Permissive (permisivo) es como un estado de semi-habilitado. si en SELinux se aplica  la política en modo permisivo,  lo que no se niega el acceso. Sin embargo, cualquier violación de alguna política se registra en los registros de auditoría ose los logs. Es una buena manera de probar SELinux antes de aplicarla.

El modo Disabled (deshabilitado) se explica cuando el sistema no va a ejecutarse con seguridad mejorada.

Chequemos el estado de los modos del SELinux

Podemos ejecutar el comando getenforce para comprobar el modo actual de SELinux.

# getenforce

Actualmente SELinux debe estar desactivado, por lo que la salida sería algo como esto:

Disabled

o

Permissive

Segun el caso

Tambien podemos ejecutar el comando sestatus:

# sestatus

selinux2.fw

Donde el SELinux como salida nos mostrará disabled:

SELinux status:        disabled

Configuracion de SELinux

La configuracion principal de SELinux se encuentra en el siguiente archivo /etc/selinux/config. Para mirar el contenido podemos ejecutar el siguiente comando

cat /etc/selinux/config

Y la salida sera similar a esta:

# 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=enforcing
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected. 
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

Hay dos directivas en este archivo. La directiva SELINUX  indica el modo de SELinux y puede tener tres valores posibles como hemos comentado antes.

La directiva SELINUXTYPE determina la política que se utilizará. El valor por defecto está en target. Con una política específica, SELinux permite personalizar y afinar los permisos de control de acceso. El otro valor posible es “MLS” (seguridad multinivel), un modo avanzado de protección. aunque para usar MLS, es necesario instalar un paquete adicional.

Activar y Desactivar SELinux

Activar SELinux es bastante simple; pero a diferencia de su desactivación, se debe hacer en un proceso de dos pasos. Suponemos que SELinux está activo en este momento, y que ha configurado e instalado todos los paquetes de SELinux.

Como primer paso, necesitamos editar el archivo /etc/sysconfig/selinux y cambiar la directiva SELINUX a modo permissive.

# vi /etc/sysconfig/selinux
...
SELINUX=permissive
...

Ahora reiniciamos el sistema:

# reboot

Finalmente y para aclarar.- Todo loq ue hemos hecho lo hicimos a traves de la consola o terminal debido a que nuestra version de Centos 7 instalada es “ligera” por lo tanto no contiene más que los servicios basicos, no contiene el modo de escriotorio grafico ni otro servicio adicional. En posteriores post ire mostrando como instalar servidores Web, FTP, Mail, de bases de datos, etc.

Sin embargo es posible si se ha instalado Centos en modmo gráfico (con GUI KDE o Gnome) acceder al SELinux en ese modo, naturalmente sera mas sencillo otorgar permisos y demás creando sus propias politicas.

selinux3.fw

Publicado en Centos, Linux, Redes | Comentarios desactivados en SELinux firewall – configuracion básica