Búsqueda de sitios web

Configurar SquidGuard, habilitar reglas de contenido y analizar registros de Squid - Parte 6


Un LFCE (Ingeniero certificado de la Fundación Linux) es un profesional que tiene las habilidades necesarias para instalar, administrar y solucionar problemas de servicios de red en sistemas Linux, y está a cargo de diseño, implementación y mantenimiento continuo de la arquitectura del sistema en su totalidad.

Presentamos el programa de certificación de la Fundación Linux.

En publicaciones anteriores discutimos cómo instalar Squid + squidGuard y cómo configurar squid para manejar o restringir adecuadamente las solicitudes de acceso. Asegúrese de repasar esos dos tutoriales e instalar Squid y squidGuard antes de continuar, ya que establecen el fondo y el contexto de lo que cubriremos en esta publicación: integrar squidguard en un entorno funcional de squid para implementar reglas de lista negra y control de contenido sobre el servidor proxy.

Requisitos

  1. Instalar Squid y SquidGuard - Parte 1
  2. Configuración del servidor proxy Squid con acceso restringido – Parte 5

¿Para qué puedo o no puedo utilizar SquidGuard?

Aunque squidGuard ciertamente impulsará y mejorará las funciones de Squid, es importante resaltar lo que puede y lo que no puede hacer.

squidGuard se puede utilizar para:

  1. limite el acceso web permitido para algunos usuarios a una lista de servidores web y/o URL aceptados/conocidos únicamente, mientras niega el acceso a otros servidores web y/o URL incluidos en la lista negra.
  2. bloquear el acceso a sitios (por dirección IP o nombre de dominio) que coincidan con una lista de expresiones o palabras regulares para algunos usuarios.
  3. exigir el uso de nombres de dominio/prohibir el uso de direcciones IP en las URL.
  4. redirigir las URL bloqueadas a páginas de error o de información.
  5. Utilice reglas de acceso distintas según la hora del día, el día de la semana, la fecha, etc.
  6. implementar diferentes reglas para distintos grupos de usuarios.

Sin embargo, ni squidGuard ni Squid se pueden utilizar para:

  1. Analizar texto dentro de documentos y actuar en consecuencia.
  2. detectar o bloquear lenguajes de secuencias de comandos integrados como JavaScript, Python o VBscript dentro del código HTML.

Listas negras: conceptos básicos

Las listas negras son una parte esencial de squidGuard. Básicamente, son archivos de texto plano que te permitirán implementar filtros de contenido en función de palabras clave específicas. Hay listas negras comerciales y de libre acceso, y puede encontrar los enlaces de descarga en el sitio web del proyecto Squidguard Blacklists.

En este tutorial, le mostraré cómo integrar las listas negras proporcionadas por Shalla Secure Services en su instalación de squidGuard. Estas listas negras son gratuitas para uso personal/no comercial y se actualizan diariamente. Incluyen, a día de hoy, más de 1.700.000 entradas.

Para nuestra comodidad, creemos un directorio para descargar el paquete de la lista negra.

mkdir /opt/3rdparty
cd /opt/3rdparty 
wget http://www.shallalist.de/Downloads/shallalist.tar.gz

El enlace de descarga más reciente siempre está disponible como se destaca a continuación.

Después de descomprimir el archivo recién descargado, buscaremos la carpeta de la lista negra (BL).

tar xzf shallalist.tar.gz 
cd BL
ls

Puede considerar los directorios que se muestran en el resultado de ls como categorías de lista de fondo y sus subdirectorios correspondientes (opcionales) como subcategorías, que descienden hasta URL y dominios específicos, que se enumeran en los archivos. url y dominios, respectivamente. Consulte la imagen a continuación para obtener más detalles.

Instalación de listas negras

La instalación de todo el paquete blacklist, o de categorías individuales, se realiza copiando el directorio BL, o uno de sus subdirectorios, respectivamente, al directorio /var/. directorio lib/squidguard/db.

Por supuesto, podrías haber descargado el tarball lista negra en este directorio en primer lugar, pero el enfoque explicado anteriormente te da más control sobre qué categorías deben bloquearse (o no) en un momento específico.

A continuación, le mostraré cómo instalar las listas negras anonvpn, hacking y chat y cómo configurar squidGuard para usarlas.

Paso 1: Copie recursivamente los directorios anonvpn, hacking y chat de /opt/3rdparty/ BL a /var/lib/squidguard/db.

