SlideShare una empresa de Scribd logo
1 de 59
Indice
Parte I. Cortafuegos
Tipos de cortafuegos
Filtrado de paquetes
Reglas de filtrado
Parte II. NETFILTER/iptables
Arquitectura de NETFILTER/iptables
Módulos NETFILTER
Interfaces, herramientas e información
Parte III. Topologías de cortafuegos
Topologías básicas
Zonas desmilitarizadas 
Indice
Parte IV. Uso de shorewall
Shorewall
Configuración de Shorewall 
Parte V. Uso de OpenVPN
Redes privadas virtuales (VPN)
Configuración y uso de OpenVPN 
ANEXO: Uso de iptables
PARTE I. Cortafuegos
Tipos de cortafuegos
Filtrado de paquetes
Reglas de filtrado
Cortafuegos (I)
Cortafuegos/Firewalls: Mecanismos de control de acceso a
la red y los recursos informáticos de una organización
Formado por componentes hardware y software
Separa nuestra red interna (equipos de confianza) de los
equipos externos (potencialmente hostiles) mediante el control
del tráfico
Deniega intentos de conexión no autorizados (en ambos
sentidos)
Finalidad: Prevención de ataques desde exterior hacia
equipos internos
Opcionalmente: control del uso de la red por parte de los
equipos internos
Protección del propio equipo: “firewalls personales”
Cortafuegos (II)
Tipos de controles realizados
Control de Servicios: determinar los tipos de servicios de
red accesibles desde interior y exterior
Dos grandes alternativas:
Cortafuegos filtra tráfico a los servicios basándose en la
dirección IP + núms. de puerto
Cortafuegos proporciona un software intermediario (Proxy)
para cada servicio concreto a controlar
Control de Usuarios: control de accesos en base al usuario
concreto que pretende acceder
Control de Comportamiento: control de cómo se usan los
servicios
Cortafuegos (II)
Utilidad de los Cortafuegos (I)
Definen un punto único de resistencia frente a ataques
mantiene usuarios no autorizados fuera de la red protegida
prohibe entrada/salida de servicios potencialmente
vulnerables
protección frente a ciertos ataques de suplantación de IP (IP
spoofing)
simplifica la administración (punto único de entrada)
Ubicación donde realizar supervisión de eventos de
seguridad
registro de accesos, intentos de intrusión, gestión de alarmas
de seguridad, auditorias, etc
Cortafuegos (III)
Utilidad de los Cortafuegos (II)
Ubicación para situar otros elementos de gestión de red
traducción de direcciones, NAT(network address translation)
direc. locales (privadas) <-> direc. públicas de Internet
software de auditoria y registro del uso de la red
plataforma para implantar pasarelas IPSec o similares (enlaces
de redes virtuales privadas [VPN])
plataforma donde centralizar sistemas de detección de
intrusiones (ej.: SNORT)
plataforma para filtros de nivel de aplicación (antivirus, SPAM)
Limitaciones
No protegen contra ataques que no pasen por el Cortafuegos
No protegen contra amenazas internas
Pueden proporcionar una sensación de falsa seguridad
el Cortafuegos no basta por si sólo
seguridad en redes afecta a muchos aspectos
Tipos de Cortafuegos (I)
Filtros de paquetes
Inspeccionan los paquetes recibidos/enviados y comprueban
si encajan en las reglas
Filtrado basado en la información contenida en cada
paquete recibido/enviado
cada paquete se inspecciona de forma aislada y la decisión se
toma de forma aislada
filtro ''sin estado'': no tiene en cuenta si los paquetes son parte
de una conexión
Trabajan en los niveles de RED y TRANSPORTE de la pila
TCP/IP
Manejan info. de los protocolos IP, TCP, UDP, ICMP
Uso de puertos estándar para bloquear servicios concretos
Integrados en routers o en equipos dedicados.
Ejemplo en GNU/Linux: NETFILTER/iptables “básico”
Tipos de Cortafuegos (II)
Filtros ''con estado'' (filtros de circuitos)
Llevan registro de las conexiones que pasan a través del
Cortafuegos
Estudian y reconocen los paquetes
que inician/finalizan las conexiones
que forman parte de conexiones establecidas
que están relacionados con conexiones previas
Permiten un control más fino que los filtros sin estado
Ejemplo en GNU/Linux: NETFILTER/iptables con módulos
de seguimiento de conexiones (connection tracking)
Tipos de Cortafuegos (III)
Filtros a nivel de aplicación (Proxies)
Cortafuegos basados en el uso de Proxies en el nivel de
aplicación
interceptan los mensajes entre aplicaciones
bloqueo de aplicaciones no permitidas (las que no cuenten con
Proxy)
control del tráfico de las aplicaciones permitidas
Proxy ''comprende'' el protocolo de una aplicación concreta
previene abusos
permite limitar porciones concretas del protocolo
detectan uso de protocolos no permitidos en puertos estándar
Mayor ''conocimiento'' sobre el tráfico
realiza un análisis en profundidad de los paquetes
Pueden ofrecer otros servicios de valor añadido (caché)
Ejemplos en GNU/Linux: Proxy-cache web SQUID
Filtrado de paquetes (I)
Implementado en los dispositivos que encaminan tráfico
entre la red externa y la interna
Trabaja en las capas Red (IP) y/o Transporte (TCP,UDP)
Suele implementarse como un elemento añadido a un
router o como un equipo dedicado
Analizan cada paquete (antes de la decisión de enrutado) y
aplican un conjunto de reglas para decidir si lo retransmite o
lo descarta
inspecciona las cabeceras del paquete y comprueba si
encajan en la lista de reglas
decisión: aceptación/rechazo
Filtrado basado en la información contenida en cada
paquete concreto
cada paquete se analizan de forma aislada
normalmente no tienen en cuenta si son parte de una
conexión
Filtrado de paquetes (II)
Las reglas de filtrado emplean la información contenida en
cada paquete de red analizado
direcciones IP de origen y destino
puertos de origen y destino (TCP, UDP)
tipo de protocolo: TCP, UDP, IMCP
interfaz de entrada o salida (en Cortafuegos con 3 o más
conexiones de red)
otra información:
tamaño del paquete, tiempo del vida del paquete,
indicadores específicos de protocolos de transporte
El control de servicios se basa en el filtrado de los puertos
estándar (http://www.iana.org/assignments/port-numbers)
ftp 21/tcp dns 53/tcp,53/udp rpc 111/tcp,111/udp
ssh 22/tcp finger 79/tcp ldap 389/tcp
telnet 23/tcp http 80/tcp https 443/tcp
smtp 25/tcp pop3 110/tcp mysql 3306/tcp
Reglas de filtrado
Funcionamiento general
Filtrado paquetes se configura mediante lista de reglas
estáticas
condiciones: basadas en campos de cabeceras IP y/o TCP
acciones: descartar, rechazar, retransmitir
Reglas comprobadas secuencialmente (el orden importa)
Cuando hay una correspondencia, se invoca la acción
Si ninguna regla encaja, se aplica la acción predeterminada
denegar por defecto: lo que no está expresamente permitido,
está prohibido
indicar explicitamente qué servicios se dejan pasar
política conservadora, mayor nivel de protección
aceptar por defecto: lo que no está expresamente prohibido,
está permitido
servicios vulnerables/peligrosos deben bloquearse explícitamente
política más permisible, nivel de protección más bajo
NETFILTER/iptables (I)
NETFILTER es un componente del núcleo de Linux (desde la
ver. 2.4) encargado de la manipulación de paquetes de red
Tareas que realiza
filtrado de paquetes
traducción de direcciones (NAT)
modificación de paquetes
Página del proyecto: http://www.netfilter.org
iptables es una herramienta/aplicación que hace uso de la
infraestructura que ofrece NETFILTER para construir y
configurar firewalls.
permite definir políticas de filtrado, de NAT y realizar logs
remplaza a herramientas anteriores: ifwadmin, ipchains
puede usar las capacidades de seguimiento de conexiones
NETFILTER para definir firewalls con estado
PARTE II. NETFILTER/iptables
Arquitectura de NETFILTER/iptables
Módulos NETFILTER
Interfaces, herramientas e información
NETFILTER/iptables (II)
Las tareas a realizar sobre los paquetes (filtrado, NAT,
modificación) se controlan mediante distintos conjuntos de
reglas, en función de la situación/momento en la que se
encuentre un paquete durante su procesamiento dentro de
NETFILTER.
Las listas de reglas y demás datos residen en el espacio de
memoria del kernel
La herramienta de nivel de usuario iptables permite al
administrador configurar las listas de reglas que usa el kernel
para decidir qué hacer con los paquetes de red que maneja.
En la práctica un ''firewall'' iptables consistirá en un script de
shell conteniendo los comandos iptables para configurar
convenientemente las listas de reglas.
Tipicamente ese script residirá en /etc/init.d ó /etc/rcX.d para
que sea ejecutado cada vez que arranca el sistema
Otras utilidades: iptables-save, iptable-restore
Arquitectura NETFILTER/iptables (I)
Componentes NETFILTER/iptables (I)
TABLAS: se corresponden con los distintos tipos de
procesamiento que se pueden aplicar sobre los paquetes
(3 tablas disponibles)
filter: Controla decisiones de filtrado de paquetes
(aceptar/denegar)
Cadenas: sc input, output, forward
nat: Controla traducción de direcciones (NAT: network
address translation)
Cadenas: prerouting, postrouting} (opc. output)
mangle: Controla los procesos de modificación del
contenido y las opciones de los paquetes.
Cadenas: input, output, forward, prerouting, postrouting
Las reglas de cada tabla se organizan en cadenas, que se
consultarán en momentos concretos del flujo de los
paquetes
Arquitectura NETFILTER/iptables (II)
Componentes NETFILTER/iptables (cont.)
CADENAS: Contienen las listas de reglas a aplicar sobre
los paquetes
5 cadenas predeterminadas, asociadas a momentos
concretos del flujo de los paquetes
INPUT: reglas a a plicar sobre los paquetes destinados a la
propia máquina
controla las entradas al propio equipo/cortafuegos
OUTPUT: reglas a aplicar sobre los paquetes originados en
la propia máquina,
controla las salidas del propio equipo/cortafuegos
FORWARD: reglas a aplicar sobre los paquetes que
atraviesan la máquina con destino a otras (paquetes en
tránsito reenviados)
usadas en Cortafuegos de borde (protección red interna)
Arquitectura NETFILTER/iptables (II)
(cadenas predefinidas cont.)
PRE-ROUTING: reglas a aplicar sobre paquetes justo antes
de enviarlos a la red
usadas para DNAT (destination NAT) [redirección de puertos]
POST-ROUTING: reglas aplicar sobre paquetes (propios o
ajenos) recibidos de la red
se aplican antes de decidir a dónde encaminarlos [proceso
local o reenvío]
usadas para SNAT (source NAT) [enmascaramiento]
Se pueden crear cadenas definidas por el usuario
(comando iptables -N cadena}, a las que se accederá
desde reglas incluidas en alguna de las cadenas
predeterminadas
Arquitectura NETFILTER/iptables (III)
Flujo de paquetes en NETFILTER/iptables
Arquitectura NETFILTER/iptables (IV)
Funcionamiento de la reglas NETFILTER/iptables
Para cada paquete, en función del procesamiento que
vaya a sufrir, se consulta la cadena que corresponda a su
situación dentro de NETFILTER
Dentro de cada cadena las reglas se inspeccionan
secuencialmente [el orden de reglas es MUY importante]
Si el paquete encaja con las condiciones de una regla, se
ejecuta la acción correspondiente y se abandona la
cadena (se deja de mirar la cadena)
Si el paquete no encaja con ninguna regla, se le aplica
política por defecto que se haya asignado a esa cadena.
por defecto las cadenas predeterminadas están inicializadas
con una política accept
al agotar las cadenas definidas por el usuario, se retorna a
la cadena predeterminada que la activó
Módulos NETFILTER adicionaes
NETFILTER tiene una arquitectura modular que permite la
inclusión de nuevos componentes
Es posible incluir nuevas condiciones y objetivos que permitan hacer
distintos tipos de controles/procesamiento sobre los paquetes.
http://www.netfilter.org/projects/patch-o-matic/index.html
Repositorios: base, extra y external
Algunos ejemplos
geoip: permite identificar el origen geográfico de un paquete en
base a su dirección IP.
Ipp2p: aporta capacidades para reconocer algunos tipos de
tráfico P2P (kazaa, edk, etc)
string: permite emplear reglas que analicen cadenas de texto
presentes en la carga útil de los paquetes procesdos
Descripción de módulos disponibles (patches)
http://www.netfilter.org/documentation/HOWTO/netfilter-extensions-HOWTO.html
Interfaces, herramientas e información
Interfaces gráficos
Firestarter: http://www.fs-security.com/
FirewallBuilder: http://www.fwbuilder.org/
KMyFirewall: http://www.kmyfirewall.org/
Guardog: http://www.simonzone.com/software/guarddog/
Herramientas en modo texto
Shorewall: http://shorewall.net/
FireHOL: http://firehol.sourceforge.net/
Dwall: http://dag.wieers.com/home-made/dwall/
Fuentes de información
Página del proyecto:http://www.netfilter.org/documentation/
Tutorial detallado: http://iptables-tutorial.frozentux.net/
Tutorial práctico en español:
http://www.pello.info/filez/firewall/iptables.html
PARTE III. Topologías
de cortafuegos
Topologías básicas
Zonas desmilitarizadas 
Topologías básicas de cortafuegos (I)
Cortafuegos básico de borde
Un equipo actúa como cortafuegos, conectando la red
interna con la externa
Ofrece todas las funcionalidades de cortafuegos
+(opcionalmente) todos los servicios adicionales
Si se ve comprometido, todo el sistema se compromete
Opción 1: Router con filtrado de paquetes
Opción más simple, pero menos potente
Escasas posibilidades de monitorizacion
Opción 2: Equipo dedicado (dual homed host)
Sistema estandar con 2 interfaces de red con la posibilidad de
encaminamiento (IP forwarding) activada
Todas las conexiones pasan a traves de él
Puede integrar los Proxies precisos
Topologías básicas de cortafuegos (II)
Cortafuegos básico de borde (cont.)
Organizacion típica dual homed host
Los equipos de la red externa sólo pueden comunicarse con el
dual homed host
Idealmente, lodos los servicios al exterior se ofrecerán
únicamente desde el dual homed host
Equipos de red interna y externa no deberían poder entrar en
contacto directamente, sino a traves de un intermediario(Proxy)
Topologías básicas de cortafuegos (III)
Host oculto (screened host)
Ofrecer los servicios (internos y externos) en una única
máquina ubicada en el interior
alojará a los Proxies de aplicación usados por la red interna
alojará los servicios ofrecidos al exterior
en el esquema anterior estaban en el Cortafuegos o repartidos
en la LAN interna
Única máquina accesible desde el exterior (host bastion)
Elemento potencialmente vulnerable por ser el único
accesible desde el exterior
Administración delicada (es la base de la seguridad de este
esquema)
mínimos servicios software imprescindibles
actualizaciones de seguridad del S.O. + servidores
monitorización de ficheros de log
Topologías básicas de cortafuegos (VI)
Host inseguro (untrusted host) [variante del anterior]
El host bastión con los servicios hacia el exterior se ubica
fuera de la red protegida
Cortafuegos no tiene efecto sobre él
Ofrece los servicios públicos sin debilitar la red interna
Configuración y administración delicada
HOST OCULTO HOST INSEGURO
Zonas desmilitarizadas (I)
Red de Perímetro/Zona Desmilitarizada(DMZ)
Objetivo: aislar los servicios ofrecidos al exterior en una
red propia para evitar acceso a la red protegida
Los host bastión se sitúan detrás del cortafuegos, pero en
una red aislada (DMZ)
Incrementa seguridad, fiabilidad y disponibilidad respecto
a los esquemas anteriores
Los equipos internos siguen sin poder confiar en los
equipos de la DMZ
DMZ es accesible desde el exterior y sus equipos pueden
haber sido comprometidos
La DMZ define una red de servicios públicos
Contiene todos los equipos y sistemas que requieran acceso
controlado desde el exterior (web, email, dns, etc)
Puede incluir los proxies de aplicación para la red interna
Zonas desmilitarizadas (II)
DMZ con cortafuegos de 3 interfaces
Esquema más simple para definir y gestionar una DMZ
Zonas desmilitarizadas (III)
DMZ doble cortafuegos (screened subnet)
Mejora del esquema anterior: añade un segundo cortafuegos
cortafuegos externo (de acceso): bloquea/controla tráfico no deseado
de red externa a DMZ
cortafuegos interno (de contención): bloquea/controla tráfico no
deseado de DMZ a red interna
Zonas desmilitarizadas (IV)
Se aumenta la separación entre la red de servicios
externos(DMZ) y la red interna
DMZ se sitúa entre cortafuegos externo e interno
2 niveles de seguridad (red DMZ + red interna)
Tráfico de exterior a red interna atraviesa 2 cortafuegos
Mayor tolerancia a fallos: evita puntos únicos de fallo
Superando cortafuegos externo, sólo queda desprotegida DMZ
Aún comprometiendo un equipo de la DMZ, se contaría con el
cortafuegos de contención
Limitaciones:
dificultad de administración
(gestionar 2 conjuntos de
reglas de filtrado funcionando
en conjunto)
sensación de falsa seguridad
Ventajas:
mayor seguridad y tolerancia a
fallos
mayor flexibilidad: usar tantas
DMZ como sea preciso, con
distintos niveles de seguridad
PARTE IV. Uso de shorewall
Shorewall
Configuración de Shorewall 
Shorewall
Shorewall (Shoreline Firewall) es una herramienta para
simplificar la construcción de sistemas cortafuegos que
hagan uso de NETFILTER
Shorewall no es un cortafuegos, es una herramienta de
alto nivel para configurar NETFILTER
Genera reglas NETFILTER en base a ficheros de
configuración que describen red y políticas de filtrado
Funciona de modo puntual, no continuo
Configura las reglas NETFILTER del kernel, pero no
monitoriza el tráfico en el firewall
Web del proyecto: http://shorewall.net/
Facilita la gestión de configuraciones de red complejas
La configuración de Shorewall se basa en el concepto de
zonas (red interna, red externa, dmz, etc)
Las políticas de filtrado y acceso se definen en base a
esas zonas
Configuración de Shorewall (I)
La configuración de Shorewall se realiza mediante ficheros
de texto ubicados en /etc/shorewall
Fichero /etc/shorewall/zones
Shorewall estructura la red en un conjunto de zonas, definidas
en el fichero /etc/shorewall/zones
Existe una zona predefinida ($FW) asociada al propio firewall
Ejemplo (three-interfaces)
#ZONE TYPE OPTIONS IN_OPTIONS OUT_OPTIONS
fw firewall
net ipv4
loc ipv4
dmz ipv4
Los equipos de la red (y los externos) estarán ubicados en una
de las zonas definidas.
Se especifica en los ficheros /etc/shorewall/interfaces y/o
/etc/shorewall/hosts
Las direcciones de los interfaces del firewall pertenecen a la zona
del firewall $FW.
Configuración de Shorewall (II)
Fichero /etc/shorewall/interfaces
Indica que interfaz/interfaces de red del firewall están
asociados con el tráfico de cada zona
#ZONE INTERFACE BROADCAST OPTIONS
net eth0 detect dhcp,routefilter,norfc1918
loc eth1 detect
dmz eth2 detect
Todas las máquinas (direcciones) conectadas a un interfaz
“pertencerán” a la zona correspondiente
Cuando varias zonas son “servidas” por un mismo interfaz,
se señala en el campo INTERFACE con “-”
Será necesario especificar en el fichero /etc/shorewall/hosts
las máquinas concretas de cada zona
Ejemplos de opciones:
norfc1918: interfaz no admite tráfico desde direcciones del
rango de IPs privadas)
blacklist: interfaz no admite máquinas de una lista negra de
máquinas prohibidas (/etc/shorewall/blacklist)
Configuración de Shorewall (III)
Fichero /etc/shorewall/hosts
Indica que equipos están asociados con cada zona (análogo a
/etc/shorewall/interfaces)
#ZONE HOST(S) OPTIONS
local1 eth1:192.168.3.0/24
local2 eth1:192.168.4.0/24
La reglas de filtrado de tráfico se expresan en términos de
zonas, mediante 2 ficheros
Las políticas generales (por defecto) para las conexiones entre
zonas se especifican en /etc/shorewall/policy
Las excepciones a las políticas por defecto se indican en el
fichero /etc/shorewall/rules
Funcionamiento del firewall definido por Shorewall
Las peticiones de conexión son “comprobadas” contra las
reglas de /etc/shorewall/rules
Si ninguna regla encaja se toma la acción que indique el
fichero /etc/shorewall/policy
Configuración de Shorewall (IV)
Fichero /etc/shorewall/policy
Especifica la acción por defecto para el tráfico entre dos pares
de zonas (origen+destino) y el tipo de log
#SOURCE DEST POLICY LOG LEVEL LIMIT:BURST
loc net ACCEPT
net all DROP info
all all REJECT info
Políticas posibles: ACCEPT, DROP, REJECT, QUEUE,
NFQUEUE, CONTINUE,NONE
Las políticas por defecto pueden tener acciones adicionales
asociadas, definidas en /etc/shorewall/actions
Configuración de Shorewall (V)
Fichero /etc/shorewall/rules
Controla el establecimiento de conexiones que supongan
excepciones a las definidas en /etc/shorewall/policy
Pueden definirse a nivel de zona o de direcciones dentro de
una zona (loc:192.168.100.23)
#ACTION SOURCE DEST PROTO DEST-PORT SOURCE-PORT ORIGINAL-DEST
DNAT net loc:10.10.10.3 tcp 80 - 130.252.100.69
REDIRECT loc 3128 tcp www - !192.168.2.2
ACCEPT loc $FW tcp 22
Acciones posibles: ACCEPT, NONAT, DROP, REJECT, DNAT,
SAME, REDIRECT, CONTINUE, LOG, etc
Posibilidad de definir/utilizar MACROS (combinaciones de
ACCION+nums. de puertos) → permite reglas más compactas
No es necesario definir reglas para diferenciar entre el tráfico
de establecimiento de conexiones y el tráfico que es parte de
una conexión ya establecida o es tráfico relacionado.
Shorewall gestiona el seguimiento y el estado de las
conexiones
Configuración de Shorewall (VI)
Traducción de direcciones (SNAT y DNAT)
El enmascaramiento de direcciones (SNAT: source-NAT) se
configura el fichero /etc/shorewall/masq
#INTERFACE SOURCE ADDRESS
eth0 192.168.1.0/24 206.124.146.176
eth1 eth2
Tráfico con origen 192.168.0.0/24 se enmascarará al enviarlo por interfaz
eth0 usando la dirección 206.124.146.176 (SNAT)
Tráfico con origen e eth2 se enmascarará al enviarlo por interfaz eth1
usando la dir. IP de ese interfaz (SNAT)
Si no se indica dirección se usa la asociada al interfaz
NOTA: Asegurarse que en /etc/shorewall/shorewall.conf tenga activada la
redirección (IP_FORWARDING=On)
La redirección de puertos (DNAT: destination-NAT) se
configura mediante reglas en /etc/shorewall/rules
#ACTION SOURCE DEST PROTO DEST-PORT
DNAT net dmz:10.10.10.23:80 tcp 80
Redirección tráfico web recibido hacia máquina 10.10.10.23 de DMZ
Configuración de Shorewall (VII)
Otros aspectos:
Shorewall soporta el uso de diferentes mecanismos (IPSEc,
OpenVPN, etc) para establecer túneles/enlaces cifrados con
los que definir redes privadas virtuales (VPN).
Especificadas en fichero /etc/shorewall/tunnels
Define el tipo de VPN (IPsec, OpenVPN, ...) y si interfaz asociado
Depuración y ejecución del firewall
$ shorewall start/stop: arranca/para el firewall (no
elimina las reglas en el kernel)
$ shorewall clear: “borra” en memoria las reglas
NETFILTER
$ shorewall trace start: arranca el firewall emitiendo
traza de los pasos seguidos
La distribución de Shorewall incluye conjuntos de ficheros de
configuración de ejemplo, que sirven como punto de partida
para crear el firewall.
Veremos three-interface http://shorewall.net/three-interface.htm
PARTE V. Uso de OpenVPN
Redes privadas virtuales (VPN)
Configuración y uso de OpenVPN 
Redes Virtuales Privadas
VPN (Virtual Private Network): Conjunto de tecnologías
que permiten extender el alcance de una red local
(privada) sobre la infraestructura de una red pública no
controlada, manteniendo la confidencialidad del tráfico.
Hacen uso de enlaces cifrados para definir conexiones
protegidas entre porciones “separadas” de la propia red
Ejemplos típicos:
Interconexión “segura” entre 2 delegaciones de una misma
organización usando una red pública no segura (Internet) [VPN
punto a punto]
Conexión segura de un usuario a la red interna desde equipos
fuera de la red de la organización [VPN de acceso remoto]
Evitan el uso de lineas dedicadas
Tecnologías: IPSec, PPTP, L2TP, túneles SSH, OpenVPN
OpenVPN (I)
OpenVPN es una implementacion de VPN que usa el
protocolo SSL/TLS (Secure Socket Layer/Transport Layer
Security) para crear enlaces de red cifrados.
Usualmente emplea la implementación OpenSSL
Web: http://www.openvpn.net
Permite 3 modos de operación:
Host a Host: crea un enlace cifrado entre dos máquinas
independientes
Road Warrior: permite que un usuario se conecte al servidor
OpenVPN desde fuera de la red propia y pueda acceder a sus
recursos
Red a Red: permite que 2 redes separadas pueden
comunicarse para formar una sóla red
Se crea la sensación de que están unidas por un enlace virtual
Tráfico de comunicación enviado sobre la red pública va cifrado
OpenVPN (II)
Funcionamiento:
Se establece una conexión SSL cifrada entre los 2 extremos
usando la red pública (por defecto usa el puerto UDP)
En los equipos conectados se crearán interfaces de red
virtuales (tun0, tun1, ...) para acceder a esa conexión
Funcionan como un interfaz de red convencional (ethX)
Tiene dir. IP asignada, participan en las reglas del firewall, etc
El tráfico que reciban se enviará cifrado sobre la conexión SSL
OpenVPN (III)
OpenVPN soporta 2 modos de autenticación/cifrado
Clave estática: se genera una clave estática que será
compartida por los 2 extremos
Esquema sencillo de configurar e implantar
Exige un mecanismo seguro para el intercambio previo de la
clave y la protección de esa clave en ambos extremos
Modo SSL: hace uso del mecanismo de establecimiento de
sesiones SSL (basado en certificados digitales) para acordar
una clave de sesión temporal que se usará para cifrar cada
conexión concreta
Exige que ambos extremos tengan certificados digitales
firmados por una autoridad reconocida por ambos
Shorewall contempla la definición de zonas VPN y el uso de
los enlaces virtuales cifrados creados por OpenVPN
Funcionamiento SSL/TLS
SSL: Secure Socket Layer
Desarrollo inicial por Netscape
Inicalmente para proteger tráfico HTTP, aplicable en otros protocolos.
Actualmente es el estándar TLS: Transport Later Security
Protege el tráfico empleando cifrado asimétrico, cifrado simétrico y
HMAC (autenticación de mensajes con HASH + clave secreta), garantizando:
Autenticación de las entidades (servidor y/o cliente): empleando
certificados digitales
Confidencialidad de los mensajes: empleando cifrado simétrico con claves
de cifrado negociadas/acordadas en cada conexión
Integridad y atenticidad de los mensajes: uso de HMAC con claves de
autenticación negociadas/acordadas en cada conexión
Establecimiento de conexión:
Intercambio de certificados servidor y cliente (opcional)
Si son reconocidos: intercambio seguro de clave secreta maestra
(mediante cifrado asimétrico)
Tráfico de mensajes: cifrados + autenticados con claves de sesión generadas
a partir de la clave secreta maestra
ANEXO. Uso de iptables
Uso de iptables (I)
Esquema reglas iptables
iptables -t tabla [COMANDO][CONDICIONES][OBJETIVO]
Comandos iptables
-L/--list cadena lista las reglas en uso en una cadena
-F/--flush cadena vacía una cadena
-Z/--zero cadena reinicia los contadores de una cadena
-P/--policy cadena DROP/ACCEPT establece la política por
defecto de una cadena
-A/--append cadena añade una regla (condiciones+objetivo) a
una cadena
-D/--delete cadena borra una regla de una cadena
-R/--replace cadena reemplaza una regla de una cadena
-I/--insert cadena inserta una regla de una cadena
Uso de iptables (II)
Condiciones iptables
Especifican los criterios que debe cumplir un paquete
(campos que lo componene) para que le sea aplicable la
acción de una regla
Direcciones IP
origen: -s/--source (-s 192.168.100.23, -s 10.10.10.0/24)
destino: -d/--destination (-d 10.10.10.47,-d 10.10.10.0/24)
Interfaz (dispositivo por el que se ha recibido o por que que
saldrá un paquete)
de entrada: -i/--in-interface (-i eth1)
[en input, forward, pre-routing]
de salida: -o/--out-interface (-o ppp0)
[en output, forward, post-routing]
Tipo de protocolo: -p/--protocol
protocolo nivel transporte: -p TCP, -p UDP, -p ICMP, -p all
Uso de iptables (III)
Condiciones iptables (cont.)
Puertos (para TCP y UDP)
de origen: -sport/--source-port
de destino: -dport/--destination-port
puede ser un número de puerto (-sport 80), un nombre de servicio (-
sport http) o un rango de puertos (-sport 1024:65535)
Control del estado de la conexión:
-m state --state [ESTADOS]
Soporte básico para reglas de filtrado ''con estado''
Situación del paquete respecto a la conexión a la que pertenece:
invalid: paquete no asociado a una conexión conocida
established: paquete que pertenece a una conex. válida ya establecida
new: paquete mediante el cual se está creando una nueva conexión
related: paquetes que inician una nueva conexión que está asociada con
otra ya establecida
Otro módulo para filtros con estado (seguimiento de conexiones):
-m conntrack –ctstate [ESTADOS]
Uso de iptables (IV)
Condiciones iptables (cont.)
Flags protocolo TCP: --tcp-flags ...
bits de control en paquetes TCP (SYN,ACK,FIN,RST,URG,PSH)
Direcciones MAC: -m –mac –mac-source ...
Límites:
-m limit –limit [ratio]
la regla encajará hasta que se alcance el ratio de ocurrencia (n/second,
n/minute, n/hour, n/day) especificado
-m limit –limit-burst [numero]
la regla encajará hasta que se alcance el valor máximo indicado
(reinicio de contadores)
Utiles para limitar logs y realizar una detección y control básico de
posibles ataques de denegación de servicio DoS(denial of service)
Nota: para expresar la negación de una condición en una
regla se emplea el símbolo !
-s ! localhost : el paquete no procede de la própia máquina
-dport ! ssh : todos los puertos destinos excepto el 23 (ssh)
Uso de iptables (V)
Objetivos iptables
Objetivos predefinidos en la tabla -t filter
A usar en las cadenas INPUT,OUTPUT,FORWARD
-j ACCEPT el paquete se acepta
Se lepermite que continúe su curso (a otra cadena o a su
destino final ) y se deja de recorrer la cadena actual
-j DROP se rechaza el paquete (sin informar al origen)
-j REJECT –reject-with [...] se rechaza el
paquete, informando al origen con el mensaje icmp
indicado
Uso de iptables (VI)
Objetivos iptables (cont.)
Objetivos predefinidos en la tabla -t nat
-j SNAT –to-source Realiza SNAT(source-NAT) sobre
los paquetes salientes [enmascaramiento de direcciones]
Cambia la dir. IP (opc. puerto) de origen del paquete
Sólo se puede invocar en la cadena POST-ROUTING
-j MASQUERADE También realiza SNAT, pero usando la dir.
IP del propio equipo
Útil en conexiones volátiles [adsl, modem])
Sólo se puede invocar en la cadena POST-ROUTING
-j DNAT –to-destination Realiza DNAT(destination-
NAT) sobre los paquetes entrantes [redireccionamiento de
puertos]
Cambia la dir. IP (opc. puerto) de destino del paquete
Sólo se puede invocar en la cadena PRE-ROUTING(s´olo
disponible en prerouting (y opcionalmente en OUTPUT)
Uso de iptables (VII)
Objetivos iptables (cont.)
Objetivos predefinidos para hacer log
No se detiene el recorrido por la cadena
-j log crea entrada en el log del sistema [/var/log/sysylog]
Opciones: --log-prefix, --log-level
-j ulog crea entrada en un log definido por usuario
Objetivos definidos por el usuario
Es posible crear cadenas definidas por el usuario (-N
micadena) y eliminarlas (-X micadena)
Para acceder a una cadena de usuario bastará incluir la acción
-j micadena en una regla de las cadenas predefinidas.
El paquete recorre las reglas de la cadena de usuario hasta
encajar en las condiciones de alguna regla, ejecutando su
acción
Si no encaja en ninguna regla, el paquete retorna a la cadena
anterior desde la que accedió a la cadena de usuario.
Ejemplo IPTABLES
Firewall básico de borde con enmascaramiento de la red interna
(NAT)
Red interna del rango 10.10.10.0/24 [mascara 255.255.255.0]
Una única dir. IP pública [193.147.87.47]
Interfaces del firewall: eth0 (red externa), eth1 (red interna)
Servicios hacia el exterior (idealmente deberían ubicarse en DMZ)
Servidores http y https públicos en la máquina interna 10.10.10.66
Servidores corporativos de correo saliente (smtp) y entrante (pop3) en
10.10.10.77
Restricciones sobre el firewall
Todas las conexiones hacia el firewall están prohibidas
Sólo se permiten conexiones ssh (puerto 22) que provengan de
equipos de la red interna (para labores de administración)
Restriciones de tráfico desde el interior
No se permite la conexión para envío de e-mail (smtp) con máquinas
del exterior.
Todas los demás tipos de conexión están autorizados
#!/bin/sh
# Vaciar y reiniciar las tablas actuales
iptables -F
iptables -X
iptables -Z
iptables -t nat -F
# Establecer politicas por defecto
iptables -P INPUT DROP # descartar entradas al firewall
iptables -P OUTPUT ACCEPT # aceptar salidas del firewall
iptables -P FORWARD ACCEPT # aceptar reenvios a traves del firewall
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
# Permitir localhost
iptables -A INPUT -i lo -j ACCEPT
# SNAT (enmascaram. de salida de red interna 10.10.10.0/24) hacia exterior
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o eth0 
-j SNAT --to-source 193.147.87.47
# otra posibilidad: -j MASQUERADE
# DNAT (redireccionamiento puertos tcp 80, 25, 110 a red interna)
iptables -t nat -A PREROUTING -i eth0 -d 10.0.100.0/24 -j DROP
# NOTA: descartar antes paquetes externos dirigidos a red interna
# si se hiciera en FORWARD, se eliminarian las redirecciones
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 
-j DNAT --to-destination 10.10.10.66:80
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 25 
-j DNAT --to-destination 10.10.10.77:25
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 110 
-j DNAT --to-destination 10.10.10.77.110
# Reglas de filtrado
# Filtrado conexiones entrantes al firewall
# - permitir SSH desde red interna, resto bloqueado por politica por defecto
iptables -A INPUT -i eth1 -s 10.10.10/24 -p tcp --dport 22 -j ACCEPT
# Habilitar forward de paquetes
echo 1 > /proc/sys/net/ipv4/ip_forward
# Filtrado salida red interna
# - bloquear salida conex. SMTP de red interna,
# el resto está permitido por politica por defecto
iptable -A FORWARD -i eth1 -o eth0 -s 10.10.10.0/24 
-p tcp -- dport 25 -j DROP

Más contenido relacionado

La actualidad más candente

Seguridad en redes tcp
Seguridad en redes tcpSeguridad en redes tcp
Seguridad en redes tcpElim Aqp
 
Que es y como usar nmap
Que es y como usar nmapQue es y como usar nmap
Que es y como usar nmapLuis Pinilla
 
Contrucción de Cortafuego (Firewall) con IPTABLES
Contrucción de Cortafuego (Firewall) con IPTABLESContrucción de Cortafuego (Firewall) con IPTABLES
Contrucción de Cortafuego (Firewall) con IPTABLESpablo
 
Clase practica seguridad escaneo con nma pf
Clase practica seguridad   escaneo con nma pfClase practica seguridad   escaneo con nma pf
Clase practica seguridad escaneo con nma pfRobert Puican Gutierrez
 
Exposicion sistemas seguridad_linux_software_libre
Exposicion sistemas seguridad_linux_software_libreExposicion sistemas seguridad_linux_software_libre
Exposicion sistemas seguridad_linux_software_libreLuis Angel F
 
Iptables linux
Iptables linuxIptables linux
Iptables linuxocnelep
 

La actualidad más candente (10)

Seguridad en redes tcp
Seguridad en redes tcpSeguridad en redes tcp
Seguridad en redes tcp
 
Redes ,,,,
Redes ,,,,Redes ,,,,
Redes ,,,,
 
Que es y como usar nmap
Que es y como usar nmapQue es y como usar nmap
Que es y como usar nmap
 
Contrucción de Cortafuego (Firewall) con IPTABLES
Contrucción de Cortafuego (Firewall) con IPTABLESContrucción de Cortafuego (Firewall) con IPTABLES
Contrucción de Cortafuego (Firewall) con IPTABLES
 
Iptables
IptablesIptables
Iptables
 
Clase practica seguridad escaneo con nma pf
Clase practica seguridad   escaneo con nma pfClase practica seguridad   escaneo con nma pf
Clase practica seguridad escaneo con nma pf
 
Reconocimiento Activo
Reconocimiento ActivoReconocimiento Activo
Reconocimiento Activo
 
Uso del escáner de puertos nmap
Uso del escáner de puertos nmapUso del escáner de puertos nmap
Uso del escáner de puertos nmap
 
Exposicion sistemas seguridad_linux_software_libre
Exposicion sistemas seguridad_linux_software_libreExposicion sistemas seguridad_linux_software_libre
Exposicion sistemas seguridad_linux_software_libre
 
Iptables linux
Iptables linuxIptables linux
Iptables linux
 

Similar a Firewalls (20)

Protección perimetral. Fundamentos de firewalls y redes privadas virtuales
Protección perimetral. Fundamentos de firewalls y redes privadas virtualesProtección perimetral. Fundamentos de firewalls y redes privadas virtuales
Protección perimetral. Fundamentos de firewalls y redes privadas virtuales
 
Firewall
FirewallFirewall
Firewall
 
IPTABLES y SQUID‏
IPTABLES y SQUID‏IPTABLES y SQUID‏
IPTABLES y SQUID‏
 
Cortafuegos o firewall
Cortafuegos o firewallCortafuegos o firewall
Cortafuegos o firewall
 
Firewall y seguridad de internet
Firewall y seguridad de internetFirewall y seguridad de internet
Firewall y seguridad de internet
 
6 WebConferencia Curso 201494.pptx
6 WebConferencia Curso 201494.pptx6 WebConferencia Curso 201494.pptx
6 WebConferencia Curso 201494.pptx
 
Criterio45cortafuegos
Criterio45cortafuegosCriterio45cortafuegos
Criterio45cortafuegos
 
Cortafuego
CortafuegoCortafuego
Cortafuego
 
Firewall Leidy
Firewall LeidyFirewall Leidy
Firewall Leidy
 
Firewall Leidy
Firewall LeidyFirewall Leidy
Firewall Leidy
 
Firewall Leidy
Firewall LeidyFirewall Leidy
Firewall Leidy
 
Firewall y nat
Firewall y natFirewall y nat
Firewall y nat
 
Clase 12
Clase 12Clase 12
Clase 12
 
Clase 12
Clase 12Clase 12
Clase 12
 
Firewall
FirewallFirewall
Firewall
 
INFORMATICA.pptx
INFORMATICA.pptxINFORMATICA.pptx
INFORMATICA.pptx
 
Expo firewall
Expo firewallExpo firewall
Expo firewall
 
Snort
SnortSnort
Snort
 
Snort
SnortSnort
Snort
 
Snort
SnortSnort
Snort
 

Más de Tensor

Libertad
LibertadLibertad
LibertadTensor
 
Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)Tensor
 
