Volvi de nuevo
Una vez mas he regresado con mi blog apenas temine un articulo y ya voy con otro (creo que ya me gusto).
Bueno esta vez vengo con una noticia no se si sea buena o mala pero una cosa si es cierto y muchos autores de articulos en internet que no los cito por que no recuerdo de tantos articulos y post que estuve buscando en varios foros.
De antemano les agradezco el haber hecho el aporte a cada uno por la solución al problema de las redes sociales.
Como primer punto voy a comenzar por decir que la red social de facebook.com la verdad es un dolor de cabeza ya que bloquearlo es un reverendo relajo ¿Pero por que?, bueno simplemente es por la razon de que el facebook utiliza el protocolo que utilizan los bancos que es el 443 (https), con eso tienes un dolor de cabeza para que mas, antes utilizaba squid sin cache debido a ciertos problemas que ahorita no recuerdo pero las reglas que ponen en squid tienen un cierto detalle que pase por alto, hasta la de mil me di cuenta.
Cual es ese detalle bueno precisamente el puerto 443 squid lo deja abierto en su configuración por defecto, debido a esto cuando tu pones tus reglas de acceso bloqueando el facebook este automaticamente te permitia el acceso por que el puerto 443 esta abierto.
Si se te ocurre cerrar ese puerto en SQUID simplemente no puedes tener acceso a lo que es correo que utilizen ese puerto o en su caso los bancos por que no puedes accesar por medio de ese puerto para poder realizar transferencias (que por cierto por poco y dejo a todos mis comañeros de trabajo sin nomina incluyendome jejejejeje).
Bueno cual fue la solucion pues quitar squid ademas de otros factores que me tuvieron que orillar a realizarlo e implementat iptables.
Iptables es un cortafuegos que trabaja sobre sistemas operativos libres como linux y unix el cual trabaja sobre el kernel de la distribución, para permitir el trafico de hacia la red local o en su caso permitirlo.
Tengo poco tiempo trabajando con iptables, pero hay voy poco a poco entendiendole como ir aplicando reglas para bloquear o permitir el acceso al trafico de internet.
Bueno yo trabaje con iptables con centos debido a que la distribución ha sido estable y es un derivado de red hat (lo que antes trabajado yo), por lo que no me costo trabajo adaptarme a trabajar con este sistema operativo.
Facebook es mañoso con lo que he leido en internet, los creadores de las red social contrataron varios segmentos de rangos de direcciones ip´s por lo que es dificil (mas no imposible) el poder bloquearlo, debido a que es complicado conocer los segmentos que maneja, podemos definirlos a traves de la siguiente instruccion en el shell o consola o termianl si estas con linux o en el simbolo del sistema si estas con windows
ping facebook.com
A traves de este comando puede determiar la direccion ip que devuelve el dns cuando te responde con la direccion ip. Pero aqui esta el problema si tu le das varias veces esta instruccion notaras que el dominio de facebook.com te responde de varios segmentos de red publicas diferentes, lo cual puedes solucionar con la herramienta whois funciona con linux con windows no la he probado asi que no me consta que funcione; si alguien le funciona bueno no voy a discutir.
whois 66.220.149.88
El unico detalle que este comando te manda un monton de información con respecto a los datos del dominio etc. etc., pero lo importante esta debajo el segmento de direcciones ip que tiene la red social, pero un problema es que no siempre te envia todos los segmentos que facebook tiene como tal asignados por que si tu bloqueas esos segmentos con iptables te sigue accesando de forma normal a la red social, pegando el grito en el cielo y haciendote la pregunta del millon pues como es posible.
Si tu revisas con otra herramienta que tambien es muy buena si la trabajas sobre linux (por que en windows hace cosas raras), es whireshark, una herramienta que te ayuda a monitorear el trafico que pasa a traves de tu servidor y como tiene que pasar por ahi por que es puerta de enlace o gateway pues esta herramienta revisa el trafico de origen y hacia que destino va.
Si notamos con esa herramienta pasa algo curioso que las solicitudes de facebook que entran a tu servidor hacia la red marca otro segmento distinto al que tu revisaste con ping o con whois que curioso no; me imagino que algo así ha de haber pensado los creadores que sucederia y pues por hay tienen otro segmento que tu ni habias notado. Es algo curioso pero bueno.
Despues de estar buscando en internet varias opciones de bloqueo de redes sociales tambien note que algo todavia mas curioso es que tienes que bloquear tanto en trafico de origen como de destino por que si nada mas aplicas una regla para trafico entrante o saliente sigue haciendo lo mismo y te sigues dando topes de cabeza.
Ya terminando con el quebradero de cabeza que me tuve que hacer me di cuenta que efectivamente si se puede realizar el bloqueo simplemente entendiendo que tienes que poner que el paquete coincida con la dirección facebook.com y tanto como de entrada como de salida y no permitirle por ningun puerto que se comunique, en este caso bloquear los 65535 puertos (son muchos pero bueno a mi me funcionó).
Ya depues de haber realizado un choro enorme voy a poner la regla que permite realizar esta parte que es la mas divertida bloquear las redes sociales a los usuarios que tengas.
Si estas manejando segmentos de red debes de ponerlos en la parte donde diga $REDINTERNA dependiendo de los segmentos que quieras que se bloquee la red social o si dices que todos de una vez unicamente sumariza tus segmentos y con eso asunto solucionado
Vamos al grano la regla es la siguiente
iptables -A FORWARD -s $REDINTERNA -m string --string "facebook.com" --dport 65535 -j DROP
iptables -A FORWARD -d $REDINTERNA -m string --string "facebook.com" --dport 65535 -j DROP
Y con esto aleluya aleluya bloqueas la red social en definitiva (wiiii que bonito es).
Por ejemplo si tienes la red 192.168.0.0/24 la regla quedaria de la siguiente forma
iptables -A FORWARD -s 192.168.0.0/24 -m string --string "facebook.com" --dport 65535 -j DROP
iptables -A FORWARD -d 192.168.0.0/24 -m string --string "facebook.com" --dport 65535 -j DROP
En caso de que no te acepte el sufijo de red deberas de poner la mascara completa de tu segmento de red para que la acepte.
Bueno con esto los dejo ya despues comentaré acerca de otras cosas gracias y nos vemos despues.
si quiero agregarlas ne la configuración directa de mi /etc/sysconfig/iptables como sería? poruqe lo he intentado y no me deja
ResponderEliminarRevisa este link, espero te ayude http://www.pello.info/filez/firewall/iptables.html
ResponderEliminarLevi, por favor ayudame, tengo 7 proxys que salen a traves de un bridge como punto de paso y los usuarios vulneran los proxys al poner https://facebook.com y https://youtube.com, como seria la regla? gracias de antemano por le apoyo
ResponderEliminarPara el facebook serial bloquear tanto los puertos TCP como UDP para que no tenga salida el sitio de facebook, con youtube es un poco mas complicado y no he encontrado respuesta concreta debido a que se enlaza con los servicios de google y por consiguiente se bloquea todo lo que tenga que ver con google aunque bloquees youtube se bloquea todo google es una observación gracias por tu comentario
Eliminarme sale error en string
ResponderEliminarPerdon por la tardanza la cadena correcta es la siguiente:
Eliminar-A FORWARD -s 170.70.12.0/255.255.254.0 -m string --string "facebook.com" --algo bm -j DROP
iptables -I FORWARD 1 -s $REDLOCAL -m string --string "facebook.com" --algo kmp -j DROP
ResponderEliminargrande capO
ResponderEliminarHola! Estoy utilizando Centos 6.7, ya he intentado con sus reglas de iptables pero no me han funcionado, aun se puede accesar a facebook. Alguna otra solución que pudieran proporcionarme.
ResponderEliminarGracias.