Vous êtes sur la page 1sur 15

<IPTables>

Ing. Juan Báez Rojas


http://caminandoconlinux.com
http://twitter.com/juan_baez
juan.baez.rojas@gmail.com
juan.baez.rojas@bestpractices.com.py
1
Que es un cortafuegos?
■ Un cortafuegos (firewall) es un equipo
protegido y fiable que funciona como punto
regulador entre un grupo de redes y la
internet
■ El núcleo de Linux proporciona varias
funciones integradas que le permiten
funcionar como un cortafuegos IP. La
implementación de red incluye código
(netfilter) para procesar los paquetes IP a
voluntad gracias a la utilidad iptables

2
Que es un cortafuegos?

3
Que es Netfilter?
■ Netfilter es un framework disponible en el
núcleo Linux que permite interceptar y
manipular paquetes de red. Dicho
framework permite realizar el manejo de
paquetes en diferentes estados del
procesamiento. Netfilter es también el
nombre que recibe el proyecto que se
encarga de ofrecer herramientas libres para
cortafuegos basados en Linux.

4
Que es Iptables?
■ iptables es el nombre de la herramienta de
espacio de usuario mediante la cual el
administrador puede definir políticas de
filtrado del tráfico que circula por la
red. El nombre iptables se utiliza
frecuentemente de forma errónea para
referirse a toda la infraestructura ofrecida
por el proyecto Netfilter. iptables es un
software disponible en prácticamente todas
las distribuciones de Linux actuales.

5
Cadenas integradas
■ FORWARD: Flujo a través de un ordenador
pasarela, procedente de una interfaz y
yendo hacia otra
■ INPUT: Justo antes del proceso local
■ OUTPUT: Justo después de ser generado
por proceso local
■ POSTROUTING: Justo antes de salir por la
interfaz de red
■ PREROUTING: Justo al llegar desde una
interfaz y después de la limpieza y control

6
Tablas
■ filter: Usado para establecer políticas para
el tipo de trafico permitido hacia, a través y
desde el ordenador. A menos que hagamos
referencia explícitamente a otra tabla,
iptables funcionara por defecto con las
cadenas de esta tabla
■ mangle: Se usa para la alteración de
paquetes, como quitarles sus opciones IP
■ nat: Usada en conjunción con el rastreo de
conexiones de NAT, basándose
normalmente en las direcciones de origen y
destino
7
Recorrido de un paquete
RED

PREROUTING POSTROUTING
mangle,nat mangle, nat

FORWARD
RUTEO
mangle, filter

INPUT OUTPUT
mangle,filter mangle, filter,nat