Metodo de la bisección
Metodo de la bisecciónMetodo de la bisección
Metodo de la bisecciónTensor
 
Transito vehicular
Transito vehicularTransito vehicular
Transito vehicularTensor
 
Teoria de colas
Teoria de colasTeoria de colas
Teoria de colasTensor
 
Practica 7 2016
Practica 7 2016Practica 7 2016
Practica 7 2016Tensor
 
Practica 6 2016
Practica 6 2016Practica 6 2016
Practica 6 2016Tensor
 
Game maker
Game makerGame maker
Game makerTensor
 
Practica 5 2016
Practica 5 2016Practica 5 2016
Practica 5 2016Tensor
 
Procesamiento de archivos
Procesamiento de archivosProcesamiento de archivos
Procesamiento de archivosTensor
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadenaTensor
 
Simulación en promodel clase 04
Simulación en promodel clase 04Simulación en promodel clase 04
Simulación en promodel clase 04Tensor
 
Reduccion de orden
Reduccion de ordenReduccion de orden
Reduccion de ordenTensor
 
Variación+de+parametros
Variación+de+parametrosVariación+de+parametros
Variación+de+parametrosTensor
 
Coeficientes indeterminados enfoque de superposición
Coeficientes indeterminados   enfoque de superposiciónCoeficientes indeterminados   enfoque de superposición
Coeficientes indeterminados enfoque de superposiciónTensor
 
