Reglas avanzadas de firewall (IPTables)
Domine IPTables para crear reglas de firewall complejas y con estado, implementar la traducción de direcciones de red (NAT) y proteger su servidor frente a ataques sofisticados.
Reglas avanzadas de firewall (IPTables) es una lección gratuita de Linux Server Deployment & SSH Mastery en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Linux Server Deployment & SSH Mastery, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Linux Server Deployment & SSH Mastery incluye 4 lecciones en total.
Análisis más profundo de IPTables
IPTables es el potente firewall integrado de Linux. Aunque ya hemos visto los conceptos básicos, ofrece funciones avanzadas para un control preciso.
En esta lección aprenderá a usar reglas complejas, filtrado con seguimiento de estado y traducción de direcciones de red (NAT) para proteger y gestionar realmente la red de su servidor.
Recordar las tablas y las cadenas
IPTables organiza las reglas en tablas, cada una con una finalidad específica. Dentro de las tablas se encuentran las cadenas, que son listas de reglas evaluadas en orden.
- Tabla
filter: La tabla predeterminada, utilizada para filtrar (bloquear o permitir) paquetes. Contiene las cadenasINPUT,OUTPUTyFORWARD. - Tabla
nat: Se utiliza para la traducción de direcciones de red (NAT). Contiene las cadenasPREROUTING,POSTROUTINGyOUTPUT. - También existen otras tablas, como
mangleyraw, para la modificación especializada de paquetes.
Descubrir el filtrado con seguimiento de estado
Un firewall con seguimiento de estado realiza un seguimiento del estado de las conexiones de red. En lugar de comprobar cada paquete individualmente, recuerda si un paquete pertenece a una conexión existente y establecida.
Estados de conexión principales:
NEW: El primer paquete de una conexión nueva.ESTABLISHED: Paquetes que pertenecen a una conexión existente y activa.RELATED: Paquetes que inician una conexión nueva relacionada con otra existente (por ejemplo, una transferencia de datos FTP).
Implementar reglas con seguimiento de estado
Las reglas con seguimiento de estado simplifican enormemente la gestión del firewall. Puede permitir todo el tráfico perteneciente a conexiones establecidas, de modo que solo necesita definir reglas para iniciar conexiones NEW.
Esta regla permite todos los paquetes entrantes que forman parte de una conexión ya establecida o relacionada:
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPTCrear una lógica de reglas compleja
IPTables permite combinar varios módulos de coincidencia y opciones para crear reglas muy específicas. Esto ayuda a ajustar con precisión el acceso a distintos servicios y desde distintos orígenes.
Ejemplo: Permitir SSH (puerto 22) desde una subred específica (192.168.1.0/24) únicamente para conexiones nuevas.
sudo iptables -A INPUT -p tcp --dport 22 -s 192.168.1.0/24 -m state --state NEW -j ACCEPTIntroducir la traducción de direcciones de red
La traducción de direcciones de red (NAT) modifica la información de direccionamiento de red en la cabecera IP de los paquetes mientras están en tránsito. Es fundamental para:
- Permitir que varios dispositivos de una red privada compartan una única dirección IP pública (por ejemplo, los routers domésticos).
- Redirigir puertos, enviando solicitudes externas a servidores internos.
Hay dos tipos principales: NAT de origen (SNAT) y NAT de destino (DNAT).
SNAT para conexiones salientes
La traducción de direcciones de origen (SNAT) cambia la dirección IP de origen de los paquetes. Se utiliza habitualmente cuando los servidores internos necesitan acceder a Internet a través de un servidor de puerta de enlace con una IP pública.
El enmascaramiento es una forma específica de SNAT en la que la dirección IP de la interfaz saliente se utiliza automáticamente como IP de origen, lo que resulta útil con direcciones IP dinámicas.
Ejemplo: Permitir que la red interna 192.168.0.0/24 acceda a Internet a través de eth0.
sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADEDNAT para servicios entrantes
Destination NAT (DNAT) cambia la dirección IP de destino de los paquetes. Es ideal para el reenvío de puertos, que permite exponer en Internet, mediante la IP pública del servidor de puerta de enlace, un servicio que se ejecuta en un servidor interno.
Ejemplo: reenviar las solicitudes web entrantes (puerto 80) de eth0 a un servidor web interno en 192.168.1.100.
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 192.168.1.100:80Defensa contra ataques de fuerza bruta
IPTables puede ayudarle a protegerse contra ataques comunes, como los intentos de inicio de sesión por fuerza bruta (por ejemplo, mediante SSH), limitando la velocidad a la que se aceptan nuevas conexiones desde una IP de origen.
El módulo limit permite especificar una frecuencia y un límite de ráfaga. Recuerde descartar las conexiones posteriores una vez alcanzado el límite.
Ejemplo: limitar las conexiones SSH nuevas a 3 por minuto, con una ráfaga inicial de 3 conexiones, y descartar las demás.
sudo iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m limit --limit 3/minute --limit-burst 3 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j DROPLógica de las reglas de IPTables
Considere un servidor que actúa como puerta de enlace. Tiene una interfaz pública eth0 y una interfaz interna eth1 (conectada a 192.168.1.0/24).
¿Qué comando de IPTables permitiría acceder desde Internet a un servidor web interno en 192.168.1.50 mediante el puerto 80?
Repaso de IPTables
¡Enhorabuena! Ha explorado conceptos avanzados de IPTables:
- Firewall con seguimiento de estado mediante los estados
ESTABLISHED,RELATEDyNEW. - Creación de reglas complejas combinando varios criterios de coincidencia.
- Implementación de Network Address Translation (NAT) para el tráfico saliente (SNAT/Masquerade) y entrante (DNAT/Port Forwarding).
- Uso del módulo
limitpara ofrecer una protección básica contra ataques.
Estas habilidades son fundamentales para crear entornos de servidores Linux sólidos y seguros. Recuerde guardar las reglas de IPTables después de realizar cambios, ya que no son persistentes de forma predeterminada.
Preguntas frecuentes
¿La lección «Reglas avanzadas de firewall (IPTables)» es gratis?
Sí — el texto completo de «Reglas avanzadas de firewall (IPTables)» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Linux Server Deployment & SSH Mastery, actualiza a CoddyKit PRO. El curso de Linux Server Deployment & SSH Mastery incluye 4 lecciones en total.
¿Qué aprenderé en «Reglas avanzadas de firewall (IPTables)»?
Domine IPTables para crear reglas de firewall complejas y con estado, implementar la traducción de direcciones de red (NAT) y proteger su servidor frente a ataques sofisticados. Practicas Linux Server Deployment & SSH Mastery con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Linux Server Deployment & SSH Mastery?
No se requiere experiencia previa. Linux Server Deployment & SSH Mastery en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Reglas avanzadas de firewall (IPTables)»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Linux Server Deployment & SSH Mastery?
Sí. Cada lección de Linux Server Deployment & SSH Mastery incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Auditoría de seguridad del servidor
- Reglas avanzadas de firewall (IPTables)
- Detección y prevención de intrusiones
- Registro centralizado e integración con SIEM