cp -a /opt/3rdparty/BL/anonvpn /var/lib/squidguard/db
cp -a /opt/3rdparty/BL/hacking /var/lib/squidguard/db
cp -a /opt/3rdparty/BL/chat /var/lib/squidguard/db

Paso 2: utilice los archivos de dominios y URL para crear los archivos de base de datos de squidguard. Tenga en cuenta que el siguiente comando funcionará para crear archivos .db para todas las listas negras instaladas, incluso cuando una determinada categoría tenga 2 o más subcategorías.

squidGuard -C all

Paso 3: Cambie la propiedad del directorio /var/lib/squidguard/db/ y su contenido al usuario proxy para que Squid pueda leer los archivos de la base de datos.

chown -R proxy:proxy /var/lib/squidguard/db/

Paso 4: Configure Squid para usar squidGuard. Usaremos la directiva url_rewrite_program de Squid en /etc/squid/squid.conf para decirle a Squid que use squidGuard como reescritor/redirector de URL.

Agregue la siguiente línea a squid.conf, asegurándose de que /usr/bin/squidGuard sea la ruta absoluta correcta en su caso.

which squidGuard
echo "url_rewrite_program $(which squidGuard)" >> /etc/squid/squid.conf
tail -n 1 /etc/squid/squid.conf

Paso 5: Agregue las directivas necesarias al archivo de configuración de squidGuard (ubicado en /etc/squidguard/squidGuard.conf).

Consulte la captura de pantalla anterior, después del siguiente código, para obtener más aclaraciones.

src localnet {
        ip      192.168.0.0/24
}

dest anonvpn {
        domainlist      anonvpn/domains
        urllist         anonvpn/urls
}
dest hacking {
        domainlist      hacking/domains
        urllist         hacking/urls
}
dest chat {
        domainlist      chat/domains
        urllist         chat/urls
}

acl {
        localnet {
                        pass     !anonvpn !hacking !chat !in-addr all
                        redirect http://www.lds.org
                }
        default {
                        pass     local none
        }
}

Paso 6: reinicie Squid y pruebe.

service squid restart 		[sysvinit / Upstart-based systems]
systemctl restart squid.service 	[systemctl-based systems]

Abra un navegador web en un cliente dentro de la red local y navegue hasta un sitio que se encuentre en cualquiera de los archivos de la lista negra (dominios o URL; usaremos el chat http://spin.de/ en el siguiente ejemplo). ) y será redirigido a otra URL, www.lds.org en este caso.

Puede verificar que la solicitud se realizó al servidor proxy pero fue denegada (respuesta http 301 – Movida permanentemente) y en su lugar fue redirigida a www.lds.org.

Eliminar restricciones

Si por alguna razón necesita habilitar una categoría que ha sido bloqueada en el pasado, elimine el directorio correspondiente de /var/lib/squidguard/db y comente (o elimine) la acl relacionada. en el archivo squidguard.conf.

Por ejemplo, si desea habilitar los dominios y las URL incluidos en la lista negra de la categoría anonvpn, deberá realizar los siguientes pasos.

rm -rf /var/lib/squidguard/db/anonvpn

Y edite el archivo squidguard.conf de la siguiente manera.

Tenga en cuenta que las partes resaltadas en amarillo en ANTES se han eliminado en DESPUÉS.

Incluir en la lista blanca dominios y URL específicos

En ocasiones, es posible que desee permitir ciertas URL o dominios, pero no un directorio completo en la lista negra. En ese caso, debe crear un directorio llamado myWhiteLists (o el nombre que elija) e insertar las URL y los dominios deseados en /var/lib/squidguard/db/myWhiteLists en archivos llamados URL y dominios, respectivamente.

Luego, inicialice las nuevas reglas de contenido como antes,

squidGuard -C all

y modifique squidguard.conf de la siguiente manera.

Como antes, las partes resaltadas en amarillo indican los cambios que deben agregarse. Tenga en cuenta que la cadena myWhiteLists debe estar primero en la fila que comienza con pass.

Finalmente, recuerda reiniciar Squid para poder aplicar los cambios.

Conclusión

Después de seguir los pasos descritos en este tutorial, debería tener un potente filtro de contenido y un redirector de URL trabajando mano a mano con su proxy Squid. Si experimenta algún problema durante su proceso de instalación/configuración o tiene alguna pregunta o comentario, puede consultar la documentación web de squidGuard, pero no dude en escribirnos mediante el siguiente formulario y nos comunicaremos con usted lo antes posible. posible.