Que significa NAT (Network Address Translation - Traducción de Dirección de Red) es un mecanismo utilizado por routers IP para intercambiar paquetes entre dos redes que se asignan mutuamente direcciones incompatibles. Consiste en convertir en tiempo real las direcciones utilizadas en los paquetes transportados. También es necesario editar los paquetes para permitir la operación de protocolos que incluyen información de direcciones dentro de la conversación del protocolo.
Este es un texto extraído de una definición de utilización...
Su uso más común es permitir utilizar direcciones privadas (definidas en el RFC 1918) para acceder a Internet. Existen rangos de direcciones privadas que pueden usarse libremente y en la cantidad que se quiera dentro de una red privada. Si el número de direcciones privadas es muy grande puede usarse solo una parte de direcciones públicas para salir a Internet desde la red privada. De esta manera simultáneamente sólo pueden salir a Internet con una dirección IP tantos equipos como direcciones públicas se hayan contratado. Esto es necesario debido al progresivo agotamiento de las direcciones IPv4.
Para configurar un NAT para nuestra red privada lo podemos hacer mediante el uso de reglas con el comando iptables además de esto para que la configuración permanezca es necesario hacer un script que se ejecute cada vez que la maquina inicie.
En Internet existen muchos script que realizan la misma funciona con otras reglas mas estrictas, este script puede además tener reglas para el filtrado de paquetes y de esta manera configurar el firewall
Para poder hacer que nuestro script se ejecute cada vez que nuestra maquina se prenda, debemos de arealizar un enlace simbolido de /etc/init.d/rc.iptables a /etc/rc3.d/S15iptables#!/bin/shecho -n Aplicando Reglas de Firewall...## FLUSH de reglasiptables -Fiptables -Xiptables -Ziptables -t nat -F## Establecemos politica por defectoiptables -P INPUT ACCEPTiptables -P OUTPUT ACCEPTiptables -P FORWARD ACCEPTiptables -t nat -P PREROUTING ACCEPTiptables -t nat -P POSTROUTING ACCEPT## Empezamos a filtrar## Nota: eth0 es el interfaz conectado al router y eth1 a la LAN# El localhost se deja (por ejemplo conexiones locales a mysql)/sbin/iptables -A INPUT -i lo -j ACCEPT# Al firewall tenemos acceso desde la red localiptables -A INPUT -s 10.161.0.0/24 -i eth1 -j ACCEPT## Ahora con regla FORWARD filtramos el acceso de la red local## al exterior. Como se explica antes, a los paquetes que no van dirigidos al## propio firewall se les aplican reglas de FORWARD########## ICMP rules (Internet Control Message Protocol)iptables -A FORWARD -p ICMP -s 0/0 --icmp-type 0 -j ACCEPTiptables -A FORWARD -p ICMP -s 0/0 --icmp-type 3 -j ACCEPTiptables -A FORWARD -p ICMP -s 0/0 --icmp-type 5 -j ACCEPTiptables -A FORWARD -p ICMP -s 0/0 --icmp-type 11 -j ACCEPT# Aceptamos que vayan a puertos 80iptables -A FORWARD -s 10.161.0.0/24 -i eth1 -p tcp --dport 80 -j ACCEPT# Aceptamos que vayan a puertos httpsiptables -A FORWARD -s 10.161.0.0/24 -i eth1 -p tcp --dport 443 -j ACCEPT#Aceptamos el puerto sshiptables -A FORWARD -s 10.161.0.0/24 -i eth1 -p tcp --dport 22 -j ACCEPT# Aceptamos que consulten los DNSiptables -A FORWARD -s 10.161.0.0/24 -i eth1 -p tcp --dport 53 -j ACCEPTiptables -A FORWARD -s 10.161.0.0/24 -i eth1 -p udp --dport 53 -j ACCEPT# Y denegamos el resto. Si se necesita alguno, ya avisaraniptables -A FORWARD -s 10.161.0.0/24 -i eth1 -j DROP# Ahora hacemos enmascaramiento de la red local# y activamos el BIT DE FORWARDING (imprescindible!!!!!)iptables -t nat -A POSTROUTING -s 10.161.0.0/24 -o eth0 -j MASQUERADE# Con esto permitimos hacer forward de paquetes en el firewall, o sea# que otras máquinas puedan salir a traves del firewall.echo 1 > /proc/sys/net/ipv4/ip_forward## Y ahora cerramos los accesos indeseados del exterior:# Nota: 0.0.0.0/0 significa: cualquier red# Cerramos el rango de puerto bien conocidoiptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 1:1024 -j DROPiptables -A INPUT -s 0.0.0.0/0 -p udp --dport 1:1024 -j DROP# Cerramos un puerto de gestión: webminiptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 10000 -j DROPecho " OK . Verifique que lo que se aplica con: iptables -L -n"# Fin del script
Esta es la manera de hacerlo...
ln -s /etc/init.d/rc.iptables /etc/rc3.d/S15iptablesEspero que les sirva
Saludos!!
No hay comentarios:
Publicar un comentario