Linux como router: 7 ajustes clave para tu red

Fuentes: A Survey of the 7 Configuration Changes That Turn a Multi-homed Linux Host into a Switch/Router

Este artículo explora cómo transformar un sistema Linux estándar en una infraestructura de red, como un router o un punto de acceso WiFi, detallando los cambios necesarios. La idea central es que, a pesar de la percepción de que la administración de dispositivos de red y sistemas operativos son diferentes, la realidad es que el conocimiento de redes permite a Linux realizar funciones de red mediante una serie de configuraciones específicas.

El proceso implica siete modificaciones clave: 1) activar el reenvío de IP, permitiendo que el sistema actúe como router; 2) definir un puente, que combina múltiples interfaces de red en una sola; 3) configurar políticas de nftables, un potente firewall; 4) implementar un firewall con estado (conntrack), para rastrear conexiones y mejorar la seguridad; 5) definir políticas de NAT y Masquerade, para ocultar la dirección IP interna detrás de una pública; 6) configurar DHCP y DNS con dnsmasq, para asignar direcciones IP y resolver nombres de dominio; y 7) implementar redes WiFi con hostapd, para crear puntos de acceso inalámbricos.

Para entender cómo funciona esto, es crucial comprender el flujo de un paquete a través del kernel de Linux. Cuando un paquete llega a través de una tarjeta de red (NIC), se almacena en un buffer de memoria y el kernel examina la dirección IP de destino. Si la dirección coincide con una interfaz local, el paquete se entrega a un proceso. Si no coincide y el reenvío de IP está desactivado, el paquete se descarta. Para habilitar el reenvío, se modifica la configuración del kernel. El artículo introduce el concepto de 'hooks' en el kernel, que son puntos de interrupción en el procesamiento de paquetes donde se pueden registrar funciones para inspeccionar, modificar o descartar paquetes. nftables es una herramienta que permite definir estas funciones y configurar el firewall. El artículo también explica cómo conntrack rastrea las conexiones para mejorar la seguridad y cómo dnsmasq proporciona servicios DHCP y DNS.

Este tipo de configuración es común en dispositivos Android que ofrecen puntos de acceso WiFi personales. El artículo destaca que, aunque la administración de redes puede parecer diferente a la administración de sistemas, son fundamentalmente el mismo proceso, y con el conocimiento adecuado, Linux puede ser transformado en una pieza de infraestructura de red funcional.