Inspeccionar la configuración de sysctl en /etc/sysctl.d
En los pasos anteriores, aprendimos cómo verificar y cambiar temporalmente los parámetros del kernel utilizando sysctl
y cómo estos parámetros se reflejan en el sistema de archivos /proc/sys
. Sin embargo, los cambios realizados con sysctl -w
no son permanentes. Para que los cambios en los parámetros del kernel persistan después de reiniciar el sistema, necesitamos configurarlos en archivos de configuración específicos.
La ubicación principal para las configuraciones persistentes de sysctl
es el archivo /etc/sysctl.conf
. Además, los sistemas Linux a menudo utilizan el directorio /etc/sysctl.d/
para almacenar fragmentos de configuración en archivos separados. Este enfoque modular facilita la gestión de configuraciones para diferentes aplicaciones o componentes del sistema.
Vamos a inspeccionar el contenido del directorio /etc/sysctl.d/
. Podemos usar el comando ls
para listar los archivos dentro de este directorio.
Abre tu terminal y escribe el siguiente comando:
ls /etc/sysctl.d/
Presiona Enter.
Verás una lista de archivos de configuración. Estos archivos suelen tener la extensión .conf
. La salida podría verse algo así:
10-console-messages.conf 10-kernel-hardening.conf 10-tcp-congestion-control.conf 99-sysctl.conf
Cada uno de estos archivos puede contener configuraciones de parámetros de sysctl
en el formato parámetro = valor
. Cuando el sistema arranca, lee /etc/sysctl.conf
y luego todos los archivos en /etc/sysctl.d/
en orden alfabético para aplicar las configuraciones persistentes de los parámetros del kernel.
Vamos a ver el contenido de uno de estos archivos de configuración, por ejemplo, 10-kernel-hardening.conf
. Podemos usar el comando cat
para mostrar su contenido.
Escribe el siguiente comando:
cat /etc/sysctl.d/10-kernel-hardening.conf
Presiona Enter.
Verás los parámetros del kernel configurados en este archivo. El contenido variará, pero podría incluir configuraciones relacionadas con la seguridad o el comportamiento del sistema.
#
## Configuraciones de sysctl para endurecimiento del kernel
#
## Deshabilitar espacios de nombres de usuarios no privilegiados
kernel.unprivileged_userns_clone=0
## Proteger contra ataques de enlaces simbólicos
fs.protected_hardlinks=1
fs.protected_symlinks=1
## Deshabilitar kexec
kernel.kexec_load_disabled=1
## Deshabilitar JIT de bpf
net.core.bpf_jit_enable=0
## Deshabilitar acceso ptrace a otros procesos
kernel.yama.ptrace_scope=1
Puedes ver cómo se establecen parámetros del kernel como kernel.unprivileged_userns_clone
y fs.protected_hardlinks
aquí.
Para hacer permanente nuestra configuración vm.overcommit_memory=1
, normalmente agregaríamos la línea vm.overcommit_memory = 1
a un archivo nuevo o existente en /etc/sysctl.d/
(o en /etc/sysctl.conf
). Sin embargo, con fines de este laboratorio introductorio, no haremos este cambio permanente.
Comprender el directorio /etc/sysctl.d/
es crucial para configurar parámetros persistentes del kernel en tu sistema Linux.
Haz clic en Continuar para completar este laboratorio.