Como funciona las reglas de firewall y nat

Hola.

Tengo una duda, y me gustaria entender bien como funcionan las reglas de firewall y nat.

Firewall
1.-Cómo hacen los firewalls para que usando su IP publica salgan a internet?, por ejemplo si tienen que realizar consultas DNS a Internet, existe una regla interna del sistema que permita esto, o hay que crearla?
2.-Existe una regla interna del sistema que permita que a los firewalls se le pueda gestionar por ssh, https, o hay que crear una regla para ello?
3.-Cuando un servidor quiere salir a Internet, en el firewall se crea una regla de nat (source nat). Aqui el firewall analiza primero si existe una regla de tarfico para permitir la salida y luego aplica el NAT?
4.-Si debe permitir la salida a Internet por su IP publica, existe una regla interna donde diga que la IP publica del firewall tiene permitido salir, o hay que crearla?

NAT
5.-Cuando se crean reglas de destination nat (DNAT), para publicar un servicio en la red interna usando una o varias IP publicas. Esto crea una subinterfaz por cada IP publica? o como la IP publica del NAT siempre está a la escucha de requests de Internet?
6.-Cuando se crean reglas de source nat (SNAT), para permitir salida a Internet por una o varias IP publicas. Esto crea una subinterfaz por cada IP publica? o como la IP publica del NAT siempre está a la escucha de requests?

Espero puedan ayudarme con esas dudas.

Gracias de antemano.
 
Hola Orlando!

Estás estudiando el tema o sólo tienes curiosidad por saber cómo trabajan? Algún firewall en concreto que estes intentando manejar? Básicamente son dos piezas que van de la mano, aunque bien diferenciadas.
Yo intentaría empezar por entender que es un firewall SPI, que son de lo más sencillos y los que implementa cualquier router común. En ellos, hay una maxima: toda conexión saliente se permite, así como toda conexión entrante, siempre que está se haya originado previamente dentro de la parte privada del router (connection state = established). Toda conexión entrante no solicitada se deniega, a menos que haya una regla específica en el NAT que la permita.

La mayoría de tus preguntas hacen referencia al NAT, el mecanismo por el cual el router traduce entre IP pública e IP privada. El firewall normalmente se encarga de gestionar cómo se establecen las conexiones que entran al router (chain=input), que atraviesan el router (chain=forward) o que abandonan el router (chain=output). La inmensa mayoría de tus conexiones serán procesadas por el chain de forward, ya que una vez establecida una conexión, todo es tráfico que atraviesa el router desde una IP externa (la del servicio/servidor al que te conectas) hasta una IP interna y su puerto de conexión correspondiente, previa conversión (paso por el NAT) de tu IP pública en su correspondiente IP privada.
En el NAT, normalmente trabajas con dos cadenas, llamadas src-nat (source network address translation) o dst-nat (destination address translation). Las reglas de src-nat tienen como origen la red “nateada” es decir, el pool de direcciones privadas internas que maneje el router. Las de dst-nat, justo al contrario, su destino o target es la red nateada. Ejemplo de regla de src-nat: el masquerade. Es un tipo de regla especial que manejamos cuando se usan IPs públicas dinámicas que pueden cambiar. En esa regla como la dirección de la IP pública cambia (o mejor dicho, es susceptible de cambiar), enmascaras todo tráfico que salga por una interfaz concreta. No creas sub-interfaces ni nada por el estilo como comentas, simplemente le dices al equipo o firewall: “todo lo que salga por esa interfaz física viene de la red nateada y va con destino internet, así que le quitas la IP privada, asignas el puerto del socket de conexión a la IP pública, y lo chutas a internet”.
Por el contrario, una regla típica de dst-nat sería la apertura de un puerto interno (port mapping, port forwarding, virtual server, o como lo quieras llamar). En ese caso la regla de destination NAT lo que hace es permitir que una conexión que no se originó en el router (recuerda cómo trabaja un firewall SPI), acabe entrando a un equipo de la red nateada, es decir, a una IP privada. La regla lo que dice literalmente es: todo tráfico que llegue desde internet a la IP pública, para este puerto concretocon este tipo de protocolo, lo aceptas, y se lo mandas a esta dirección interna concreta.

Si quieres ver cómo funciona esto de primera mano, te recomiendo una herramienta didáctica que te va a venir como anillo al dedo para entender cómo: un router mikrotik. Te vale cualquiera, desde el más barato (~20€ un hAP-mini). Ahí puedes tocar reglas de firewall y NAT de primera mano, y ver cómo se comportan.

Te puedo pasar unos ejemplos de mi red interna, por si te sirven para entenderlo. Tú me vas diciendo, que lo mismo es mucha información de golpe.

Saludos!
 
Arriba