SquidNT – Restriccion por sitios
| 2,760 lecturas |
Enviar por correo
|
Ver para imprimir
| Actualizado el dia 14 de Octubre de 2008
Esta obra está bajo una licencia de Creative Commons.
Autor: Francisco Leonel Rubio Quintanilla (rubioq)
Este documento es una adecuación de el manual: Cómo configurar Squid: Restricción de acceso a Sitio de Red de: Joel Barrios Dueñas.
Usted es libre de copiar, distribuir y comunicar públicamente la obra y hacer obras derivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra
para fines comerciales. c) Si altera o transforma esta obra, o genera una obra derivada, sólo puede distribuir la obra generada bajo una licencia idéntica a ésta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra.
Haciendo caso a la petición de Andrés Sarmiento, me puse a investigar como hacer restricciones por sitio en Squid para Windows (SquidNT), el procedimiento es muy similar al usado dentro de la versión Linux.
Partiendo del principio que se necesita restringir nuestra red para que los usuarios puedan salir solo a ciertas direcciones y de este modo optimizar el ancho de banda. Respecto a lo ético del asunto se puede debatir ampliamente sobre esto, pero la realidad es que aun en mi red personal (la de mi casa) yo haría esto para evitar que entren en sitios que les llenarían de spyware sus PCs. Dejo este procedimiento para que
lo use quien lo considere conveniente.
Requerimientos:
1.- SquidNT ya funcionando. (Si aun no lo tienes lee, mi HOWTO)
2.- Lista de lo que queremos evitar que visiten nuestros usuarios.
El primer paso es hacer un archivo de texto con las direcciones que no queremos que visiten nuestros usuarios. Recomiendo poner este archivo dentro de la carpeta etc. de Squid, ponle un nombre descriptivo al
archivo, para este caso use bansit.txt.
El archivo quedaría algo así: “C:\squid\etc\bansit.txt”.
| www.elchat.com www.amigos.com www.astalavista.com www.bride.ru www.playboy.com |
Ahora, si lo que quieres es restringir determinadas palabras la semantica es la misma, solo que en lugar de dominios pondras palabras: “C:\squid\etc\banwords.txt”.
| xxx porn lolitas teens xxx amateur swinger |
Abre el archivo squid.conf, localizado en “c:\squid\etc” y buscas estas líneas.
| acl all src 0.0.0.0/0.0.0.0 acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl to_localhost dst 127.0.0.0/8 acl SSL_ports port 443 563 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 563 # https, snews acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl CONNECT method CONNECT acl net src 192.168.0.0/255.255.255.0 |
Al final agregas la siguiente ACL (regla).
| acl bansit url_regex “C:/squid/etc/bansit.txt” |
Y/O para palabras.
| acl banwords url_regex “C:/squid/etc/banwords.txt” |
Al hacer esto estas agregando una regla para los sitios comprendidos dentro del archivo de texto que creamos.
Después de esto modificaremos la regla de control de acceso para nuestra RED, así que busca la línea:
| http_access allow net |
Y le agregas el !bansit, quedando de este modo.
| http_access allow net !bansit |
O en su caso…
| http_access allow net !banwords |
Cuando agregas un símbolo de ! (admiración) antes de poner el nombre de una regla ACL previamente creada estas negando la regla, es decir permites que tus red acceda a Internet siempre y cuando lo que quiera hacer no coincida con la regla negada.
Dicho lo siguiente tal vez puedas navegar tú localmente si tener la restricción, pero quisieras
que no pase esto entonces buscas la línea:
| http_access allow manager localhost |
Cuando o termines de configurar estos parámetros será necesario reiniciar el servicio de squidNT. Echo esto a disfrutar del tiempo libre que te dan las restricciones.
Este manual es una migración del manual original de Cómo configurar Squid: Restricción de acceso a Sitio de Red, de Linux Para Todos. Aplicado a Squid Para Windows (SquidNT)
NOTA: En mis pruebas el comando me funciona con la siguiente semantica: acl bansit url_regex “C:/squid/etc/bansit.txt”, pienso que tiene que ver con la configuracion regional de windows el que funcione con diagonal / o la otra diagonal \, pero no puedo asegurarlo, si a ti no te funciona informalo…