Bernoulli y ricatti
Bernoulli y ricattiBernoulli y ricatti
Bernoulli y ricattiTensor
 
Practica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicioPractica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicioTensor
 
Clase 14 ondas reflejadas
Clase 14 ondas reflejadasClase 14 ondas reflejadas
Clase 14 ondas reflejadasTensor
 
Ondas em
Ondas emOndas em
Ondas emTensor
 
Clase 7 ondas electromagneticas
Clase 7 ondas electromagneticasClase 7 ondas electromagneticas
Clase 7 ondas electromagneticasTensor
 

Más de Tensor (20)

Libertad
LibertadLibertad
Libertad
 
Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)
 
Metodo de la bisección
Metodo de la bisecciónMetodo de la bisección
Metodo de la bisección
 
Transito vehicular
Transito vehicularTransito vehicular
Transito vehicular
 
Teoria de colas
Teoria de colasTeoria de colas
Teoria de colas
 
Practica 7 2016
Practica 7 2016Practica 7 2016
Practica 7 2016
 
Practica 6 2016
Practica 6 2016Practica 6 2016
Practica 6 2016
 
Game maker
Game makerGame maker
Game maker
 
Practica 5 2016
Practica 5 2016Practica 5 2016
Practica 5 2016
 
Procesamiento de archivos
Procesamiento de archivosProcesamiento de archivos
Procesamiento de archivos
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadena
 
