LINUX

Cómo usar /etc/sysctl.conf para el refuerzo de la seguridad del kernel de Linux

Sysctl es un poderoso comando de Linux que actúa como una interfaz para cambiar dinámicamente los parámetros del kernel. Con la ayuda de este comando, puede modificar los parámetros del kernel sin recompilar el kernel o reiniciar la máquina.

Los parámetros disponibles para modificación se pueden encontrar en el directorio / proc / sys. Por lo tanto, procfs (simulación del sistema de archivos para poder comunicarse con el kernel a través del sistema de archivos) es obligatorio para ‘sysctl’. Solo el superusuario (root) puede ejecutar este comando.

Modificación de parámetros del kernel mediante el comando sysctl

Los parámetros del kernel se pueden modificar de forma temporal o permanente. La modificación temporal de los parámetros del kernel son:

1. Lea los parámetros actuales del kernel,

sysctl -a

2. Utilice el modificador ‘-w’ para escribir un valor en una variable:

Ejemplo:

sysctl –w net.ipv4.icmp_echo_ignore_all=1

Este comando indicará al servidor que ignore los paquetes ICMP (solicitudes de ping). El valor ‘0’ representa ‘Apagado’ y ‘1’ representa ‘encendido’. Estos cambios son temporales y se restablecerán al reiniciar.

Modificación permanente de los parámetros del kernel

una. Modificar valores directamente en procfs

Puede modificar directamente los archivos en procfs (directorio / proc / sys) para alterar el parámetro del kernel.

Ejemplo:

echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all

El comando anterior deshabilitará los paquetes ICMP.

B. Modificar el archivo de configuración /etc/sysctl.conf

Ésta es la forma más recomendada de modificar los parámetros del kernel. Debe agregar la siguiente línea a /etc/sysctl.conf para el filtrado de paquetes ICMP.

net.ipv4.icmp_echo_ignore_all = 1

Después de modificar el archivo de configuración sysctl, debe ejecutar el siguiente comando para cargar la configuración sysctl desde el archivo /etc/sysctl.conf.

sysctl -p

Ajuste de seguridad y rendimiento usando sysctl

1. Controlar el reenvío de paquetes IP

El reenvío de paquetes IP solo debe habilitarse en servidores que actúan como enrutadores o puertas de enlace. En todos los demás servidores, esta función debe desactivarse.

net.ipv4.ip_forward = 0

2. Verificación de la dirección de origen

Esta «comprobación de cordura» ayuda contra el ataque de suplantación.

net.ipv4.conf.all.rp_filter = 1

3. Habilite la protección execshield

Execshield es un parche de seguridad del kernel de Linux para evitar gusanos y otros problemas. Agregue las siguientes líneas a /etc/sysctl.conf para habilitar la protección execshield.

kernel.exec-shield = 1
kernel.randomize_va_space = 1

4. Protección contra inundaciones SYN

En este ataque, el sistema se inunda con una serie de paquetes SYN. Cada paquete hace que el sistema emita respuestas SYN-ACK. Luego, el sistema espera el ACK que sigue al SYN + ACK (protocolo de enlace de 3 vías). Dado que el ataque nunca vuelve a enviar ACK, todos los recursos del sistema se llenan, también conocida como cola de espera. Una vez que la cola esté llena, el sistema ignorará las solicitudes entrantes de servicios de usuarios legítimos (http / mail, etc.). Para detener esto, debe habilitar SYNcookies en sysctl.conf.

net.ipv4.tcp_syncookies = 1

5. Prevención de los ataques de los pitufos

Un ataque smurf es una explotación del direccionamiento de transmisión del Protocolo de Internet (IP) para crear una denegación de servicio. El programa smurf crea un paquete de red que parece originarse en otra dirección (esto se conoce como suplantación de una dirección IP). El paquete contiene un mensaje de ping ICMP dirigido a una dirección de transmisión IP, es decir, todas las direcciones IP en una red determinada. Las respuestas de eco al mensaje de ping se envían de vuelta a la dirección de la «víctima». Un número suficiente de pings y ecos resultantes pueden inundar la red dejándola inutilizable para el tráfico real.

Una forma de derrotar al pitufo es deshabilitar el direccionamiento de transmisión IP.

net.ipv4.icmp_echo_ignore_broadcasts = 1

6. Registre todos los paquetes marcianos

Un paquete marciano es un paquete IP que especifica una dirección de origen o destino que está reservada para uso especial por la Autoridad de Números Asignados de Internet (IANA) y no puede originarse como se afirma o entregarse.

Los paquetes marcianos surgen comúnmente de la suplantación de direcciones IP en ataques de denegación de servicio,

net.ipv4.conf.all.log_martians = 1

Conclusión

En este tutorial, aprendimos cómo usar el comando sysctl y configurar el parámetro del kernel en Linux. Espero que haya disfrutado de la lectura y deje su sugerencia en la sección de comentarios a continuación.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar