UF3-NF1. Introducció als tallafocs
tornar M11_-_Seguretat_i_alta_disponibilitat#UF3_-_Tallafocs_i_servidors_intermediaris
Contingut
Tallafocs
Firewall és un dispositiu que té un conjunt de regles que especifiquen el tràfec de xarxa que s'accepta i el que es denega (Filtre), addicionalment poden tenir una tercera regla per indicar si es registre el tràfec (Log).
Implementen seguretat perimètrica a nivell de xarxa però no són sistemes alternatius als altres elements de la seguretat activa i passiva. En general els tallafocs no comproven el contingut dels paquets (la informació), només comproven dades de xarxa.
El tallafoc es situa en el punt de connexió amb altres xarxes i analitza i filtra el tràfec de xarxa en ambdues direccions, entrant i sortint. Centralitza la seguretat en les comunicacions de la xarxa interna. També pot mantenir un registre (Log). La xarxa interna és el perímetre de seguretat.
El funcionament bàsic d'un tallafocs és
- Examinar els paquets que rep. Informació de xarxa, protocols, adreces, ports, interfases, estat de la connexió ...
- Aplicar les regles definides
- Decidir si el paquet passa o no
El tallafocs es pot implementar amb un ordinador i el programari gratuït necessari, amb un router, o amb maquinari específic i programari propietari (http://www.checkpoint.com empresa desenvolupadora de FireWall-1)
Filtre d'informació. Regles
Existeixen dos paradigmes de seguretat:
- Tot allò que no es prohibeix expressament està permès --> Naïf
- Tot allò que no està permès expressament es prohibeix --> Paranoic (Recomanat)
Tipus de Filtres:
- Estàtics
- Dinàmics
- Amb estat (StateFul Filtering i StateFull Packet Inspection)
iptables
En Linux la majoria de tallafocs es basen en iptables.
Es basa en cadenes (Chains) que són les regles que s'apliquen als paquets que passen pel tallafocs.
S'organitza en taules:
- RAW
- NAT
- MANGLE
- FILTER
Per a les funcions de tallafocs interessa principalment el filtrat (FILTER) que té 3 cadenes: INPUT, OUTPUT, FORWARD. També interessa NAT que s'utilitza per traducció i redirecció, cadenes: PREROUTING, POSTROUTING.
Registre connexions entrants des de 192.168.1.215 (Inici de connexió, estat sync, es guarden als missatges del nucli)
- iptables -I INPUT -s 192.168.1.215 -p tcp --syn -j LOG
Sintaxi bàsica
- iptables -A FILTER -p tcp/udp [options] -j ACTION
-A INPUT, OUTPUT, FORWARD: Afegir una regla -D INPUT, OUTPUT, FORWARD: Esborrar una regla -F INPUT, OUTPUT, FORWARD: Esborrar totes les regles d'un tipus
Algunes opcions:
-v : (Verbose) Permet veure els paquets tractats per cada regla
-Z : Inicialitza els contadors
-p tcp/udp: A quin protocol s'aplica: tcp, udp, icmp o all -s IP: IP origen (Source) -s IP/MASK: 0.0.0.0/0 per qualsevol xarxa -d IP: IP destí -j DROP/ACCEPT/MASQUERADE # (Jump) Acció que cal fer si el paquet compleix les especificacions -o eth0: Output -i eth0: Input --dport numero -t nat -A POSTROUTING .... -o eth0 -j MASQUERADE # NAT de sortida -t nat -A PREROUTING ... -j DNAT --to IP:port # PAT d'entrada, redirecció
Exemple 1. NAT
- Nota: eth0 es el interfaz conectado al router y eth1 a la LAN
- Al firewall tenemos acceso desde la red local
iptables -A INPUT -s 192.168.10.0/24 -i eth1 -j ACCEPT
- Ahora hacemos enmascaramiento de la red local
- y activamos el BIT DE FORWARDING (imprescindible!!!!!)
iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -o eth0 -j MASQUERADE Exemple 2. tallar ports bàsics sortida
- Aceptamos que vayan a puertos 80
iptables -A FORWARD -s 192.168.10.0/24 -i eth1 -p tcp --dport 80 -j ACCEPT
- Aceptamos que vayan a puertos https
iptables -A FORWARD -s 192.168.10.0/24 -i eth1 -p tcp --dport 443 -j ACCEPT
- Aceptamos que consulten los DNS
iptables -A FORWARD -s 192.168.10.0/24 -i eth1 -p tcp --dport 53 -j ACCEPT iptables -A FORWARD -s 192.168.10.0/24 -i eth1 -p udp --dport 53 -j ACCEPT
- Y denegamos el resto. Si se necesita alguno, ya avisaran
iptables -A FORWARD -s 192.168.10.0/24 -i eth1 -j DROP
Exemple 3. Obrir ports exemple d'entrada i una ip específica d'entrada a la màquina on estem
- Abrimos el puerto 25, hay que configurar bien el relay del servidor SMTP
iptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 25 -j ACCEPT
- Abrimos el pop3
iptables -A INPUT -s 0.0.0.0/0 -p tcp --dport 110 -j ACCEPT
- Y abrimos el puerto pptpd para la ip del adsl de casa del jefe
iptables -A INPUT -s 211.45.176.24 -p tcp --dport 1723 -j ACCEPT Redireccion a màquina internes de la xarxa
- REDIRECCIONES
- Todo lo que venga por el exterior y vaya al puerto 80 lo redirigimos
- a una maquina interna
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 192.168.10.12:80
- Los accesos de un ip determinada a Terminal server se redirigen e esa
- maquina
iptables -t nat -A PREROUTING -s 221.23.124.181 -i eth0 -p tcp --dport 3389 -j DNAT --to 192.168.10.12:3389
En general aquestes comandes les posarem dins un script de linux amb els permisos adequats
- chmod 750 firewall1.sh
Per verificar la configuració
- iptables -L –n
Tutorial molt complet
http://www.frozentux.net/iptables-tutorial/iptables-tutorial.html
Alguns exemples per a protocols concrets
http://ocw.uv.es/ingenieria-y-arquitectura/seguridad/3Seguridad_perimetrica.pdf
http://www.mmc.igeofcu.unam.mx/LuCAS/Manuales-LuCAS/doc-unixsec/unixsec-html/node252.html
Servidors Intermediaris
Un servidor intermediari (Proxy) fa referència de manera genèrica a un representant (intermediari) local d'un servei remot.
http://ocw.uv.es/ingenieria-y-arquitectura/seguridad/3Seguridad_perimetrica.pdf
Sistema que reenvia peticions a serveis, generalment web i ftp. Els clients fan les peticions al servidor intermediari i aquests les realitzen en el seu nom (intermediari). D'aquesta manera per una banda es centralitzen les comunicacions dels dispositius de la xarxa cap a l'exterior, també s'acceleren amb tècniques de caché, i milloren la seguretat perquè només permeten uns serveis concrets (Els serveis accessibles via proxy no poden ser accessibles directament).
A vegades també s'anomenen gateways d'aplicació.
En alguns casos els proxys poden oferir filtratge a nivell d'aplicació (Contingut, més concret que el filtre dels firewalls a nivell de xarxa) i autenticació.
Les desavantatges són que no tots els serveis estan disponibles, ni centralitzat en una única aplicació (diferents proxys per cada servei) i a vegades que cal realitzar configuracions als clients.
http://ocw.uv.es/ingenieria-y-arquitectura/seguridad/3Seguridad_perimetrica.pdf pàgina 44
- Tallafocs basats en Proxys
- Pasarel·la a nivell d'aplicació
- Pasarel·la a nivell de circuit
http://trac.zentyal.org/wiki/Features
Unified Threat Manager
http://en.wikipedia.org/wiki/Unified_threat_management
Proxies Remots
sdsdsd