Ir al contenido principal

Squid: External Acl's




OK, Squid ademas de las ACLs que usa como bloqueo por IP, Macs, contenido, etc. Tambien incluye una directriz para poder llamar ademas tus propios desarrrollos, scripts, y proporcionar un tratamiento mas personalizado a los usuarios.

external_acl_type, asi como se conoce se llama de la siguiente manera:


 external_acl_type name [options] FORMAT.. /path/to/helper [helper arguments..]


Ahora veamos  como funciona.Suponiendo que  queremos mostrar informacion digamos terminos y condiciones o publicad  a los usuarios por cierto tiempo como es el caso para lo que la use,  En el archivo "/etc/squid/squid.conf" configuramos los siguientes parametros.


external_acl_type banned ttl=60 concurrency=100 %SRC /etc/squid/ips.pl
acl anyusuarios external banned
http_access deny !anyusuarios
deny_info ip:amostrar/banned.html anyusuarios


La directriz ejecuta por 60 segundos(ttl) un maximo de 100 conexiones(concurrency) y envia la ip (%SRC) al script "/etc/squid/ips.pl". El script recibe la IP en fomrato estandard de C STDIN y dentro de el usted puede hacer o usar practicamente, cualquier lenguaje. Ahora lo importante de el script es que debe devolver a Squid, dos valores "OK" o "ERR", debemos devolver mediante una STDOUT. En mi caso use perl :

#!/usr/bin/perl
$in = <STDIN>;
chomp($in);
@tmp=split(" ",$in);
$ip=$tmp[1];
..,,hacer algo con la IP, consultar lo que sea etc.

if($result ne "")
   {
     print ("ERR\n");
   }
   else
   {
    print ("OK\n");
   }

Si Squid recibe ERR, ejecuta deny_info que es una IP a donde redireccionar, sino simplemente deja pasar la peticion. PUedes hacer muchas cosas ya que expande tus posibilidades al usar squid.

Espero les sirva, Saludos !!

Comentarios

Entradas populares de este blog

Asterisk con WebRTC, TLS, libsrtp

  Cześć !! En esta ocasión vamos a explicar cómo configurar Asterisk para que desde un teléfono web podamos sacar y recibir llamadas. Se usará los siguientes componentes de Asterisk: libsrtp tls Asterisk module http Antes que nada debemos tener un teléfono web(obviamente), en el laboratorio vamos a usar Sipml5 en el siguiente link : https://www.doubango.org/sipml5/call.htm El siguiente paso es instalar libsrtp del enlace: https://github.com/cisco/libsrtp . #git clone https://github.com/cisco/libsrtp.git #cd libsrtp #./configure #make && make install Luego verificamos tener los siguientes módulos activos para compilar en menuconfig de Asterisk: res_crypto res_http_websocket res_srtp Comunmente si res_crypto no está selecionable, le falta la dependencia openssl-devel o su equivalente dependiendo del sistema que tengan. Cuando estemos seguros que están cargados en Asterisk continuamos con la instalación de los certificados locales(Si usa Lets'encrypt omitir la generación de c

GNUDIALER en Asterisk

Hola Como están? GNUDIALER es un software de marcacion predictiva que nos ofrece varios modos, prediccion, modo automatico, modo preview, ademas de incluir un CRM y es muy dinamico. A pesar de que en el mercado existen muchos software de este tipo sean GNU o pagos, GNUDIALER es muy efectivo y lo mejor es GNU. Eso quiere decir que puedes modificarlo con un poco de conocimiento en lenguaje C y asterisk, bueno uno poco no, mucho conocimiento. He usado VICIDIAL en otras ocasiones y es también verdaderamente interesante, sin embargo como todo en este planeta hay ventajas y desventajas. Una de las ventajas que tiene sobre VICIDIAL(hasta el momento he podido observar en VICIDIAL) es que es mucho mas sencillo de administrar via web, puedo tener un numero ilimitado de campos en mi campaña,  puedo editar mis scripts ami antojo via web html(teniendo un conocimiento html). Desventajas es q aveces se puede comportar algo inestable si no tengo en cuenta el ratio vs cantidad de lineas vs agentes di

Instalar Queuemetrics desde 0.

Cześć. Queuemetrics a pesar de estar casi personalizada su  instalación a Centos, también puede instalarse en otros sistemas operativos, de hecho en cualquier Linux podría hacerse. A continuación describo los pasos para hacerlo. En este demo se usó Suse. Descargar los siguientes paquetes: - Queuemetrics(obviamente XD)      link http://queuemetrics.loway.it/download.jsp      formato tar.gz - Mysql connector      link https://dev.mysql.com/downloads/connector/j/      formato  "platform independent" tar.gz      debe registrarse previamente. - Tomcat      link http://tomcat.apache.org/      formato tar.gz      en este manual se instaló la version 8.5.37 - JDK      link https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html      formato tar.gz      version linux x64 Instalar: - JDK Descomprimir #tar -zxvf jdk-8u201-linux-x64.tar.gz Mover jdk a /usr/local/ #mv jdk1.8.0_201 /usr/local/ - Tomcat Descomprimir #tar -zxvf a