1 Fabián L. Cortes
Procedimiento para la Instalación de Linux Ubuntu como Router y Firewall
Este manual permite de forma rápida el alistamiento de un linux ubuntucon una o dos interfaces, para que funciones como router y también como firewall. Nota: las ip que se colocan aquí son para efectos del ejercicio, sin embargo se debe utilizar las ip de la red que se desea enrutar.
PROCEDIMIENTO Paso0. Instalar un servidor Ubuntu con 1 ó 2 tarjetas de red, que reconozca las 2 tarjetas de red en caso que se tengan. Paso1. Asignar a la interface eth1 la IP 198.9.224.2 (si se cuenta con 2 interfaces físicas) con los siguientes datos: Adicionar las ip de la respectiva red que se desea enrutar, con todos sus parámetros (ip, máscara de red, gateway, red, dns, etc) vi /etc/network/interfaces auto eth1 iface eth1 inet static address 198.9.224.2 netmask 255.255.255.0 network 198.93.225.0 broadcast 198.93.225.255 gateway 198.9.224.1 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 200.45.33.12 dns-search midominio.com
2 Fabián L. Cortes iface eth0 inet static address 192.168.24.1 netmask 255.255.255.0 Los DNS para este equipo son 200.45.33.12 y el 200.13.249.12 (por ejemplo aunque no son reales). Donde la eth1 es la interfaz que va a la red WAN y la eth0 es la interfaz que va a la red LAN. Si no contamos con 2 interfaces físicas y solo hay una, entonces una alternativa es: iface eth0 inet static address 192.168.24.1 netmask 255.255.255.0 auto eth0 auto eth0:1 iface eth0:1 inet static address 198.9.224.2 netmask 255.255.255.0 network 198.93.225.0 broadcast 198.93.225.255 gateway 198.9.224.1 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 200.45.33.12 dns-search midominio.com Donde eth0 es la interfaz física (LAN) y cuando declaramos eth0:1 es una interfaz virtual o subinterfaz (WAN). Si nuestro escenario es que contamos con 2 tarjetas físicas de red pero internamente tenemos más de dos redes LAN, un ejemplo sería: iface eth0 inet static
3 FabiĂĄn L. Cortes address 192.168.24.1 netmask 255.255.255.0 auto eth0 iface eth0:1 inet static address 192.168.20.1 netmask 255.255.255.0 auto eth0:1 iface eth0:2 inet static address 192.168.21.1 netmask 255.255.255.0 auto eth0:2 auto eth1 iface eth1 inet static address 198.9.224.2 netmask 255.255.255.0 network 198.93.225.0 broadcast 198.93.225.255 gateway 198.9.224.1 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 200.45.33.12 dns-search midominio.com Donde la eth0 es una interfaz fĂsica que sirve a 3 redes LAN y la eth1 es la interfaz WAN que va a internet. Una vez editado y salvado el archivo, reiniciar el servidor para verificar que ha creado las interfaces virtuales. Para ello utilice el comando: /etc/init.d/networking restart Verificar si ya quedaron establecidas las interfces y subinterfaces:
4 Fabián L. Cortes ifconfig –a | more
Paso2. Permitir el IP Forwarding entre interfaces, para ello estando como root digitar este comando: echo "1" > /proc/sys/net/ipv4/ip_forward Nota: es recomendable crear un archivo que contenga la línea anterior y que se ejecute cuando el servidor arranque, ya que al reiniciarlo hay que ejecutarlo de nuevo: un ejemplo es: Crear un archivo llamado en esta ruta /root/arranque con permisos de ejecución y en su interior mínimo debe existir: echo "1" > /proc/sys/net/ipv4/ip_forward iptables –-flush iptables –-table nat --flush iptables –-delete-chain iptables –-table-nat --delete-chain iptables –-t nat -A POSTROUTING -o eth1 -j MASQUERADE iptables –A FORWARD -i eth0 -j eth0 ACCEPT iptables-restore < /root/reglasfirewall Donde la ruta /root/reglasfirewall es el archivo que contiene el backup de las reglas del firewall el cual se hace al ejecutar iptables-save /root/reglasfirewall Cuando de ha creado el archivo con todas las líneas especificadas arriba, se le indica a ubuntu que el archivo debe ser ejecutado en el momento de arrancar el servidor: cd /root update-rc.d arranque defaults
5 Fabiรกn L. Cortes
6 Fabián L. Cortes INSTALAR UN FIREWALL CON FWBUILDER
Paso3. Instalar una interfaz de administración de iptables con FWBUILDER apt-get install fwbuilder NOTA: Si se va a trabajar con una interfaz física y varias virtuales, NO ES NECESARIO crear las interfaces virtuales a nivel del sistema operativo como se explicó en el bloque anterior, porque a nivel del sistema operativo el ve la interface virtual como una ip más del la interfaz física. Lo pueden confirmar con el comando ip addr show Una vez instalado realizar la configuración de acuerdo al escenario que se tenga (aporte del link http://ubuntulinuxhelp.com/getting-started-with-firewall-builder/) :
Click en Next
7 Fabiรกn L. Cortes
Configuramos la interfaz que tiene salida a internet ya que usualmente es la que posee todos los datos de Gateway, DNS, etc, pero en la prรกctica es indiferente, click Add y luego click Finish:
Click Next
8 Fabián L. Cortes
Expandir el Objeto llamado Firewall y adicionar sobre la interfaz física otra ip con Add New IP Address:
Colocar la ip de la nueva interface que el FWBuilder construirá para el enrutamiento. Una vez realizado esto crear los objetos como son:
9 Fabián L. Cortes • Direcciones • Protocolos TCP, UDP e ICMP que se necesiten. • Las Redes
Cree las reglas pertinentes para hacer la prueba del firewall. Una vez creadas haga estos 2 pasos: 1. Compile (Debe ser exitosa la compilación). 2. Instale (Para ello es recomendable tener ssh server intalado y autenticarse al localhost) Usuario = root Password = supassword Interfaz = localhost
NOTA: Con Ubuntu 9.10 existe un problema y consiste en que no toma los cambios de inmediato si la conexión, por ejemplo un PING está andando, hay que cancelar el PING, esperar 30 segundos aproximadamente para que se cierre la conexión y el firewall sea efectivo.