(2 votos, porcentaje: 4.50 fuera de 5)
Loading...
Entradas (RSS)
Hola Ing Sandra, FLORECITAYLUNA
Me puedes ayudar con lo siguiente:
descargue y configure el squid los pasos basicos, compilo y no me sale ningun error. Pero el problema que tengo es al restringir paginas o frases, creo la acl pero no la bloquea o me bloquea todo. entonces:
tengo mi archivo .txt llamado restirngidos en la carpeta etc del squid
creo la acl
acl restringidos url_regex “c:/squid/etc/restringidos.txt”
luego debajo de esta linea
http_access allow manager localhost
pongo
http_access allow net !restringidos
http_access deny manager
Y NO ME BLOQUEA NADA
y ahora,
debajo de esta linea
http_access allow manager localhost
pongo
http_access allow localhost !restringidos
http_access deny manager
http_access deny all
Y ME BLOQUEA TODO
Me podrias ayudar como hago para que me bloquee lo que yo quiero.
Muchas gracias
Corre Squid -z tal vez necesites poner la ruta de restringidos sin comillas…
Master, tienes reglas mal configuradas. Me imagino que la regla acl “net” es tu red IP interna.
Me imagino que “restringidos.txt” es el archivo donde estan los sitios que quieres denegar, si es así, en el primer ejemplo de permisos, la última línea esta mala, debe estar así:
——INICIO——
http_access allow manager localhost
http_access allow net !restringidos
http_access deny all
——–FIN——–
Así niegas “restringidos” a tu red “net”
Saludos
Fabian Donoso C.
hola a todos necesito me ayudes
creo primero
acl bansit url_regex “c:/squid/etc/bansit.txt”
luego
#Default:
# http_access deny all
#
#Recommended minimum configuration:
#
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access deny manager
# Deny requests to unknown ports
http_access deny !Safe_ports
# Deny CONNECT to other than SSL ports
http_access deny CONNECT !SSL_ports
con esta configuracion empiesa la modifico asi
#Recommended minimum configuration:
#
# Only allow cachemgr access from localhost
http_access allow manager localhost
http_access allow net !bansit
http_access deny all
http_access deny manager
# Deny requests to unknown ports
http_access deny !Safe_ports
# Deny CONNECT to other than SSL ports
http_access deny CONNECT !SSL_ports
y no me deja salir a ninguna pagina, me gustariq me ayudaran para dejar solo las paginas que hayan en el bansit.txt.
galabr aparentemente tienes todo bien, no te deja salir desde la maquina donde pusiste el squid o desde las otras, o desde TODAs..?
P.D. Quieres bloquear las paginas que escibiste en bansit.txt o solo permitir las que escribiste alli?
El squid esta en el server de la empresa que es un server 2003 ya esta instalado y trato de ingresar desde uno de los clientes
Entonces me deja ingresar entonces le cambio a las segunda linea para que bloquie y no me deja salir a ninguna pagina web y lo que quiero es que me restrinja los que estan el txt banlist
algo que si no he visto es la linea de
http_access allow net
para ingresar la linea
http_access allow net !bansit
quiero bloquear las que ahi estan
en el txt banlist
Una pregunta, galabr que pagina de error te sale a la hora de intentar navegar?
Si intentas navegar con el proxy en la Pc donde instalaste el sistema te sale el mismo problema?
Subbe una imagen a imageshack con el error y pegas el link aqui para verlo…
Pasa lo siguiente, si coloco
http_access allow manager localhost
http_access allow net !bansit
http_access deny all
http_access deny manager
No me deja salir ningun pc a internet, pero si lo dejo como estaba salen todos los pcs, con el proxy instalado, no se que modificarle para que me tome la lista de direcciones web prohibidas… el servicio inicia normalmente no me reporta error ninguno.
Eso ya me lo explicaste, pon la imagen con el error de navegacion que te sale.
mira aqui esta
http://img230.imageshack.us/my.php?image=errorly6.png
Aber Leo, quiero hacer esto con Squid NT.
Quiero restringir Internet a todos los usuarios de la red en mi empresa y solo permitires acceder a solo tres paginas WEB, obio los gerentes deben tener libre acceso a internet. como harias tu esas reglas???. Gracias
omar buenos dias me podrias enviar a mi correo esa instalacion de tu squid… mi email es abjagagu@yahoo.es
te agradesco
Buenos Dias Galabr, te he mandado el Squid.conf a tu E-Mail, te comento que he logrado hacer lo que pregunte, osea restringir a todos los usuarios el internet excepto a los gerentes.
el punto es que lo logre a medias, por que a los usuarios que estan restringidos si acceden a las paginas permitidas pero el problema es que estas paginas no se muestran correctamente ya que no aparecen e ellas ninguna imagen, solo aparecen las letras y binculos. a que se debera esto???. a los usuarios gerentes si pueden acceder a todo sin ningun problema
Gracias.
Se debe a que las paginas a su vez tienen ligas a otras paginas donde guardan imagenes, videos, flashs, etc…
Tienes que ir investigando cuales son esas subpaginas e irlas desbloqueando, claro suponiendo que quieras que las vean.
MMM, Pues ese punto ya lo habia contemplado y si desbloquie las ligas. pero por ejemplo la pagina http://www.msn.com/ esta permitida para que la vean, esta dada de alta en el archivo de Texto “sitiosPermitidos.txt” en el cual tengo una lista de paginas web que los usuarios pueden acceder. pero resulta que la pagina de msn.com aun desbloqueando las ligas no muestra las imagenes. no se si tenga que ver con el cache de Squid???.
gracias por tu ayuda
dale espero tu correo, si te lo rebota si no es mucha molestia enviarmelo a galabr@hotmail.com para ver si puedo restringir.
Hola GalaBR, una pregunta,
Puedo usar comodines (*) en Squid como los que usan los filtros web como los de microsoft osea si yo quiero que squid no bloquee una URL muy grande como por ejemplo:
https://login.live.com/wa=wsignin1.0&rpsnv=10&ct=1218602115&rver=4.5.2130.0&wp=MBI&wreply=h
yo lo que quiero es que Squid interprete la misma direccion arriba escrita abrebiandola con un comodin (asterisco) quedaria de la siguiente manera:
https://login.live.com/*
se puede hacer eso???
gracias
http_access allow net !bansit
en esta linea fijense que el nombre net, representa una declaracion en una ACL, que esta mas abajo de .conf, Pero me di cuenta que muchos no usan net, yo usaba nuestra_red, y con eso el squid podra inciar sin error de configuracion!
Graxias por tu aportachion Heinrich…
Es capaz de filtrar squid en windows contenidos , escribiendo una palabra catalogada como porn, xxx,adult….
GRacias
Sip… aunque es una arma de dos filos…
Lo he probado y no me filtra nada , no se si no reconoce bien la ruta en windows :
acl sitios url_regex “C:\squid\etc\denegados.txt”
en denegados.txt tengo palabras clave xxx,adult…
pero no me hace nada, no se que necesita para reconocer esto , aparte pq es un arma de doble filo??
GRacias
Manual Actualizado al dia de hoy…
Hola Omar me pudes volver a enviar el squid.conf con las restricciones, estaba algo desentendido del tema por otras razones mi correo es abjagagu@yahoo.es o este otro galabr@hotmail.com
Es que no me llego al parecer.
te agradesco mucho
Hola! gracias por tu gran ayuda, te comento que tengo instalado squid en un 2003 server y funciona bien, pero tengo las siguientes dudas, para dejarlo filtrando todo debo dejarlo como puerta de enlace, para eso requiero dos tarjetas de red? una saliendo a internet y la otra hacia la red local?
Lo otro, quiero hacer tres grupos, organizados por sus ip, uno sin restricciones, otro con restricciones y uno sólo con acceso a una sola página, me ayudan a armar eso please?
Gracias de antemano
Si quieres que nadie se brinque las restricciones necesitas ponerlo como puerta de enlace, con la desventaja de que todos los puertos que no funcionen por proxy dejaran de funcionar (smtp, pop3, imap entre otros), el detalles es que si no lo pones como puerta de enlace solo como proxy cualquier usuario con ciertos conocimientos podra desactivar el proxy y al cuerno las restricciones.
Y si.. para hacer esto necesitarias dos tarjetas de red.
Gracias por tu respuesta, ahora, es factible que pop3 y smtp puedan funcionar por proxy?
Saludos,
D.-
No que yo sepa.
Tengo una consulta.
Mira en estos momentos la configuracion a Internet es así:
Firewall Cisco 1800 -> Red LAN
Eso quiere decir que todos los equipo tienen acceso a Internet sin restricción de navegación a sitios.
Si pongo este equipo como proxy solo para filtrar paginas de internet entre la LAN y el Firewall Cisco, tendré problemas con la entrada y salida de correos (puertos 25 y 110)? (Usamos MS-Outlook )
No tendras problemas, los problemas pueden resolverse, aca no funcionaran por mas que hagas y desagas a no ser que quites el proxy de en medio.
Ahora, si usas un Cisco, tal vez puedas hacer una redireccion para que las peticiones al puerto 80 salgan por otro lado, en este caso por el proxy, esto para que el mismo no este en medio de tu router y Lan.
En Linux se hace algo como esto…
REDIRECT loc 3128 tcp 80
Oviamente considerando que el Iptables y el squid estan en la misma maquina, habrias de ver si puedes hacer algo parecido para que tu cisco mande estas peticiones al puerto del proxy pero en la otra maquina.
Hola Omar, seria posible que me envies el archivo .conf, ya que, necesito bloquear todos los sitios excepto algunos de trabajo. vitalsignos@gmail.com
Saludos y Gracias
Hola Leonel, desde Colombia una consultica medio urgente. Configuré squid en mi red win 2003 server con restricción de contenido, lo detuve y lo inicié nuevamente y ya no me hace dicha restricción. lo volví a configurar desde cero y aún me falla, cómo desinstalo squid totalmente de la máquina ? y otra pregunta, cómo instalo sarg ? reporteador para squid, ya que en la web no hay info para hacerlo en win. Gracias anticipadas, saludos !!
Esa info no la tengo.
Buenas Leonel,
Ante de nada felicitarte por tu gran trabajo y decirte que gracias a el estoy aprendiendo muchisimo. Mi duda es la siguiente:
Al crear la linea
acl bansit url_regex “C:\squid\etc\bansit.txt” en el archivo squid.confg. Para restringir las paginas que quiero a la hora de lanzar el squid me aparece lo siguiente…
C:\squid\sbin>squid -z
2008/12/30 12:24:07| ACL name ‘bansite’ not defined!
FATAL: Bungled squid.conf line 650: http_access allow net !bansite
Squid Cache (Version 2.7.STABLE5): Terminated abnormally.
C:\squid\sbin>
tambien tengo creada la linea
http_access allow net !bansite
todo segun tu manual, pero se me han agotado ya las ideas de que peude estar pasando…
¿que es lo que puede estar pasando?
Gracias y Feliz Navidad!
Te estas comiendo una letra.
acl bansit url_regex “C:\squid\etc\bansit.txt”
——————-
C:\squid\sbin>squid -z
2008/12/30 12:24:07| ACL name ‘bansite’ not defined!
FATAL: Bungled squid.conf line 650: http_access allow net !bansite
Squid Cache (Version 2.7.STABLE5): Terminated abnormally.
——————-
http_access allow net !bansite
Gracias, con el tiempo llegue a darme cuenta… Ahora tengo otro problemilla. A hora de permitir con,
http_access allow bansite si permito la direccion http://www.elmundo.es bloquea todos los posibles accesos a los links y muchas de las imagenes. ¿es posible que desbloquee todo el entorno de dicha pagina?
He probado con http://www.elmundo.es/* pero no funciona
Un saludo y gracias
Normalmente cuando pasa eso es porque la pagina en cuestion llama imagenes, flashs, baners, etc.. de otras paginas, no queda mas que ir bloqueando direccion por direccion.
muy buen articulo funsiona 100%
thans
hola leo, mcuhas gracias por el articulo, les cuento que no podido bloquear paginas, ya hice todo el procedimiento y aun no me bloquea nada,
tengo las lineas de la siguiente forma
acl red src 192.168.10.0/255.255.255.0
acl restringidos url_regex c:\squid\etc\restringidos.txt
y luego cree el acceso asi:
http_access allow red !restringidos.
si me pueden ayudar les agradezco
Claudia, te sale algun error a la hora de registrar el servicio?
Estas completamente segura de que la navegacion se esta haciendo atravez del proxy?
Hola como estas, mi problema es que tengo el siguiente codigo.
acl net src 192.168.0.0/255.255.255.0
acl bloqueados url_regex “c:\squid\etc\bloqueados.txt”
http_access allow manager localhost
http_access allow net !bloqueados
http_access deny all
y lo que hace es que me bloquea todas las paginas excepto las bloqueadas, y la idea es que me haga lo contrario.
gracias leo por responder, te cuento que no me salen errores,esto es lo que me sale
c:/squid/sbin>squid-z
2009/01/17 12:23:29 parceconfigfile: squid.conf:1 unrecognized:”
2009/01/17 12:23:29 creating swap directories
y si estoy segura de que estoy navegando por el proxy, ya lo tengo configurado en un equipo y aun no
Hola como estas, mi problema es que tengo el siguiente codigo.
acl net src 192.168.0.0/255.255.255.0
acl bloqueados url_regex “c:\squid\etc\bloqueados.txt”
http_access allow manager localhost
http_access allow net !bloqueados
http_access deny all
y lo que hace es que me bloquea todas las paginas excepto las bloqueadas, y la idea es que me haga lo contrario.
GRACIAS
hola, les cuento que ya resolvi mi problema porque tengo un compañerito que me ayuda mucho, ya me funciona el bloqueo de las paginas, lo unico que tuve que hacer fue comentarias los siguientes acl:
#acl localnet src 172.16.0.0/12
#acl localnet src 192.168.0.0/16
y abriendo un acl con el rango de direccion propio, ya lo tenemos restringido
les agradezco mucho la ayuda
Fonsi pon esto…
http_access deny bloqueados
http_access deny net
ups..
era al final
http_access allow net
Leo_On como estas, sigo con el problema, solamente me abren las paginas que quiero bloquear y deberia ser al reves. He probado de muchas formas pero nada. agradezco tu ayuda. si quieres te envio mi el codigo que estoy utilizando. GRACIAS