Sie sind auf Seite 1von 7

Un firewall es un dispositivo, ya sea software o hardware, que filtra todo el trfico de red.

El sistema operativo Linux dispone de un firewall llamado IPtables.


Iptables es un firewall incluido en el kernel de Linux desde la versin 2.4 que est
incluido en el sistema operativo. Es un firewall basado en reglas, su funcionamiento se basa
en aplicar reglas que el mismo firewall ejecute. Estas IPtables tambin se encuentran en
los firmwares basados en Linux y por supuesto, los dispositivos Android. El uso de
IPtables es bastante complejo, por lo que vamos a hacer un vistazo general sobre sus
opciones:

Para Iniciar/Parar/Reiniciar Iptables debemos


ejecutar estos comandos:
sudo service iptables start
sudo service iptables stop
sudo service iptables restart

Los principales comandos de IPtables son los


siguientes (argumentos de una orden):
-A append agrega una regla a una cadena.
-D delete borra una regla de una cadena especificada.
-R replace reemplaza una regla.
-I insert inserta una regla en lugar de una cadena.
-L list muestra las reglas que le pasamos como argumento.
-F flush borra todas las reglas de una cadena.
-Z zero pone a cero todos los contadores de una cadena.
-N new-chain permite al usuario crear su propia cadena.
-X delete-chain borra la cadena especificada.
-P policy explica al kernel qu hacer con los paquetes que no coincidan con ninguna regla.
-E rename-chain cambia el orden de una cadena.

Condiciones principales para Iptables:


-p protocol la regla se aplica a un protocolo.
-s src source la regla se aplica a una IP de origen.
-d dst destination la regla se aplica a una Ip de destino.
-i in-interface la regla de aplica a una interfaz de origen, como eth0.

-o out-interface la regla se aplica a una interfaz de destino.

Condiciones TCP/UDP
-sport source-port selecciona o excluye puertos de un determinado puerto de origen.
-dport destination-port selecciona o excluye puertos de un determinado puerto de destino.
Existen muchas ms condiciones para una configuracin avanzada del firewall, pero las
elementales ya las tenemos listadas.

Configurar reglas por defecto


La configuracin por defecto de un firewall debera ser, traducido al espaol, bloquear todo
excepto [reglas]. Para configurar el firewall para que bloquee todas las conexiones debemos
teclear:
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
Con esto nos quedaremos sin internet, por lo que a continuacin debemos empezar a crear
reglas permisivas.

Para aplicar una regla que filtre


determinado puerto, debemos ejecutar:

un

iptables -A INPUT -p tcp sport 22 22 crea una regla para el puerto de origen tcp 2222

Para bloquear el trfico procedente de una


determinada IP, debemos ejecutar:
iptables -A INPUT -p tcp -m iprange src-range 192.168.1.13-192.168.2.19 (ejemplo de IP)

Tambin podriamos bloquear por MAC con la


condicin mac-source.
iptables -A INPUT -m mac mac-source 00:00:00:00:00:01
Una vez ejecutadas las reglas que queramos aplicar, debemos guardarlas tecleando sudo
service iptables save

Ver el estado del firewall


iptables -L -n -v

El parmetro L muestra las lneas abiertas. V permite recibir ms informacin sobre las
conexiones y N nos devuelve las direcciones IP y sus correspondientes puertos sin pasar por
un servidor DNS.

Eliminar las reglas existentes


Para borrar toda la configuracin del firewall para volver a configurarlo de nuevo debemos
teclear:
iptables -F

Permitir conexiones entrantes


Teclearemos los siguientes parmetros:
iptables -A INPUT -i [interface]
NEW,ESTABLISHED -j ACCEPT

-p

[protocolo]

dport

[puerto]

-m

state

state

-i: debemos configurar la interfaz, por ejemplo, eth0. Esto es til en caso de tener varias
tarjetas de red, si tenemos slo una, no tenemos por qu especificar este parmetro.
-p: protocolo. Debemos especificar si el protocolo ser TCP o UDP.
dport: el puerto que queremos permitir, por ejemplo, en caso de HTTP sera el 80.
Un ejemplo para permitir las conexiones entrantes desde pginas web:
iptables -A INPUT -i eth0 -p tcp dport 80 -m state state NEW,ESTABLISHED -j ACCEPT

Permitir las conexiones salientes


iptables -A OUTPUT -o [interfaz] -p [protocolo] sport [puerto] -m state state ESTABLISHED -j
ACCEPT
-o: debemos configurar la interfaz, por ejemplo, eth0, al igual que en el caso anterior.
-p: protocolo. Debemos especificar si el protocolo ser TCP o UDP.
sport: el puerto que queremos permitir, por ejemplo, en caso de HTTPS sera el 443.
Un ejemplo para permitir el trfico saliente hacia pginas web:
iptables -A OUTPUT -o eth0 -p tcp sport 80 -m state state ESTABLISHED -j ACCEPT

Permitir los paquetes ICMP


Por defecto, el ping est deshabilitado. Debemos habilitarlo manualmente aadiendo las
correspondientes entradas en iptables. Para ello teclearemos:
Para poder hacer ping a otros servidores:
iptables -A OUTPUT -p icmp icmp-type echo-request -j ACCEPT
Para permitir recibir solicitudes de ping de otros equipos:

