Visitas: 23
Muchas veces queremos bloquear dominios cómo Facebook y debemos de crear reglas en iptables. Cómo no tenía ninguna regla en mi firewall, creamos un archivo /etc/network/if-up.d/firewall con nano. Escribimos en la consola:
nano /etc/network/if-up.d/firewall
Les dejo un ejemplo de mi archivo:
#!/bin/sh
## Es un breve ejemplo para mostrar el bloqueo de un dominio.
## En este caso www.facebook.com.
## Este script no es para replicar en un server, es solo una muestra.
echo -n Aplicando Reglas de Firewall...
## FLUSH de reglas
iptables -F
iptables -X
iptables -Z
iptables -t nat -F
## Establecemos politica por defecto: ACCEPT
## Aceptamos todo.
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
## Debemos decir de manera explicita qué es lo que queremos filtrar
## En este caso filtramos el acceso a www.facebook.com
iptables -A INPUT -m tcp -p tcp -m iprange --dst-range 66.220.144.0-66.220.159.255 --dport 80 -j DROP
iptables -A INPUT -m tcp -p tcp -m iprange --dst-range 66.220.144.0-66.220.159.255 --dport 443 -j DROP
iptables -A OUTPUT -m tcp -p tcp -m iprange --dst-range 66.220.144.0-66.220.159.255 --dport 80 -j DROP
iptables -A OUTPUT -m tcp -p tcp -m iprange --dst-range 66.220.144.0-66.220.159.255 --dport 443 -j DROP
iptables -A FORWARD -m tcp -p tcp -m iprange --dst-range 66.220.144.0-66.220.159.255 --dport 80 -j DROP
iptables -A FORWARD -m tcp -p tcp -m iprange --dst-range 66.220.144.0-66.220.159.255 --dport 443 -j DROP
iptables -A INPUT -m tcp -p tcp -m iprange --dst-range 69.63.176.0-69.63.191.255 --dport 80 -j DROP
iptables -A INPUT -m tcp -p tcp -m iprange --dst-range 69.63.176.0-69.63.191.255 --dport 443 -j DROP
iptables -A OUTPUT -m tcp -p tcp -m iprange --dst-range 69.63.176.0-69.63.191.255 --dport 80 -j DROP
iptables -A OUTPUT -m tcp -p tcp -m iprange --dst-range 69.63.176.0-69.63.191.255 --dport 443 -j DROP
iptables -A FORWARD -m tcp -p tcp -m iprange --dst-range 69.63.176.0-69.63.191.255 --dport 80 -j DROP
iptables -A FORWARD -m tcp -p tcp -m iprange --dst-range 69.63.176.0-69.63.191.255 --dport 443 -j DROP
iptables -A INPUT -m tcp -p tcp -m iprange --dst-range 204.15.20.0-204.15.23.255 --dport 80 -j DROP
iptables -A INPUT -m tcp -p tcp -m iprange --dst-range 204.15.20.0-204.15.23.255 --dport 443 -j DROP
iptables -A OUTPUT -m tcp -p tcp -m iprange --dst-range 204.15.20.0-204.15.23.255 --dport 80 -j DROP
iptables -A OUTPUT -m tcp -p tcp -m iprange --dst-range 204.15.20.0-204.15.23.255 --dport 443 -j DROP
iptables -A FORWARD -m tcp -p tcp -m iprange --dst-range 204.15.20.0-204.15.23.255 --dport 80 -j DROP
iptables -A FORWARD -m tcp -p tcp -m iprange --dst-range 204.15.20.0-204.15.23.255 --dport 443 -j DROP
iptables -A INPUT -m tcp -p tcp -m iprange --dst-range 69.171.224.0-69.171.255.255 --dport 80 -j DROP
iptables -A INPUT -m tcp -p tcp -m iprange --dst-range 69.171.224.0-69.171.255.255 --dport 443 -j DROP
iptables -A FORWARD -m tcp -p tcp -m iprange --dst-range 69.171.224.0-69.171.255.255 --dport 80 -j DROP
iptables -A FORWARD -m tcp -p tcp -m iprange --dst-range 69.171.224.0-69.171.255.255 --dport 443 -j DROP
iptables -A OUTPUT -m tcp -p tcp -m iprange --dst-range 69.171.224.0-69.171.255.255 --dport 80 -j DROP
iptables -A OUTPUT -m tcp -p tcp -m iprange --dst-range 69.171.224.0-69.171.255.255 --dport 443 -j DROP
echo " OK . Verifique que lo que se aplica con: iptables -L -n"
# Fin del script
Luego lo guardamos (Control + o), y lo cerramos (Control + x). Ahora tenemos que darle permisos de ejecución a /etc/network/if-up.d/firewall. Escribimos en la consola:
chmod 755 /etc/network/if-up.d/firewall
Ahora reiniciamos la interfaz de red (eth0). Escribimos en la consola:
/etc/init.d/networking stop && /etc/init.d/networking start && ifup eth0
Y debería de funcionar.
Para verificar. Entramos a la consola y escribimos:
iptables -L -n
Nos saldría esto por pantalla:
Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 66.220.144.0-66.220.159.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 66.220.144.0-66.220.159.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 69.63.176.0-69.63.191.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 69.63.176.0-69.63.191.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 204.15.20.0-204.15.23.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 204.15.20.0-204.15.23.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 69.171.224.0-69.171.255.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 69.171.224.0-69.171.255.255
Chain FORWARD (policy ACCEPT)
target prot opt source destination
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 66.220.144.0-66.220.159.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 66.220.144.0-66.220.159.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 69.63.176.0-69.63.191.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 69.63.176.0-69.63.191.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 204.15.20.0-204.15.23.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 204.15.20.0-204.15.23.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 69.171.224.0-69.171.255.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 69.171.224.0-69.171.255.255
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 66.220.144.0-66.220.159.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 66.220.144.0-66.220.159.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 69.63.176.0-69.63.191.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 69.63.176.0-69.63.191.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 204.15.20.0-204.15.23.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 204.15.20.0-204.15.23.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 destination IP range 69.171.224.0-69.171.255.255
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 destination IP range 69.171.224.0-69.171.255.255
Y ahora probamos con un navegador para verificar que no nos podemos conectar a Facebook.
Pueden hacer lo mismo con cualquier dominio.