Inicio > Internet y redes, Linux, Seguridad > Como bloquear Facebook por IP con iptables

Como bloquear Facebook por IP con iptables

domingo, 17 de abril de 2011

Bloquear un sitio es sencillo ya que basta crear una regla que descarte las conexiones a la IP del servidor de la página que se quiera bloquear ya que generalmente es una IP solamente, por ejemplo este sitio tiene sólo la IP 200.69.98.68

image

Pero Facebook al ser una página grande, tiene cientos o miles de IP’s que van adquiriendo por lo que son múltiples rangos, actualmente son los siguientes, los que se pueden obtener de algún WHOIS:

  • 50.76.50.112/28
    65.201.208.24/29
    65.204.104.128/28
    66.93.78.176/29
    66.92.180.48/28
    66.199.37.136/29
    66.220.144.0/20
    67.200.105.48/30
    69.63.176.0/20
    69.171.224.0/19
    74.119.76.0/22
    173.252.64.0/18
    204.15.20.0/22

Para bloquearlos en Iptables debes poner estas reglas:

Solo forwarding

iptables -A FORWARD -d 50.76.50.112/28 -j REJECT
iptables -A FORWARD -d 65.201.208.24/29 -j REJECT
iptables -A FORWARD -d 65.204.104.128/28 -j REJECT
iptables -A FORWARD -d 66.93.78.176/29 -j REJECT
iptables -A FORWARD -d 66.92.180.48/28 -j REJECT
iptables -A FORWARD -d 67.200.105.48/30 -j REJECT
iptables -A FORWARD -d 69.63.176.0/20 -j REJECT
iptables -A FORWARD -d 69.171.224.0/19 -j REJECT
iptables -A FORWARD -d 74.119.76.0/22 -j REJECT
iptables -A FORWARD -d 204.15.20.0/22 -j REJECT
iptables -A FORWARD -d 66.220.144.0/20 -j REJECT
iptables -A FORWARD -d 173.252.64.0/18 -j REJECT
iptables -A FORWARD -d 66.199.37.136/29 -j REJECT

Solo salida (si quieres bloquear FB en tu equipo)

iptables -A OUTPUT -d 50.76.50.112/28 -j REJECT
iptables -A OUTPUT -d 65.201.208.24/29 -j REJECT
iptables -A OUTPUT -d 65.204.104.128/28 -j REJECT
iptables -A OUTPUT -d 66.93.78.176/29 -j REJECT
iptables -A OUTPUT -d 66.92.180.48/28 -j REJECT
iptables -A OUTPUT -d 67.200.105.48/30 -j REJECT
iptables -A OUTPUT -d 69.63.176.0/20 -j REJECT
iptables -A OUTPUT -d 69.171.224.0/19 -j REJECT
iptables -A OUTPUT -d 74.119.76.0/22 -j REJECT
iptables -A OUTPUT -d 204.15.20.0/22 -j REJECT
iptables -A OUTPUT -d 66.220.144.0/20 -j REJECT
iptables -A OUTPUT -d 173.252.64.0/18 -j REJECT
iptables -A OUTPUT -d 66.199.37.136/29 -j REJECT

Si quieres que la conexión sea descartada sin enviar un aviso ICMP de vuelta de error reemplaza el REJECT por DROP.

Actualizado 28/05/2013, agregado segmento 50.76.50.112/28

  1. Marco Elgueta
    martes, 9 de agosto de 2011 a las 11:36 | #1

    Felicitaciones Alexis por tu aporte…
    estas iptables pueden ser usadas en DD-WRT? si es así, como puedo bloquear solo un rango de ip’s. Por ejemplo, desde la 192.168.0.20 hasta la 192.168.0.50.
    Gracias de ante mano.

  2. Alexis Abarca
    sábado, 27 de agosto de 2011 a las 15:45 | #2

    En DD-WRT se debe entrar por ssh e ingresar los mismos comandos de iptables, para bloquear solo por origen debes agregar el parametro -s y el rango a bloquear

    iptables -A OUTPUT -s 192.168.0.0/24 -d 204.15.20.0/22 -j REJECT

    segun lei en el foro de ddwrt el comando iptables que viene solo permite rangos cidr, para bloquear por rango (30-50) se deben poner una regla por IP x.x

  3. Arturo
    miércoles, 7 de septiembre de 2011 a las 17:20 | #3

    excelente aportacion, tengo squid en mi servidor pero no me bloqueaba las paginas https en el caso de facebook y con esto lo arregle gracias 😀

  4. Steven
    lunes, 14 de noviembre de 2011 a las 04:09 | #4

    Como le hizo Arturo para bloquear las páginas https¿?
    Regalame el dato porfa 🙂

  5. Douglas
    miércoles, 23 de noviembre de 2011 a las 18:24 | #5

    Hola, si alguien sabe como bloquear el puerto 80 (internet) solo para los puertos ethernet, y dejar la Wifi sin restriccion, el comando de iptables -i vlan0 no me funciona, da acceso completo apenasse lo agreso a la linea, sin el (-i vlan0 si bloquea bien pero lo necesito solo en la ethernet.
    Gracias

  6. Douglas
    jueves, 24 de noviembre de 2011 a las 00:15 | #6

    Steven, para bloquear las paginas https, solo bloqueas el puero 443.
    saludos

  7. Alexis Abarca
    martes, 29 de noviembre de 2011 a las 23:09 | #7

    Estas reglas bloquean todo el tráfico hacia esos rangos IP, lo que incluyen el tráfico HTTP, HTTPS, el chat, etc.

    Para bloquear solo ciertos equipos debes agregar «-s » (source), por interfaz no recuerdo cuál es el parámetro, tendrías que ver la documentación del iptables.

    DD-WRT parece que no acepta rangos de IP, habrá que poner las IP de a una x.x

    He agregado un nuevo rango que adquirieron al listado, gracias por avisar. (el aviso lo hicieron en el post de como bloquear FB en el FW endian)

  8. KoalaSoft
    martes, 13 de diciembre de 2011 a las 14:13 | #8

    Aqui les muestro otra forma de bloquear este tipo de sitio usando Proxy Firewall y cortafuego Shorewall ..
    Como bloquear los sitios seguros facebook, imo y meebo con Squid Proxy y Shorewall

  9. javier
    martes, 13 de diciembre de 2011 a las 16:51 | #10

    oye alexis he leido varios articulos tuyo y estan muy interesantes tengo un endian instalado y necesito bloquear http://www.youtube.com imagino tambien utiliza varios rangos de ip como lo hace el facebook por que mas ke trato de investigarlo no los encuentro podrias darme una pista te lo agradeceria

  10. Pablo CZR
    lunes, 9 de enero de 2012 a las 11:23 | #11

    Vaya! hasta que encuentro algo que funcione ( por lo menos tu si le atinaste a los rangos importantes de FB).
    Buen aporte.

Comentarios cerrados.