Iptables PDF

También podría gustarte

Está en la página 1de 12

Aclaramos que en versiones anteriores al kernal 2.4.

* se
llamaba ipchain, pero a partir de esta versin se cambi a
Iptables, mucho ms potente.

Iptables est basado en el uso de TABLAS dentro de las


tablas, CADENAS, formadas por agrupacin de REGLAS,
parmetros que relativizan las reglas y finalmente una ACCION,
que es la encargada de decir qu destino tiene el paquete.

Describimos los elementos y luego vemos un sencillo script


bsico.
Las Tablas

FILTER (filtrado)Permite generar las reglas de filtrado o sea, qu paquetes aceptar,


cuales rechazar o cuales omitir.Es la tabla por defecto. Las cadenas sern: INPUT
OUTPUT y FORWARD.

NAT (Network Address Translation) Desde esta tabla es posible el


enmascaramiento de IP, se usa para redireccionar puertos o cambiar las :IPs de
origen y destino a travs de interface de red. Las cadenas sern :PREROUTING y
POSTROUTING

MANGLE (Modificado de paquetes)Permite la modificacin de paquetes como ToS


(Type of Service), TTL (Time to live)o mark, marcar el paquete.

RAW Esta tabla se usa para configurar principalmente excepciones en el


seguimiento de paquetes en combinacin con la accin o target NOTRACK. Trabaja
sobre la cadena PREROUTING Y OUTPUT y su nica accin es Notrack. Puede
evitar que iptables haga un seguimiento de los paquetes.
Describimos los elementos y luego vemos un sencillo script bsico.
Comandos de Iptables

Como hacamos referencia ms arriba, dentro de las tablas hay cadenas a su


vez vez formadas por agrupaciones de reglas. Es importante ver que cada tabla
tiene cadenas por defecto, que no se pueden eliminar.

A las CADENAS por defecto podemos unir cadenas creadas por nosotros
mismos para un mejor funcionamiento del filtrado o el enrutamiento.

El comando IPTABLES tiene a su vez parmetros y comandos que permitirn


definir el comportamiento de una o varias reglas. Esto es, agregar una regla,
modificar una regla existente, eliminar el nombre de una cadena
Parmetros

Todas las reglas en iptables tienen definida su condicin por los parmetros, que
constituyen su parte primordial.

Algunos de estos parmetros son:


Acciones

Y finalmente, las ACCIONES que estarn siempre al final de cada regla que
determinar que hacer con los paquetes afectados. Si no se especifica ninguna
accin, se ejecutar la opcin por defecto que cada cadena tiene asignada. Las
acciones seran:

ACCEPT---> Paquete aceptado.


REJECT---> Paquete rechazado. Se enva notificacin a travs del protocolo ICMP.
DROP---> Paquete rechazado. Sin notificacin
MASQUERADE--->Enmascaramiento de la direccin IP origen de forma
dinmica.Esta accin es slo vlida en la tabla NAT en la cadena postrouting.
DNAT---> Enmascaramiento de la direccin destino, muy conveniente para re-
enrutado de paquetes.
SNAT---> enmascaramiento de la IP origen de forma similar a masquerade, pero
con IP fija.
MUY IMPORTANTE. Cuidado con el orden en el cual disponemos las reglas.
IPTABLES LEE DE MANERA SECUENCIAL LAS CADENAS DE REGLAS.
Es decir, comienza por la primera y verifica que se cumpla la condicin y
la ejecuta sin verificar las siguientes.

Por consiguiente, si la primera regla en la tabla filter de la cadena


input es rechazar cualquier paquete,las siguientes reglas no sern verificadas,
y se rechazar cualquier paquete.

Modelo de Cadena de Reglas

La estructura o el esqueleto de una regla bsicamente sera:

iptables --> -t -->tabla -->tipo_operacin -->cadena -->regla_con_parmetros -->Accin


En base a los conceptos anteriores realizaremos el siguiente ejemplo: protegeremos
Nuestra propia maquina y daremos acceso a algunos usuarios a determinados servicios
De la misma.

FLUSH de reglas

iptables F
iptables X
iptables Z
iptables t nat F

Establecemos politica por defecto

iptables P INPUT ACCEPT


iptables P OUTPUT ACCEPT
iptables P FORWARD ACCEPT
iptables t nat P PREROUTING ACCEPT
iptables t nat P POSTROUTING ACCEPT

A nuestra IP le dejamos todo


iptables A INPUT s 172.16.0.180 j ACCEPT
A una IP le dejaremos accesar a Mysql
iptables A INPUT s 231.45.134.23 p tcp dport 3306 j ACCEPT

A otra IP le dejamos usar el FTP


iptables A INPUT s 80.37.45.194 p tcp dport 20:21 j ACCEPT

El puerto 80 de www debe estar abierto, es un servidor web.


iptables A INPUT p tcp dport 80 j ACCEPT

El resto, lo cerramos
iptables A INPUT p tcp dport 20:21 j DROP
iptables A INPUT p tcp dport 3306 j DROP
iptables A INPUT p tcp dport 22 j DROP
iptables A INPUT p tcp dport 10000 j DROP

Verifiquemos lo que se aplica con: iptables L n

O iptables -L -v

Para guardar la configuracin del script se hace con la cadena

Iptables-save > nombre_archivo

Y para restaurar la configuracion de iptabbles

Iptables-restore nombre_archivo

También podría gustarte