🧱 Cortafuegos (Firewalls) y Zonas de Red (DMZ)
Un cortafuegos es un dispositivo o software que inspecciona el tráfico de red entrante y saliente, aplicando políticas de filtrado basadas en reglas.
🌐 Arquitectura con Zona Desmilitarizada (DMZ)
Una DMZ es una subred intermedia situada entre la red interna privada y una red no confiable (Internet).
flowchart LR
Internet((Internet)) <--> FW1["Firewall Perimetral"]
FW1 <--> DMZ["Servidores Públicos<br>(Web, Mail, DNS)"]
FW1 <--> FW2["Firewall Interno"]
FW2 <--> LAN["Red Local Privada<br>(Bases de datos, PCs)"]
Principio de Mínimo Privilegio
Los servidores situados en la DMZ nunca deben poder iniciar conexiones hacia la red interna confidencial sin una autorización y puerto explícito.
🛠️ Configuración básica de filtrado con iptables / nftables
Ejemplo de políticas por defecto en Linux para descartar todo tráfico por defecto:
# Política DROP por defecto
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
# Permitir tráfico del bucle local (loopback)
iptables -A INPUT -i lo -j ACCEPT
# Permitir conexiones ya establecidas
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
# Permitir SSH (puerto 22) y HTTPS (puerto 443)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT