Actualizado el 7 de Abril del 2020 (Publicado el 14 de Abril del 2017)
866 visualizaciones desde el 14 de Abril del 2017
534,4 KB
24 paginas
Creado hace 23a (01/01/2002)
FI – UPV 2002
Interconexión de Redes
Bloque II - Seguridad
El módulo Netfilter de Linux: iptables
David Pascual Serral.
3.
4.
2.1.
ÍNDICE
INTRODUCCIÓN.................................................................................................. 3
1.
2. CORTAFUEGOS DE FILTRADO DE PAQUETES, IPFW............................. 4
FILTRADO DE PAQUETES ENTRANTES EN UN IPFW. ........................................... 6
INTRODUCCIÓN A IPTABLES.......................................................................... 7
3.1. UN POCO DE HISTORIA. ...................................................................................... 8
3.2. NOVEDADES DE IPTABLES. NAT........................................................................ 8
INSTALACIÓN DE IPTABLES......................................................................... 10
PARÁMETROS DEL KERNEL. ............................................................................. 10
INSTALANDO IPTABLES.................................................................................... 11
5. ESTRUCTURA Y FUNCIONAMIENTO DE IPTABLES. ............................. 12
6. EL COMANDO IPTABLES. ............................................................................... 14
7. UN CASO REAL: UNA HOME-LAN................................................................ 16
8. ANEXO: SCRIPT DE IPTABLES PARA UNA HOME-LAN ........................ 18
9. ANEXO: DIFERENCIAS ENTRE IPTABLES E IPCHAINS........................ 23
10.
BIBLIOGRAFÍA .............................................................................................. 24
4.1.
4.2.
2
1. Introducción
¿Qué es un firewall? La traducción más acertada de este término inglés al idioma español es
la palabra cortafuegos. Vemos cual es la definición en el DRAE1.
<<Cortafuego o cortafuegos. (De cortar y fuego). m. Agr. Vereda ancha que se deja
en los sembrados y montes para que no se propaguen los incendios. || 2. Arq.
Pared toda de fábrica, sin madera alguna, y de un grueso competente, que se
eleva desde la parte inferior del edificio hasta más arriba del caballete, con el fin
de que, si hay fuego en un lado, no se pueda este comunicar al otro.>>
Estas dos definiciones ya introducen una idea muy aproximada al significado de la
palabra firewall en términos informáticos, en ellas, aparecen términos como lado, lo que implica
la existencia de dos o más partes y comunicar lo que pone de manifiesto que las partes están
conectadas.
Bien, pues casi sin analogías, eso es un firewall en términos de sistemas computacionales.
Un cortafuegos, es un sistema informático, simple o compuesto que actúa como punto de
conexión segura entre otros dos o más sistemas informáticos.
Router interno
Internet
Router de filtrado
(1er Firewall)
Firewall Bastión
(2º Firewall)
Hub Ethernet
(LAN)
Firewall - Lan
Base de datos
servicio WWW
LAN interna (intranet)
Servidor
WWW
DMZ
(Zona Desmilitarizada)
Se ofrecen servicios al
exterior
Figura 1 Sistema complejo con diversos Cortafuegos
Descendiendo en la abstracción, un cortafuego se sitúa entre dos o más redes con la
intención de hacer cumplir unas determinadas directivas de seguridad sobre la comunicación
entre ellas. Por ello, un cortafuego, puede ser desde un simple router, un PC2 antiguo o una
subred de servidores SOLARIS.
1 Diccionario de la Real Academia de la lengua Española. http://buscon.rae.es/drae/drae.htm
2 Por ejemplo, una red Ethernet donde podemos incluir un PC “antiguo”, como un intel 486 o 386 con 2 o
más tarjetas Ethernet, sin HD, y configurado para arrancar con un disquete de MS-DOS en el que
incluimos alguna utilidad configurable de filtrado a nivel 2 (capa de MAC y trama Ethernet) haciendo uso
por ejemplo de los packet-drivers.
3
Como vemos el término cortafuegos, puede concretarse de manera muy distinta según los
mecanismos utilizados para su construcción, la familia de protocolos que reconoce (desde el
estándar universal TCP/IP, hasta aproximaciones de corte comercial como NETBEUI de
Microsoft, o IPX/SPX de Novell Netware), el nivel de la pila sobre el que actúa para un mismo
protocolo (ver figura), y como no la arquitectura de red subyacente.
2. Cortafuegos de filtrado de paquetes, IPFW
El documento presente, no pretende ser un estudio sobre la infinidad de familias y
variedades de los firewalls, seremos menos abstractos, y nos centraremos en el estudio de un
modelo de cortafuegos mas concreto, la familia de los firewalls de filtrado de paquetes sobre la
pila de protocolos TCP/IP, los llamados IPFW.
Los IPFW funcionan como indican las dos primeras letras sobre paquetes IP, es decir, en
el nivel de transporte y red de TCP/IP.
Pila de
protocolos OSI
Aplicación
Presentación
Sesión
Transporte
Red
Enlace
Física
Pila de
protocolos TCP/IP
Aplicación
Transporte
Red
Enlace
Zona de actuación de
un firewall proxy
Zona de actuación de
un firewall de filtrado
de paquetes
Aunque algunos autores la incluyen
el modelo TCP/IP no especifica los
niveles físico y de enlace. Podrían
ser PPP,Token Ring, Ethrnet ...
Figura 2 Niveles ISO/OSI vs TCP/IP
Los cortafuegos de filtrado de paquetes IP, suelen implementarse dentro del sistema
operativo y funcionan en las capas de transporte y red, trabajando sobre la información de las
cabeceras de los paquetes IP, es decir, que no analizarán el área de datos3, sino que únicamente
utilizan la información que puede obtenerse de una cabecera IP.
Como ya habíamos dicho, habitualmente, un cortafuego se sitúa entre dos o más redes, lo
que implica que tiene al menos dos interfaces de red. A pesar de que el cortafuegos separa dos
redes cualquiera entre si, lo habitual, es que separe redes propietarias distintos. Es decir, aunque
pueden utilizarse cortafuegos dentro de una misma red, filtrando las comunicaciones entres las
distintas subredes internas, lo habitual, es que el cortafuego forme parte de una red propia4 y sea
él quien vigile las comunicaciones con otra red o redes ajenas en las que no se confía5, por
ejemplo y sobre todo Internet.
3 Por ejemplo, un cortafuegos de filtrado de paquetes, NO puede evitar que un usuario mande desde su
equipo de trabajo un mensaje de correo con las cuentas de la empresa a la competencia, lo más que podría
sería evitar que esa estación acceda al servidor de correo, con lo que no podría mandar correo a nadie.
4 De hecho, un único ordenador con un MODEM y un firewall configurado, ya representa dicha
separación, aunque la red interna la forma sólo él y por tanto NO tendrá dos interfaces de red, sino una
sola.
5 Por si no se ha comentado, los firewalls, son principalmente una herramienta de seguridad y prevención
ante ataques externos.
4
Es decir, un IPFW funciona filtrando las comunicaciones en ambos sentidos entre su
interfaz interna (la que lo conecta a su red) y la externa. El mecanismo de funcionamiento de
para realizar este filtrado es a través de una lista de reglas.
Las reglas, pueden ser de dos tipos aceptación y rechazo, aunque en realidad, éste último
se descompone en dos “subtipos”, por lo que se suele hablar incluyendo la especialización, es
decir, en términos de aceptación, rechazo y denegación6. La lista de reglas de entrada (del
exterior hacia la red) es totalmente independiente de la lista de reglas de filtrado de salida (de la
red hacia el exterior). Las distintas listas de reglas se llaman cadenas (chains).
Paquete
de
entrada
Reglas de
entrada
Reglas de
salida
Aceptado
Aceptado
Rechazado
Paquete
de
salida
Proceso
Local
Proceso
Local
Figura 3 Flujo de un paquete en un FW
Interfaz
Hemos hablado de aceptación, rechazo y denegación. Los dos últimos son bastante
similares, la diferencia radica en lo siguiente, cuando un IPFW rechaza una petición externa,
envía una respuesta negativa diciendo que no acepta la comunicación, por el contrario, cuando
un firewall descarta una petición, no envía ningún tipo de respuesta, es decir, que el agente
externo que intentó establecer contacto, no sabrá ni siquiera si la máquina existía o estaba
encendida.
Una vez definido un IPFW, podemos comenzar a estudiar las técnicas y políticas de
creación de las cadenas. Hemos comentado que las cadenas eran listas de reglas por las que
pasaban los paquetes IP, pero ¿debemos definir las reglas para todos los posibles paquetes IP?
Obviamente, eso es inabordable, no podemos definir un regla de aceptación o rechazo para cada
característica de cada paquete proveniente de cada una de las IP. La solución, pasa por hacer uso
de “comodines” o “máscaras” para conseguir reglas generales. Esta manera de actuar, implica la
primera decisión: La regla por defecto. Podemos establecer dos criterios:
- Aceptar TODO por defecto y especificar aquello que no deseemos.
- Rechazar TODO por defecto y especificar aquello que deseemos.
Hoy en día, si se quiere llevar una política de seguridad mínimamente seria, la primera
propuesta es inviable, de hecho, muchos sistemas de IPFW ni siquiera la permiten, y sólo se
puede trabajar con la segunda propuesta. Así que, esa será la política que elijamos nosotros.
Para poder asegurar un lugar mediante cortafuegos, deberemos estudiar reglas de
entrada y de salida para las interfaz(es) interna(s) y externa(s). Sin embargo, la parte más
importante y donde se realiza el mayor esfuerzo en la elaboración de las reglas, es en la cadena
de entrada
Comentarios de: El módulo Netfilter de Linux: iptables (0)
No hay comentarios