LOCAL
8
Objetivos
■ ACCEPT: Permite al paquete pasar a la siguiente fase de procesamiento
■ DROP: Deja de procesar el paquete. No lo coteja con otra regla, cadena o
tabla. Si queremos proporcionar respuesta al remitente podemos usar REJECT
■ LOG: Envía la información del paquete al demonio syslog
■ DNAT: se emplea principalmente en los casos donde se tiene una IP pública y
se quiere redirigir los accesos al firewall hacia algún otro host (en una "zona
desmilitarizada", DMZ, por ejemplo). Dicho de otro modo, cambiamos la
dirección de destino del paquete y lo re-enrutamos a otro host.
■ SNAT: Se cambia la dirección IP de origen, es la situación más utilizada
cuando estamos utilizando una dirección IP privada en una red local y
establecemos una conexión con un equipo de Internet. Un equipo de la red
(normalmente la puerta de enlace) se encarga de cambiar la dirección IP
privada origen por la dirección IP pública, para que el equipo de Internet
pueda contestar.
■ MASQUERADE se usa exactamente para lo mismo que SNAT, pero requiere
más de trabajo del procesador para permitir trabajar con IP dinamicas
■ REDIRECT sirve para redirigir paquetes y flujos hacia la máquina. Ésto quiere
decir que podemos redirigir todos los paquetes destinados a los puertos HTTP
hacia un caché HTTP como squid, o hacia nuestro host
9
Comparaciones
■ -p, --protocol emplea para comprobar la presencia de los siguientes
protocolos: TCP, UDP, ICMP
■ -s, --src, --source se basa en la dirección IP de origen de los paquetes
■ -d, --dst, --destination se basa en saber a dónde se dirijen los paquetes
■ -i, --in-interface reconocer a través de qué interfaz proviene un paquete
entrante.
■ -o, --out-interface se emplea con los paquetes que están a punto de
abandonar la interfaz de salida
■ --sport, --source-port se emplea para comparar paquetes basándose en su
puerto de origen
■ --dport, --destination-port compara paquetes TCP basándose en el puerto
de destino
■ --mac-source Como ya se ha dicho, esta comparación se emplea para buscar
paquetes basándose en su dirección MAC de origen

10
Comandos
■ -A, --append añade la regla al final de la cadena. La regla siempre se
pondrá la última en el conjunto de reglas y lógicamente se
comprobará la última
■ -D, --delete borra una regla de la cadena. Esto puede hacerse de dos
maneras: bien introduciendo la regla completa a comparar (como en el
ejemplo anterior), bien especificando el número de regla que deseas
eliminar
■ -R, --replace sustituye la entrada existente en la línea especificada.
Funciona de la misma forma que el comando --delete
■ -I, --insert inserta una regla en la posición de la cadena que
especifiquemos
■ -L, --list lista todas las entradas de la cadena especificada
■ -F, --flush elimina todas las reglas de una cadena
■ -N, --new-chain cree una nueva cadena con el nombre especificado
■ -X, --delete-chain borra de la tabla la cadena especificada
■ -P, --policy establece la política u objetivo por defecto en una cadena
11
Filter
iptables [-t tabla] [comando] [cadena][comparación ] [objetivo]
iptables -A INPUT -p tcp -i eth0 --dport 80 -j DROP
iptables -A INPUT -i eth0 -p icmp --icmp-type 8 -j
DROP
iptables -A FORWARD -i eth0 -p icmp --icmp-type 8 -j
DROP
iptables -A INPUT -p tcp -i eth0 --dport 25 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --dport 25 -j ACCEPT
iptables -A FORWARD -s 0/0 -i eth0 -d 192.168.1.58 -o
eth1 -p TCP --sport 1024:65535 --dport 80 -j ACCEPT
iptables -A OUTPUT -p udp -o eth0 --dport 53 --sport
1024:65535 -j ACCEPT
iptables -A INPUT -p udp -i eth0 --sport 53 --dport
1024:65535 -j ACCEPT

12
NAT
iptables [-t tabla] [comando] [cadena][comparación ] [objetivo]

iptables -A PREROUTING -i eth0 -p tcp –dport 80


-j DNAT –to 192.168.3.2:80

iptables -t nat -A POSTROUTING -s 192.168.1.0/24


-j SNAT -o eth0 --to-source 97.158.253.29
iptables -t nat -A POSTROUTING -o eth0 -j
MASQUERADE

iptables -t nat -A POSTROUTING -o ppp0 -j


MASQUERADE
iptables -t nat -A POSTROUTING -o ppp0 -j SNAT
--to-source 97.158.253.29

13
Mangle
iptables [-t tabla] [comando] [cadena][comparación ] [objetivo]
iptables -t mangle -A PREROUTING -s 192.168.0.1 -i
eth0 –dport 1950 -j TOS –set-tos 0×10
iptables -t mangle -A FORWARD -p tcp -j TCPMSS –clamp-
mss-to-pmtu
iptables -t mangle -A FORWARD -d 0.0.0.0/0 -i eth0 -p
tcp –dport 1234 -j TTL –ttl-set 1

14
</IPTables>
■ PREGUNTAS, ACERTIJOS, FRASES CELEBRES

15

Vous aimerez peut-être aussi