Una de las premisas máximas de Seguridad de la Información es deshabilitar todo lo que no sea estrictamente necesario. Con todo, se refiere a servicios, aplicaciones, módulos, y cualquier componente de software y hardware. ¿Por qué deshabilitar algo que no se usa? Primero, para liberar recursos y mantener el sistema simple y estable. Segundo, para minimizar la base de ataque al sistema. Todo componente no utilizado, puede ser aprovechado por un atacante para encontrar una brecha de seguridad, y pasar desapercibido.

Durante el proceso de hardening de un servidor GNU/Linux, se busca deshabilitar todo servicio, módulo y paquete que no sea utilizado. Si no se utiliza el protocolo IPv6 (como sucede generalmente, ya que la adopción de IPv6 aún es baja), es recomendable desactivarlo. Por ello, en este artículo voy a explicar cómo deshabilitar IPv6 en las distribuciones GNU/Linux Debian y CentOS.

En Linux, generalmente el protocolo IPv6 está habilitado por defecto. En diferentes distribuciones y diferentes versiones del kernel Linux, el soporte para IPv6 en puede estar habilitado como una característica built-in del kernel, o como un módulo cargable (ipv6).

Debian

En Debian 7, es posible desactivar IPv6 en el kernel de dos formas posibles.

Agregar ipv6.disable=1 a la variable GRUB_CMDLINE_LINUX dentro del archivo /etc/default/grub. Luego ejecutar update-grub y reiniciar el sistema. Por supuesto, la desventaja de esta alternativa es que se requiere un reinicio.

Para evitar esto, editar el archivo de configuración de parámetros del kernel /etc/sysctl.conf y agregar las siguientes líneas:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1

Notar que es necesario repetir la última línea para cada interfaz de red del sistema, por ejemplo net.ipv6.conf.eth1.disable_ipv6 = 1, net.ipv6.conf.eth2.disable_ipv6 = 1, etc.

Luego ejecutar sysctl -p para activar los cambios. Aunque también es posible reiniciar el sistema sin ejecutar sysctl -p para aplicar la nueva configuración.

En versiones anteriores de Debian (con kernel Linux 2.6.*), donde el soporte para IPv6 se provee en forma de módulo cargable (el módulo ipv6), también es posible deshabilitar IPv6 desactivando el módulo ipv6. Para ello, agregar la línea blacklist ipv6 en el archivo /etc/modprobe.d/blacklist.conf y reiniciar el sistema.

CentOS

Es exactamente igual que en Debian. Editar el archivo de configuración de parámetros del kernel /etc/sysctl.conf y agregar las líneas:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Para deshabilitarlo sin reiniciar el sistema, ejecutar:

# echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6
# echo 1 > /proc/sys/net/ipv6/conf/default/disable_ipv6

O de forma alternativa:

# sysctl -w net.ipv6.conf.all.disable_ipv6=1
# sysctl -w net.ipv6.conf.default.disable_ipv6=1

Fuentes


Tal vez pueda interesarte


Compartí este artículo