iptables -A INPUT -p icmp icmp-type echo-reply -j ACCEPT

Permitir que el trfico interno salga a internet


En el caso de tener 2 tarjetas de red (eth0 en local y eth1 conectada a internet) podemos
configurar el firewall para que reenve el trfico de la red local a travs de internet. Para ello
escribiremos:
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT

Bloquear y prevenir ataques DDoS


iptables -A INPUT -p tcp dport 80 -m limit limit 25/minute limit-burst 100 -j ACCEPT

Consultar los paquetes rechazados por iptables


Para saber los paquetes que iptables ha rechazado debemos teclear:
iptables -N LOGGING

Ejemplos prcticos:
Cmo bloquear las conexiones entrantes por el puerto 1234:
iptables -A INPUT -p tcp dport 1234 -j DROP
iptables -A INPUT -i eth1 -p tcp dport 80 -j DROP bloquea en la interfaz eth1
Bloquear una direccin IP:
iptables -A INPUT -s 192.168.0.0/24 -j DROP
Bloquear una direccin IP de salida:
iptables -A OUTPUT -d 75.126.153.206 -j DROP
Tambin podemos bloquear una url, por ejemplo, facebook:
iptables -A OUTPUT -p tcp -d www.facebook.com -j DROP
Bloquear el trfico desde una direccin MAC:
iptables -A INPUT -m mac mac-source 00:0F:EA:91:04:08 -j DROP
Bloquear peticiones ping:
iptables -A INPUT -p icmp icmp-type echo-request -j DROP
UFW (Uncomplicated Firewall) es una herramienta de configuracin de firewall para Ubuntu
desde la consola, desarrollado para facilitar la configuracin del firewall Iptables. Ufw
proporciona una manera fcil de crear un firewall basado en host IPv4 o IPv6.

Lo primero que debemos hacer es instalar ufw desde apt-get con:


sudo apt-get install ufw
Ahora ejecutamos el firewall tecleando sudo ufw enable. Para parar el firewall,
teclearemos sudo ufw disable, y para reiniciarlo, primero lo pararemos y a continuacin lo
volveremos a arrancar con los comandos especificados.
Una vez tengamos el firewall funcionando, ya podemos comenzar a establecer reglas en su
funcionamiento. Para aplicar una regla que permita por defecto todo el trfico, tecleamos:
sudo ufw default allow
Por el contrario, para bloquear todo el trfico, teclearemos:
sudo ufw default deny
Para aplicar reglas a determinados puertos, lo haremos mediante el comando:
sudo ufw allow\deny [puerto]/[protocolo]
Ejemplo:
sudo ufw allow 1234/tcp (permite las conexiones del puerto 1234 en tcp)
sudo ufw deny 4321/udp (bloquea las conexiones del puerto 4321 en udp)
Existe
un
archivo
que
contiene
ms
reglas
predefinidas
en
la
ruta /etc/ufw/before.rules donde, por ejemplo, podemos permitir o bloquear el ping
externo. Para ello, pondremos una # delante de la linea -A ufw-before-input -p icmp
icmp-type echo-request -j ACCEPT
Podemos consultar las reglas del firewall desde un terminal tecleando sudo ufw status
Como podemos ver, con UFW es bastante sencillo gestionar a nivel ipv4 e ipv6 nuestro
firewall iptables. Todo ello podemos gestionarlo desde un terminal sin necesidad de disponer
de una interfaz grfica, pero an podemos facilitarlo ms con otra aplicacin, llamada gufw,
que es una interfaz grfica para ufw que simplifica an ms su uso.
Para instalar gufw debemos escribir en un terminal sudo apt-get install gufw
Una vez instalado, lo ejecutamos escribiendo gufw o buscndolo en el panel de aplicaciones.
La primera ventana que nos muestra el programa nos permite activar y desactivar el firewall,
establecer reglas por defecto para el trfico entrante y saliente (permitir, rechazar y
denegar), y, en la parte inferior, crear reglas.

Si pulsamos en el botn + de la parte inferior, accedemos al men de configuracin de reglas.


Aqui podemos aadir reglas personalizadas en cuanto a puertos, aplicaciones, ips de origen,
etc.

Para aadir una regla por puerto igual que hemos especificado desde terminal, seleccionamos
si queremos permitir (allow) o bloquear (deny), si queremos que se filtre el trfico entrante o
saliente, el protocolo, ya sea tcp o udp y el puerto a filtrar.
Las posibilidades de iptables son prcticamente infinitas, y la dificultad de configuracin
aumenta exponencialmente segn sean de complejas las configuraciones que queremos
realizar. Desde RedesZone esperamos que con este pequeo tutorial podis configurar
vuestro firewall iptables a nivel bsico de forma sencilla.
Artculo realizado por Rubn Velasco (ruvelro) para RedesZone.net. Artculo en
exclusiva para RedesZone.net

- See more at: http://www.redeszone.net/gnu-linux/iptables-configuracion-del-firewall-en-linuxcon-iptables/#sthash.iVDG18qd.dpuf

Das könnte Ihnen auch gefallen