Simulación en promodel clase 04
Simulación en promodel clase 04Simulación en promodel clase 04
Simulación en promodel clase 04
 
Reduccion de orden
Reduccion de ordenReduccion de orden
Reduccion de orden
 
Variación+de+parametros
Variación+de+parametrosVariación+de+parametros
Variación+de+parametros
 
Coeficientes indeterminados enfoque de superposición
Coeficientes indeterminados   enfoque de superposiciónCoeficientes indeterminados   enfoque de superposición
Coeficientes indeterminados enfoque de superposición
 
Bernoulli y ricatti
Bernoulli y ricattiBernoulli y ricatti
Bernoulli y ricatti
 
Practica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicioPractica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicio
 
Clase 14 ondas reflejadas
Clase 14 ondas reflejadasClase 14 ondas reflejadas
Clase 14 ondas reflejadas
 
Ondas em
Ondas emOndas em
Ondas em
 
Clase 7 ondas electromagneticas
Clase 7 ondas electromagneticasClase 7 ondas electromagneticas
Clase 7 ondas electromagneticas
 

Último

Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfDaniel Ángel Corral de la Mata, Ph.D.
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptAlberto Rubio
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfEDILIAGAMBOA
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...YobanaZevallosSantil1
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxJUANCARLOSAPARCANARE
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Angélica Soledad Vega Ramírez
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicaGianninaValeskaContr
 

