Configuración d
e Squid: Restricción de acceso a Sitios de Internet
Autor:dark Joel Barrios Dueñas
Correo electrónico: darkshram en gmail punto comSitio de Red: http://www.alcancelibre.org/
Jabber ID: darkshram@jabber.orgCreative Commons Reconocimiento-NoComercial-CompartirIgual 2.1
© 1999-2011 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 (incluyendo su publicación, a través de cualquier medio, por entidades con fines de lucro). 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. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legítimos u otras limitaciones no se ven afectados por lo anterior. Licencia completa en castellano. La información contenida en este documento y los derivados de éste se proporcionan tal cual son y los autores no asumirán responsabilidad alguna si el usuario o lector, hace mal uso de éstos.
Introducción.
Denegar el acceso a ciertos Sitios de Red permite hacer un uso más racional del ancho de banda con el que se dispone. El funcionamiento es verdaderamente simple y consiste en denegar el acceso a nombres de dominio o direcciones de Internet que contengan patrones en común.
Este documento considera que se ha leído previamente, a detalle y en su totalidad el documento titulado «Configuración de Squid: Servidor Proxy,» y que ha configurado exitosamente Squid como servidor proxy.
Restricción por expresiones regulares.
Se debe crear un archivo donde se definirá la lista de expresiones regulares.
vim /etc/squid/listas/expreg-denegadas |
Esta lista puede contener cualquier expresión regular que se considere sea usualmente utilizadas en las direcciones de ciertos sitios.
adult |
Esta lista, la cual deberá ser completada con todas las palabras (muchas de estás son palabras obscenas en distintos idiomas) y direcciones de Internet que el administrador considere pertinentes, la guardaremos como /etc/squid/listas/expreg-denegadas.
Edite el archivo /etc/squid/squid.conf:
vim /etc/squid/squid.conf |
Añada una lista de control, denominada expreg-denegadas, de acceso tipo url_regex (expresiones regulares del URL), que defina al la lista en el archivo /etc/squid/listas/expreg-denegadas:
acl expreg-denegadas url_regex "/etc/squid/listas/expreg-denegadas" |
Habiendo hecho lo anterior, deberemos tener en la sección de Listas de Control de Acceso algo similar a lo siguiente:
# |
A continuación especificaremos modificaremos una Regla de Control de Acceso existente agregando con un símbolo de ! que se denegará el acceso a la Lista de Control de Acceso denominada expreg-denegadas:
http_access allow localnet !expreg-denegadas |
La regla anterior permite el acceso a la Lista de Control de Acceso denominada localnet, pero le niega el acceso a todo lo que coincida con lo especificado en la Lista de Control de Acceso denominada expreg-denegadas.
Ejemplo aplicado a una Regla de Control de Acceso combinando el método de autenticación explicado en el documento Configuración de Squid: Acceso por Autenticación:
# |
Restricción por expresiones regulares.
Para restringir el acceso por dominios, se crea un archivo con lista con dominios.
vim /etc/squid/listas/dominios-denegados |
Los nombres pueden ser nombres de dominio específicos:
www.facebook.com |
O bien puede definirse todo el dominio completo, incluyendo sub-dominios:
.facebook.com |
Si define .dominio.com, es innecesario definir www.dominio.com o mail.dominio.com o ftp.dominio.com, etc., pues todos son subdominios de .dominio.com: |
O bien se pueden definir dominios de nivel superior genéricos o geográficos.
.co.jp |
O bien una combinación de todo lo anterior.
.co.jp |
Edite el archivo /etc/squid/squid.conf.
vim /etc/squid/squid.conf |
Añada una lista de control, denominada dominios-denegados, de acceso tipo dstdomain (dominios de destino), que defina al la lista en el archivo /etc/squid/listas/dominios-denegados.
acl dominios-denegados dstdomain "/etc/squid/listas/dominios-denegados" |
Añada una regla de control de acceso que deniegue el acceso a sitios que estén incluidos en la lista de dominios.
http_access allow localnet !expreg-denegadas !dominios-denegados |
Permitiendo acceso a sitios inocentes incidentalmente bloqueados.
Si por ejemplo, el incluir una expresión regular en particular, en la lista de expresiones regulares denegadas, afecta incidentalmente el acceso a un sitio de Internet en particular, también puede generarse una lista de dominios que serán excluidos de las restricciones.
Utilice el editor de texto para crear el archivo /etc/squid/dominios-inocentes.
vim /etc/squid/dominios-inocentes |
El contenido puede ser una lista de dominios o bien dominios de nivel superior, que se considere deban ser accedidos por la red local en cualqueir momento y sin restricciones.
.alcancelibre.org |
Este archivo será definido en una Lista de Control de Acceso del mismo modo en que se hizo anteriormente con el archivo que contiene dominios y palabras denegadas.
acl dominios-inocentes dstdomain "/etc/squid/dominios-inocentes" |
Para hacer uso de el archivo, sólo bastará utilizar la expresión ! en la misma línea utilizada para la Regla de Control de Acceso establecida para denegar el mismo.
http_access allow all dominios-inocentes |
La regla anterior especifica que se permitirá el libre acceso, en todo momento, a los dominios incluidos en la lista de control de acceso denominada dominios-inocentes.
Finalizando procedimiento.
Finalmente, sólo bastará recargar la configuración de Squid para que tomen efecto los cambios y se puedan realizar pruebas.
service squid reload |
http://www.alcancelibre.org/staticpages/index.php/19-2-como-squid-restriccion-web
No hay comentarios:
Publicar un comentario