Último (20)

Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdf
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básica
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 

Firewalls

  • 1. Indice Parte I. Cortafuegos Tipos de cortafuegos Filtrado de paquetes Reglas de filtrado Parte II. NETFILTER/iptables Arquitectura de NETFILTER/iptables Módulos NETFILTER Interfaces, herramientas e información Parte III. Topologías de cortafuegos Topologías básicas Zonas desmilitarizadas 
  • 2. Indice Parte IV. Uso de shorewall Shorewall Configuración de Shorewall  Parte V. Uso de OpenVPN Redes privadas virtuales (VPN) Configuración y uso de OpenVPN  ANEXO: Uso de iptables
  • 3. PARTE I. Cortafuegos Tipos de cortafuegos Filtrado de paquetes Reglas de filtrado
  • 4. Cortafuegos (I) Cortafuegos/Firewalls: Mecanismos de control de acceso a la red y los recursos informáticos de una organización Formado por componentes hardware y software Separa nuestra red interna (equipos de confianza) de los equipos externos (potencialmente hostiles) mediante el control del tráfico Deniega intentos de conexión no autorizados (en ambos sentidos) Finalidad: Prevención de ataques desde exterior hacia equipos internos Opcionalmente: control del uso de la red por parte de los equipos internos Protección del propio equipo: “firewalls personales”
  • 5. Cortafuegos (II) Tipos de controles realizados Control de Servicios: determinar los tipos de servicios de red accesibles desde interior y exterior Dos grandes alternativas: Cortafuegos filtra tráfico a los servicios basándose en la dirección IP + núms. de puerto Cortafuegos proporciona un software intermediario (Proxy) para cada servicio concreto a controlar Control de Usuarios: control de accesos en base al usuario concreto que pretende acceder Control de Comportamiento: control de cómo se usan los servicios
  • 6. Cortafuegos (II) Utilidad de los Cortafuegos (I) Definen un punto único de resistencia frente a ataques mantiene usuarios no autorizados fuera de la red protegida prohibe entrada/salida de servicios potencialmente vulnerables protección frente a ciertos ataques de suplantación de IP (IP spoofing) simplifica la administración (punto único de entrada) Ubicación donde realizar supervisión de eventos de seguridad registro de accesos, intentos de intrusión, gestión de alarmas de seguridad, auditorias, etc
  • 7. Cortafuegos (III) Utilidad de los Cortafuegos (II) Ubicación para situar otros elementos de gestión de red traducción de direcciones, NAT(network address translation) direc. locales (privadas) <-> direc. públicas de Internet software de auditoria y registro del uso de la red plataforma para implantar pasarelas IPSec o similares (enlaces de redes virtuales privadas [VPN]) plataforma donde centralizar sistemas de detección de intrusiones (ej.: SNORT) plataforma para filtros de nivel de aplicación (antivirus, SPAM) Limitaciones No protegen contra ataques que no pasen por el Cortafuegos No protegen contra amenazas internas Pueden proporcionar una sensación de falsa seguridad el Cortafuegos no basta por si sólo seguridad en redes afecta a muchos aspectos
  • 8. Tipos de Cortafuegos (I) Filtros de paquetes Inspeccionan los paquetes recibidos/enviados y comprueban si encajan en las reglas Filtrado basado en la información contenida en cada paquete recibido/enviado cada paquete se inspecciona de forma aislada y la decisión se toma de forma aislada filtro ''sin estado'': no tiene en cuenta si los paquetes son parte de una conexión Trabajan en los niveles de RED y TRANSPORTE de la pila TCP/IP Manejan info. de los protocolos IP, TCP, UDP, ICMP Uso de puertos estándar para bloquear servicios concretos Integrados en routers o en equipos dedicados. Ejemplo en GNU/Linux: NETFILTER/iptables “básico”
  • 9. Tipos de Cortafuegos (II) Filtros ''con estado'' (filtros de circuitos) Llevan registro de las conexiones que pasan a través del Cortafuegos Estudian y reconocen los paquetes que inician/finalizan las conexiones que forman parte de conexiones establecidas que están relacionados con conexiones previas Permiten un control más fino que los filtros sin estado Ejemplo en GNU/Linux: NETFILTER/iptables con módulos de seguimiento de conexiones (connection tracking)
  • 10. Tipos de Cortafuegos (III) Filtros a nivel de aplicación (Proxies) Cortafuegos basados en el uso de Proxies en el nivel de aplicación interceptan los mensajes entre aplicaciones bloqueo de aplicaciones no permitidas (las que no cuenten con Proxy) control del tráfico de las aplicaciones permitidas Proxy ''comprende'' el protocolo de una aplicación concreta previene abusos permite limitar porciones concretas del protocolo detectan uso de protocolos no permitidos en puertos estándar Mayor ''conocimiento'' sobre el tráfico realiza un análisis en profundidad de los paquetes Pueden ofrecer otros servicios de valor añadido (caché) Ejemplos en GNU/Linux: Proxy-cache web SQUID
  • 11. Filtrado de paquetes (I) Implementado en los dispositivos que encaminan tráfico entre la red externa y la interna Trabaja en las capas Red (IP) y/o Transporte (TCP,UDP) Suele implementarse como un elemento añadido a un router o como un equipo dedicado Analizan cada paquete (antes de la decisión de enrutado) y aplican un conjunto de reglas para decidir si lo retransmite o lo descarta inspecciona las cabeceras del paquete y comprueba si encajan en la lista de reglas decisión: aceptación/rechazo Filtrado basado en la información contenida en cada paquete concreto cada paquete se analizan de forma aislada normalmente no tienen en cuenta si son parte de una conexión
  • 12. Filtrado de paquetes (II) Las reglas de filtrado emplean la información contenida en cada paquete de red analizado direcciones IP de origen y destino puertos de origen y destino (TCP, UDP) tipo de protocolo: TCP, UDP, IMCP interfaz de entrada o salida (en Cortafuegos con 3 o más conexiones de red) otra información: tamaño del paquete, tiempo del vida del paquete, indicadores específicos de protocolos de transporte El control de servicios se basa en el filtrado de los puertos estándar (http://www.iana.org/assignments/port-numbers) ftp 21/tcp dns 53/tcp,53/udp rpc 111/tcp,111/udp ssh 22/tcp finger 79/tcp ldap 389/tcp telnet 23/tcp http 80/tcp https 443/tcp smtp 25/tcp pop3 110/tcp mysql 3306/tcp
  • 13. Reglas de filtrado Funcionamiento general Filtrado paquetes se configura mediante lista de reglas estáticas condiciones: basadas en campos de cabeceras IP y/o TCP acciones: descartar, rechazar, retransmitir Reglas comprobadas secuencialmente (el orden importa) Cuando hay una correspondencia, se invoca la acción Si ninguna regla encaja, se aplica la acción predeterminada denegar por defecto: lo que no está expresamente permitido, está prohibido indicar explicitamente qué servicios se dejan pasar política conservadora, mayor nivel de protección aceptar por defecto: lo que no está expresamente prohibido, está permitido servicios vulnerables/peligrosos deben bloquearse explícitamente política más permisible, nivel de protección más bajo
  • 14. NETFILTER/iptables (I) NETFILTER es un componente del núcleo de Linux (desde la ver. 2.4) encargado de la manipulación de paquetes de red Tareas que realiza filtrado de paquetes traducción de direcciones (NAT) modificación de paquetes Página del proyecto: http://www.netfilter.org iptables es una herramienta/aplicación que hace uso de la infraestructura que ofrece NETFILTER para construir y configurar firewalls. permite definir políticas de filtrado, de NAT y realizar logs remplaza a herramientas anteriores: ifwadmin, ipchains puede usar las capacidades de seguimiento de conexiones NETFILTER para definir firewalls con estado
  • 15. PARTE II. NETFILTER/iptables Arquitectura de NETFILTER/iptables Módulos NETFILTER Interfaces, herramientas e información
  • 16. NETFILTER/iptables (II) Las tareas a realizar sobre los paquetes (filtrado, NAT, modificación) se controlan mediante distintos conjuntos de reglas, en función de la situación/momento en la que se encuentre un paquete durante su procesamiento dentro de NETFILTER. Las listas de reglas y demás datos residen en el espacio de memoria del kernel La herramienta de nivel de usuario iptables permite al administrador configurar las listas de reglas que usa el kernel para decidir qué hacer con los paquetes de red que maneja. En la práctica un ''firewall'' iptables consistirá en un script de shell conteniendo los comandos iptables para configurar convenientemente las listas de reglas. Tipicamente ese script residirá en /etc/init.d ó /etc/rcX.d para que sea ejecutado cada vez que arranca el sistema Otras utilidades: iptables-save, iptable-restore
  • 17. Arquitectura NETFILTER/iptables (I) Componentes NETFILTER/iptables (I) TABLAS: se corresponden con los distintos tipos de procesamiento que se pueden aplicar sobre los paquetes (3 tablas disponibles) filter: Controla decisiones de filtrado de paquetes (aceptar/denegar) Cadenas: sc input, output, forward nat: Controla traducción de direcciones (NAT: network address translation) Cadenas: prerouting, postrouting} (opc. output) mangle: Controla los procesos de modificación del contenido y las opciones de los paquetes. Cadenas: input, output, forward, prerouting, postrouting Las reglas de cada tabla se organizan en cadenas, que se consultarán en momentos concretos del flujo de los paquetes
  • 18. Arquitectura NETFILTER/iptables (II) Componentes NETFILTER/iptables (cont.) CADENAS: Contienen las listas de reglas a aplicar sobre los paquetes 5 cadenas predeterminadas, asociadas a momentos concretos del flujo de los paquetes INPUT: reglas a a plicar sobre los paquetes destinados a la propia máquina controla las entradas al propio equipo/cortafuegos OUTPUT: reglas a aplicar sobre los paquetes originados en la propia máquina, controla las salidas del propio equipo/cortafuegos FORWARD: reglas a aplicar sobre los paquetes que atraviesan la máquina con destino a otras (paquetes en tránsito reenviados) usadas en Cortafuegos de borde (protección red interna)
  • 19. Arquitectura NETFILTER/iptables (II) (cadenas predefinidas cont.) PRE-ROUTING: reglas a aplicar sobre paquetes justo antes de enviarlos a la red usadas para DNAT (destination NAT) [redirección de puertos] POST-ROUTING: reglas aplicar sobre paquetes (propios o ajenos) recibidos de la red se aplican antes de decidir a dónde encaminarlos [proceso local o reenvío] usadas para SNAT (source NAT) [enmascaramiento] Se pueden crear cadenas definidas por el usuario (comando iptables -N cadena}, a las que se accederá desde reglas incluidas en alguna de las cadenas predeterminadas
  • 20. Arquitectura NETFILTER/iptables (III) Flujo de paquetes en NETFILTER/iptables
  • 21. Arquitectura NETFILTER/iptables (IV) Funcionamiento de la reglas NETFILTER/iptables Para cada paquete, en función del procesamiento que vaya a sufrir, se consulta la cadena que corresponda a su situación dentro de NETFILTER Dentro de cada cadena las reglas se inspeccionan secuencialmente [el orden de reglas es MUY importante] Si el paquete encaja con las condiciones de una regla, se ejecuta la acción correspondiente y se abandona la cadena (se deja de mirar la cadena) Si el paquete no encaja con ninguna regla, se le aplica política por defecto que se haya asignado a esa cadena. por defecto las cadenas predeterminadas están inicializadas con una política accept al agotar las cadenas definidas por el usuario, se retorna a la cadena predeterminada que la activó
  • 22. Módulos NETFILTER adicionaes NETFILTER tiene una arquitectura modular que permite la inclusión de nuevos componentes Es posible incluir nuevas condiciones y objetivos que permitan hacer distintos tipos de controles/procesamiento sobre los paquetes. http://www.netfilter.org/projects/patch-o-matic/index.html Repositorios: base, extra y external Algunos ejemplos geoip: permite identificar el origen geográfico de un paquete en base a su dirección IP. Ipp2p: aporta capacidades para reconocer algunos tipos de tráfico P2P (kazaa, edk, etc) string: permite emplear reglas que analicen cadenas de texto presentes en la carga útil de los paquetes procesdos Descripción de módulos disponibles (patches) http://www.netfilter.org/documentation/HOWTO/netfilter-extensions-HOWTO.html
  • 23. Interfaces, herramientas e información Interfaces gráficos Firestarter: http://www.fs-security.com/ FirewallBuilder: http://www.fwbuilder.org/ KMyFirewall: http://www.kmyfirewall.org/ Guardog: http://www.simonzone.com/software/guarddog/ Herramientas en modo texto Shorewall: http://shorewall.net/ FireHOL: http://firehol.sourceforge.net/ Dwall: http://dag.wieers.com/home-made/dwall/ Fuentes de información Página del proyecto:http://www.netfilter.org/documentation/ Tutorial detallado: http://iptables-tutorial.frozentux.net/ Tutorial práctico en español: http://www.pello.info/filez/firewall/iptables.html
  • 24. PARTE III. Topologías de cortafuegos Topologías básicas Zonas desmilitarizadas 
  • 25. Topologías básicas de cortafuegos (I) Cortafuegos básico de borde Un equipo actúa como cortafuegos, conectando la red interna con la externa Ofrece todas las funcionalidades de cortafuegos +(opcionalmente) todos los servicios adicionales Si se ve comprometido, todo el sistema se compromete Opción 1: Router con filtrado de paquetes Opción más simple, pero menos potente Escasas posibilidades de monitorizacion Opción 2: Equipo dedicado (dual homed host) Sistema estandar con 2 interfaces de red con la posibilidad de encaminamiento (IP forwarding) activada Todas las conexiones pasan a traves de él Puede integrar los Proxies precisos
  • 26. Topologías básicas de cortafuegos (II) Cortafuegos básico de borde (cont.) Organizacion típica dual homed host Los equipos de la red externa sólo pueden comunicarse con el dual homed host Idealmente, lodos los servicios al exterior se ofrecerán únicamente desde el dual homed host Equipos de red interna y externa no deberían poder entrar en contacto directamente, sino a traves de un intermediario(Proxy)
  • 27. Topologías básicas de cortafuegos (III) Host oculto (screened host) Ofrecer los servicios (internos y externos) en una única máquina ubicada en el interior alojará a los Proxies de aplicación usados por la red interna alojará los servicios ofrecidos al exterior en el esquema anterior estaban en el Cortafuegos o repartidos en la LAN interna Única máquina accesible desde el exterior (host bastion) Elemento potencialmente vulnerable por ser el único accesible desde el exterior Administración delicada (es la base de la seguridad de este esquema) mínimos servicios software imprescindibles actualizaciones de seguridad del S.O. + servidores monitorización de ficheros de log
  • 28. Topologías básicas de cortafuegos (VI) Host inseguro (untrusted host) [variante del anterior] El host bastión con los servicios hacia el exterior se ubica fuera de la red protegida Cortafuegos no tiene efecto sobre él Ofrece los servicios públicos sin debilitar la red interna Configuración y administración delicada HOST OCULTO HOST INSEGURO
  • 29. Zonas desmilitarizadas (I) Red de Perímetro/Zona Desmilitarizada(DMZ) Objetivo: aislar los servicios ofrecidos al exterior en una red propia para evitar acceso a la red protegida Los host bastión se sitúan detrás del cortafuegos, pero en una red aislada (DMZ) Incrementa seguridad, fiabilidad y disponibilidad respecto a los esquemas anteriores Los equipos internos siguen sin poder confiar en los equipos de la DMZ DMZ es accesible desde el exterior y sus equipos pueden haber sido comprometidos La DMZ define una red de servicios públicos Contiene todos los equipos y sistemas que requieran acceso controlado desde el exterior (web, email, dns, etc) Puede incluir los proxies de aplicación para la red interna
  • 30. Zonas desmilitarizadas (II) DMZ con cortafuegos de 3 interfaces Esquema más simple para definir y gestionar una DMZ
  • 31. Zonas desmilitarizadas (III) DMZ doble cortafuegos (screened subnet) Mejora del esquema anterior: añade un segundo cortafuegos cortafuegos externo (de acceso): bloquea/controla tráfico no deseado de red externa a DMZ cortafuegos interno (de contención): bloquea/controla tráfico no deseado de DMZ a red interna
  • 32. Zonas desmilitarizadas (IV) Se aumenta la separación entre la red de servicios externos(DMZ) y la red interna DMZ se sitúa entre cortafuegos externo e interno 2 niveles de seguridad (red DMZ + red interna) Tráfico de exterior a red interna atraviesa 2 cortafuegos Mayor tolerancia a fallos: evita puntos únicos de fallo Superando cortafuegos externo, sólo queda desprotegida DMZ Aún comprometiendo un equipo de la DMZ, se contaría con el cortafuegos de contención Limitaciones: dificultad de administración (gestionar 2 conjuntos de reglas de filtrado funcionando en conjunto) sensación de falsa seguridad Ventajas: mayor seguridad y tolerancia a fallos mayor flexibilidad: usar tantas DMZ como sea preciso, con distintos niveles de seguridad
  • 33. PARTE IV. Uso de shorewall Shorewall Configuración de Shorewall 
  • 34. Shorewall Shorewall (Shoreline Firewall) es una herramienta para simplificar la construcción de sistemas cortafuegos que hagan uso de NETFILTER Shorewall no es un cortafuegos, es una herramienta de alto nivel para configurar NETFILTER Genera reglas NETFILTER en base a ficheros de configuración que describen red y políticas de filtrado Funciona de modo puntual, no continuo Configura las reglas NETFILTER del kernel, pero no monitoriza el tráfico en el firewall Web del proyecto: http://shorewall.net/ Facilita la gestión de configuraciones de red complejas La configuración de Shorewall se basa en el concepto de zonas (red interna, red externa, dmz, etc) Las políticas de filtrado y acceso se definen en base a esas zonas
  • 35. Configuración de Shorewall (I) La configuración de Shorewall se realiza mediante ficheros de texto ubicados en /etc/shorewall Fichero /etc/shorewall/zones Shorewall estructura la red en un conjunto de zonas, definidas en el fichero /etc/shorewall/zones Existe una zona predefinida ($FW) asociada al propio firewall Ejemplo (three-interfaces) #ZONE TYPE OPTIONS IN_OPTIONS OUT_OPTIONS fw firewall net ipv4 loc ipv4 dmz ipv4 Los equipos de la red (y los externos) estarán ubicados en una de las zonas definidas. Se especifica en los ficheros /etc/shorewall/interfaces y/o /etc/shorewall/hosts Las direcciones de los interfaces del firewall pertenecen a la zona del firewall $FW.
  • 36. Configuración de Shorewall (II) Fichero /etc/shorewall/interfaces Indica que interfaz/interfaces de red del firewall están asociados con el tráfico de cada zona #ZONE INTERFACE BROADCAST OPTIONS net eth0 detect dhcp,routefilter,norfc1918 loc eth1 detect dmz eth2 detect Todas las máquinas (direcciones) conectadas a un interfaz “pertencerán” a la zona correspondiente Cuando varias zonas son “servidas” por un mismo interfaz, se señala en el campo INTERFACE con “-” Será necesario especificar en el fichero /etc/shorewall/hosts las máquinas concretas de cada zona Ejemplos de opciones: norfc1918: interfaz no admite tráfico desde direcciones del rango de IPs privadas) blacklist: interfaz no admite máquinas de una lista negra de máquinas prohibidas (/etc/shorewall/blacklist)
  • 37. Configuración de Shorewall (III) Fichero /etc/shorewall/hosts Indica que equipos están asociados con cada zona (análogo a /etc/shorewall/interfaces) #ZONE HOST(S) OPTIONS local1 eth1:192.168.3.0/24 local2 eth1:192.168.4.0/24 La reglas de filtrado de tráfico se expresan en términos de zonas, mediante 2 ficheros Las políticas generales (por defecto) para las conexiones entre zonas se especifican en /etc/shorewall/policy Las excepciones a las políticas por defecto se indican en el fichero /etc/shorewall/rules Funcionamiento del firewall definido por Shorewall Las peticiones de conexión son “comprobadas” contra las reglas de /etc/shorewall/rules Si ninguna regla encaja se toma la acción que indique el fichero /etc/shorewall/policy
  • 38. Configuración de Shorewall (IV) Fichero /etc/shorewall/policy Especifica la acción por defecto para el tráfico entre dos pares de zonas (origen+destino) y el tipo de log #SOURCE DEST POLICY LOG LEVEL LIMIT:BURST loc net ACCEPT net all DROP info all all REJECT info Políticas posibles: ACCEPT, DROP, REJECT, QUEUE, NFQUEUE, CONTINUE,NONE Las políticas por defecto pueden tener acciones adicionales asociadas, definidas en /etc/shorewall/actions
  • 39. Configuración de Shorewall (V) Fichero /etc/shorewall/rules Controla el establecimiento de conexiones que supongan excepciones a las definidas en /etc/shorewall/policy Pueden definirse a nivel de zona o de direcciones dentro de una zona (loc:192.168.100.23) #ACTION SOURCE DEST PROTO DEST-PORT SOURCE-PORT ORIGINAL-DEST DNAT net loc:10.10.10.3 tcp 80 - 130.252.100.69 REDIRECT loc 3128 tcp www - !192.168.2.2 ACCEPT loc $FW tcp 22 Acciones posibles: ACCEPT, NONAT, DROP, REJECT, DNAT, SAME, REDIRECT, CONTINUE, LOG, etc Posibilidad de definir/utilizar MACROS (combinaciones de ACCION+nums. de puertos) → permite reglas más compactas No es necesario definir reglas para diferenciar entre el tráfico de establecimiento de conexiones y el tráfico que es parte de una conexión ya establecida o es tráfico relacionado. Shorewall gestiona el seguimiento y el estado de las conexiones
  • 40. Configuración de Shorewall (VI) Traducción de direcciones (SNAT y DNAT) El enmascaramiento de direcciones (SNAT: source-NAT) se configura el fichero /etc/shorewall/masq #INTERFACE SOURCE ADDRESS eth0 192.168.1.0/24 206.124.146.176 eth1 eth2 Tráfico con origen 192.168.0.0/24 se enmascarará al enviarlo por interfaz eth0 usando la dirección 206.124.146.176 (SNAT) Tráfico con origen e eth2 se enmascarará al enviarlo por interfaz eth1 usando la dir. IP de ese interfaz (SNAT) Si no se indica dirección se usa la asociada al interfaz NOTA: Asegurarse que en /etc/shorewall/shorewall.conf tenga activada la redirección (IP_FORWARDING=On) La redirección de puertos (DNAT: destination-NAT) se configura mediante reglas en /etc/shorewall/rules #ACTION SOURCE DEST PROTO DEST-PORT DNAT net dmz:10.10.10.23:80 tcp 80 Redirección tráfico web recibido hacia máquina 10.10.10.23 de DMZ
  • 41. Configuración de Shorewall (VII) Otros aspectos: Shorewall soporta el uso de diferentes mecanismos (IPSEc, OpenVPN, etc) para establecer túneles/enlaces cifrados con los que definir redes privadas virtuales (VPN). Especificadas en fichero /etc/shorewall/tunnels Define el tipo de VPN (IPsec, OpenVPN, ...) y si interfaz asociado Depuración y ejecución del firewall $ shorewall start/stop: arranca/para el firewall (no elimina las reglas en el kernel) $ shorewall clear: “borra” en memoria las reglas NETFILTER $ shorewall trace start: arranca el firewall emitiendo traza de los pasos seguidos La distribución de Shorewall incluye conjuntos de ficheros de configuración de ejemplo, que sirven como punto de partida para crear el firewall. Veremos three-interface http://shorewall.net/three-interface.htm
  • 42. PARTE V. Uso de OpenVPN Redes privadas virtuales (VPN) Configuración y uso de OpenVPN 
  • 43. Redes Virtuales Privadas VPN (Virtual Private Network): Conjunto de tecnologías que permiten extender el alcance de una red local (privada) sobre la infraestructura de una red pública no controlada, manteniendo la confidencialidad del tráfico. Hacen uso de enlaces cifrados para definir conexiones protegidas entre porciones “separadas” de la propia red Ejemplos típicos: Interconexión “segura” entre 2 delegaciones de una misma organización usando una red pública no segura (Internet) [VPN punto a punto] Conexión segura de un usuario a la red interna desde equipos fuera de la red de la organización [VPN de acceso remoto] Evitan el uso de lineas dedicadas Tecnologías: IPSec, PPTP, L2TP, túneles SSH, OpenVPN
  • 44. OpenVPN (I) OpenVPN es una implementacion de VPN que usa el protocolo SSL/TLS (Secure Socket Layer/Transport Layer Security) para crear enlaces de red cifrados. Usualmente emplea la implementación OpenSSL Web: http://www.openvpn.net Permite 3 modos de operación: Host a Host: crea un enlace cifrado entre dos máquinas independientes Road Warrior: permite que un usuario se conecte al servidor OpenVPN desde fuera de la red propia y pueda acceder a sus recursos Red a Red: permite que 2 redes separadas pueden comunicarse para formar una sóla red Se crea la sensación de que están unidas por un enlace virtual Tráfico de comunicación enviado sobre la red pública va cifrado
  • 45. OpenVPN (II) Funcionamiento: Se establece una conexión SSL cifrada entre los 2 extremos usando la red pública (por defecto usa el puerto UDP) En los equipos conectados se crearán interfaces de red virtuales (tun0, tun1, ...) para acceder a esa conexión Funcionan como un interfaz de red convencional (ethX) Tiene dir. IP asignada, participan en las reglas del firewall, etc El tráfico que reciban se enviará cifrado sobre la conexión SSL
  • 46. OpenVPN (III) OpenVPN soporta 2 modos de autenticación/cifrado Clave estática: se genera una clave estática que será compartida por los 2 extremos Esquema sencillo de configurar e implantar Exige un mecanismo seguro para el intercambio previo de la clave y la protección de esa clave en ambos extremos Modo SSL: hace uso del mecanismo de establecimiento de sesiones SSL (basado en certificados digitales) para acordar una clave de sesión temporal que se usará para cifrar cada conexión concreta Exige que ambos extremos tengan certificados digitales firmados por una autoridad reconocida por ambos Shorewall contempla la definición de zonas VPN y el uso de los enlaces virtuales cifrados creados por OpenVPN
  • 47. Funcionamiento SSL/TLS SSL: Secure Socket Layer Desarrollo inicial por Netscape Inicalmente para proteger tráfico HTTP, aplicable en otros protocolos. Actualmente es el estándar TLS: Transport Later Security Protege el tráfico empleando cifrado asimétrico, cifrado simétrico y HMAC (autenticación de mensajes con HASH + clave secreta), garantizando: Autenticación de las entidades (servidor y/o cliente): empleando certificados digitales Confidencialidad de los mensajes: empleando cifrado simétrico con claves de cifrado negociadas/acordadas en cada conexión Integridad y atenticidad de los mensajes: uso de HMAC con claves de autenticación negociadas/acordadas en cada conexión Establecimiento de conexión: Intercambio de certificados servidor y cliente (opcional) Si son reconocidos: intercambio seguro de clave secreta maestra (mediante cifrado asimétrico) Tráfico de mensajes: cifrados + autenticados con claves de sesión generadas a partir de la clave secreta maestra
  • 48. ANEXO. Uso de iptables
  • 49. Uso de iptables (I) Esquema reglas iptables iptables -t tabla [COMANDO][CONDICIONES][OBJETIVO] Comandos iptables -L/--list cadena lista las reglas en uso en una cadena -F/--flush cadena vacía una cadena -Z/--zero cadena reinicia los contadores de una cadena -P/--policy cadena DROP/ACCEPT establece la política por defecto de una cadena -A/--append cadena añade una regla (condiciones+objetivo) a una cadena -D/--delete cadena borra una regla de una cadena -R/--replace cadena reemplaza una regla de una cadena -I/--insert cadena inserta una regla de una cadena
  • 50. Uso de iptables (II) Condiciones iptables Especifican los criterios que debe cumplir un paquete (campos que lo componene) para que le sea aplicable la acción de una regla Direcciones IP origen: -s/--source (-s 192.168.100.23, -s 10.10.10.0/24) destino: -d/--destination (-d 10.10.10.47,-d 10.10.10.0/24) Interfaz (dispositivo por el que se ha recibido o por que que saldrá un paquete) de entrada: -i/--in-interface (-i eth1) [en input, forward, pre-routing] de salida: -o/--out-interface (-o ppp0) [en output, forward, post-routing] Tipo de protocolo: -p/--protocol protocolo nivel transporte: -p TCP, -p UDP, -p ICMP, -p all
  • 51. Uso de iptables (III) Condiciones iptables (cont.) Puertos (para TCP y UDP) de origen: -sport/--source-port de destino: -dport/--destination-port puede ser un número de puerto (-sport 80), un nombre de servicio (- sport http) o un rango de puertos (-sport 1024:65535) Control del estado de la conexión: -m state --state [ESTADOS] Soporte básico para reglas de filtrado ''con estado'' Situación del paquete respecto a la conexión a la que pertenece: invalid: paquete no asociado a una conexión conocida established: paquete que pertenece a una conex. válida ya establecida new: paquete mediante el cual se está creando una nueva conexión related: paquetes que inician una nueva conexión que está asociada con otra ya establecida Otro módulo para filtros con estado (seguimiento de conexiones): -m conntrack –ctstate [ESTADOS]
  • 52. Uso de iptables (IV) Condiciones iptables (cont.) Flags protocolo TCP: --tcp-flags ... bits de control en paquetes TCP (SYN,ACK,FIN,RST,URG,PSH) Direcciones MAC: -m –mac –mac-source ... Límites: -m limit –limit [ratio] la regla encajará hasta que se alcance el ratio de ocurrencia (n/second, n/minute, n/hour, n/day) especificado -m limit –limit-burst [numero] la regla encajará hasta que se alcance el valor máximo indicado (reinicio de contadores) Utiles para limitar logs y realizar una detección y control básico de posibles ataques de denegación de servicio DoS(denial of service) Nota: para expresar la negación de una condición en una regla se emplea el símbolo ! -s ! localhost : el paquete no procede de la própia máquina -dport ! ssh : todos los puertos destinos excepto el 23 (ssh)
  • 53. Uso de iptables (V) Objetivos iptables Objetivos predefinidos en la tabla -t filter A usar en las cadenas INPUT,OUTPUT,FORWARD -j ACCEPT el paquete se acepta Se lepermite que continúe su curso (a otra cadena o a su destino final ) y se deja de recorrer la cadena actual -j DROP se rechaza el paquete (sin informar al origen) -j REJECT –reject-with [...] se rechaza el paquete, informando al origen con el mensaje icmp indicado
  • 54. Uso de iptables (VI) Objetivos iptables (cont.) Objetivos predefinidos en la tabla -t nat -j SNAT –to-source Realiza SNAT(source-NAT) sobre los paquetes salientes [enmascaramiento de direcciones] Cambia la dir. IP (opc. puerto) de origen del paquete Sólo se puede invocar en la cadena POST-ROUTING -j MASQUERADE También realiza SNAT, pero usando la dir. IP del propio equipo Útil en conexiones volátiles [adsl, modem]) Sólo se puede invocar en la cadena POST-ROUTING -j DNAT –to-destination Realiza DNAT(destination- NAT) sobre los paquetes entrantes [redireccionamiento de puertos] Cambia la dir. IP (opc. puerto) de destino del paquete Sólo se puede invocar en la cadena PRE-ROUTING(s´olo disponible en prerouting (y opcionalmente en OUTPUT)
  • 55. Uso de iptables (VII) Objetivos iptables (cont.) Objetivos predefinidos para hacer log No se detiene el recorrido por la cadena -j log crea entrada en el log del sistema [/var/log/sysylog] Opciones: --log-prefix, --log-level -j ulog crea entrada en un log definido por usuario Objetivos definidos por el usuario Es posible crear cadenas definidas por el usuario (-N micadena) y eliminarlas (-X micadena) Para acceder a una cadena de usuario bastará incluir la acción -j micadena en una regla de las cadenas predefinidas. El paquete recorre las reglas de la cadena de usuario hasta encajar en las condiciones de alguna regla, ejecutando su acción Si no encaja en ninguna regla, el paquete retorna a la cadena anterior desde la que accedió a la cadena de usuario.
  • 56. Ejemplo IPTABLES Firewall básico de borde con enmascaramiento de la red interna (NAT) Red interna del rango 10.10.10.0/24 [mascara 255.255.255.0] Una única dir. IP pública [193.147.87.47] Interfaces del firewall: eth0 (red externa), eth1 (red interna) Servicios hacia el exterior (idealmente deberían ubicarse en DMZ) Servidores http y https públicos en la máquina interna 10.10.10.66 Servidores corporativos de correo saliente (smtp) y entrante (pop3) en 10.10.10.77 Restricciones sobre el firewall Todas las conexiones hacia el firewall están prohibidas Sólo se permiten conexiones ssh (puerto 22) que provengan de equipos de la red interna (para labores de administración) Restriciones de tráfico desde el interior No se permite la conexión para envío de e-mail (smtp) con máquinas del exterior. Todas los demás tipos de conexión están autorizados
  • 57. #!/bin/sh # Vaciar y reiniciar las tablas actuales iptables -F iptables -X iptables -Z iptables -t nat -F # Establecer politicas por defecto iptables -P INPUT DROP # descartar entradas al firewall iptables -P OUTPUT ACCEPT # aceptar salidas del firewall iptables -P FORWARD ACCEPT # aceptar reenvios a traves del firewall iptables -t nat -P PREROUTING ACCEPT iptables -t nat -P POSTROUTING ACCEPT # Permitir localhost iptables -A INPUT -i lo -j ACCEPT
  • 58. # SNAT (enmascaram. de salida de red interna 10.10.10.0/24) hacia exterior iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o eth0 -j SNAT --to-source 193.147.87.47 # otra posibilidad: -j MASQUERADE # DNAT (redireccionamiento puertos tcp 80, 25, 110 a red interna) iptables -t nat -A PREROUTING -i eth0 -d 10.0.100.0/24 -j DROP # NOTA: descartar antes paquetes externos dirigidos a red interna # si se hiciera en FORWARD, se eliminarian las redirecciones iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 10.10.10.66:80 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 25 -j DNAT --to-destination 10.10.10.77:25 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 110 -j DNAT --to-destination 10.10.10.77.110
  • 59. # Reglas de filtrado # Filtrado conexiones entrantes al firewall # - permitir SSH desde red interna, resto bloqueado por politica por defecto iptables -A INPUT -i eth1 -s 10.10.10/24 -p tcp --dport 22 -j ACCEPT # Habilitar forward de paquetes echo 1 > /proc/sys/net/ipv4/ip_forward # Filtrado salida red interna # - bloquear salida conex. SMTP de red interna, # el resto está permitido por politica por defecto iptable -A FORWARD -i eth1 -o eth0 -s 10.10.10.0/24 -p tcp -- dport 25 -j DROP