Intruducción
Este add-on nos presenta una nueva posibilidad de enviar distintos tipos de portales a nuestros usuarios. Ofrece también un control de usuarios, permitiéndonos bloquear usuarios, redierccionar URLS y una lista negra de URLS.
Presenta diferencias con el add-on portal cautivo?
La principal diferencia con el portal cautivo, es que el script de redirector está desarrollado en perl y trabaja en conjunto con squid oficial (próximamente también funcionará con Argento-Squid) Además de su diferencia en programación nos presenta un abanico mayor de posibilidades que expondremos en este tutorial y un problema superado, que ya no se cacheará el portal.
Requerimientos de Hardware:
Requerimientos mínimos:
Procesador: Pentium III .
Memoria ram: 128 megas
Recomendado:
Procesador: 1 Ghz en adelante
Memoria ram: 256 en adelante
Otros add-on necesarios:
Squid.tgz para la versión 2.30.1
Squid.tgz para la versión 2.31.10
Perl.tgz
NOTA: este perl se encuentra en la carpeta de Angel como indica el link. Por favor no confundir con otras 2 versiones que también están circulando.
Versiones de BrazilFW:
2.30.1: Funciona
2.31.10: Funciona
3.0: NO Funciona
Funciona con subredes?
El redirector trabaja en conjunto con squid, por ende si tienes configurado squid para que trabaje con subredes, redirecto hará su trabajo perfectamente. Si no utilizas subredes, debes configurarlas en squid, y en redirector no necesitas modificar nada, solo agregas los diferentes ip en las listas.
Comenzando la Instalación:
Vamos a dar por sentado que ya tienes squid oficial instalado y funcionando. Instalamos redirector.tgz y perl.tgz como cualquier add-on:
- Código: Selecionar todos
brazilfw# wget http://www.brazilfw.com.br/users/angelruiz/addons/redirector/redirector.tgz
brazilfw# wget http://www.brazilfw.com.br/users/angelruiz/addons/perl_oficial/perl.tgz
brazilfw# mt
brazilfw# cp *.tgz /mnt
brazilfw# umt
brazilfw# reboot
Configuración
Para que redirector inicie con el sistema, debemos agregar la siguiente línea en el archivo rc.local
/redirector/./redir.pl
Para que redirector comience a trabajar colocamos las siguientes líneas en el archivo squid_2.tpl:
url_rewrite_program /redirector/redirector.pl
redirect_children 15
Es muy importante que siempre dejes un renglón en blanco al final de este archivo, de lo contrario redirector no funcionará. Guardamos los cambios y reiniciamos.
Todos aquellos usuarios que en su squid tengan deshabilitado la creación del squid.conf (Disabled squid.conf create: yes) deberán editar el archivo squid.conf Para eso vamos al Panel izquierdo de BarzilFW y damos clic en "Archivos" lueg en "editar cualquier archivo" y pegamos la seiguiente ruta:
- Código: Selecionar todos
/usr/local/squid/etc/squid.conf
nos posicionamos donde vemos:
- Código: Selecionar todos
http_access allow manager localhost
http_access deny PURGE
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
url_rewrite_program /redirector/redirector.pl
redirect_children 15
acl internal_net src "/usr/local/squid/etc/ipaccess.yes"
Configuración
Como muestra la imagen, disponemos de distintas acciones, como bloquear ip, redirección de URL, una lista negra de URL, y 3 portales para pasar distintos tipos de avisos; cada uno con su correspondiente lista de ip a las cuales se aplicará el cambio, lo que nos permite una gran flexibilidad a la hora de personalizar las distintas funciones.
Bloquear IP: una de las mas sencillas de configurar, en lista de ip colocamos las ip que serán bloqueadas. En [Edit index.htm] podemos editar el mensaje que recibirá el usuario cuando intente navegar.
Luego tenemos una serie de portales para enviar avisos y/o publicidad los portales tienen diferentes carácterísticas en su funcionamiento.
Publicidad Temp 1: Este Portal tiene la particularidad de ocupar solo la parte superior del navegador, dejando que por debajo de él, el usuario visualice la página que había solicitado.
Publicidad Temp 2: Este Portal aparece por espacio de 4 segundos y luego da paso a la carga normal del URL solicitado por el usuario.
Publicidad Temp 3: Este Portal tiene más similitud con el portal cautivo 2.3 ya que el mensaje ocupa toda la página y se queda por tiempo indeterminado y solo da paso a la URL solicitada cuando el usuario da un lcic en el botón “ACEPTAR”
Ninguno de los 3 portales queda caheado. Una vez iniciado el script (reload squid), el Portal se aplica a todas las ip declaradas, y solo saldrá nuevamente luego de que pasen 3600 segundos sin actividad http, es decir, si el usuario está 2 horas navegando continuamente el Portal no volverá a salir, ya que no ha transcurrido una hora contínua sin tráfico http. Prontamente el tiempo será una variable editable desde webadmin.
Lista Negra URLS: es una función muy similar a la de squid, también nos permite editar el mensaje que recibirá el usuario cuando intente ingresar a un sitio bloqueado.
Redirección de reemplazo: esta función es muy interesante y novedosa, ya que nos permite tanto cambiar tanto una url de una página en su totalidad, como parte de ella, ejemplo: cambiar el logo de google.
Primero vamos a [Editar urls de reemplazo] y debemos indicar 2 URLS, en una misma línea; el primero es el que será reemplazado, y el segundo indica dicho reemplazo, ambos deben estar separados por un espacio.
Ejemplos:
- Código: Selecionar todos
http://www.redtuble.com 302:http://www.vatican.va/phome_sp.htm
Cuando el usuario solicita redtube se le devuelve vaticam.com
También podemos utilizarlo para reemplazar solo una parte de una página, como por ejemplo imágenes, banners estc. Y que mejor ejemplo que reemplzar el logo del buscador mas usado… Google. Acá dejamos un ejemplo:
- Código: Selecionar todos
http://www.google.com.br/intl/en_com/images/logo_plain.png 302:http://www.youpage.com/angelr.jpg
http://www.google.com.ar/intl/en_com/images/logo_plain.png 302:http://www.juanillo.com/ramiro.jpg
http://www.google.com.co.ve/intl/en_com/images/logo_plain.png 302:http://www.nacho.com/gamba.jpg
Recuerden Los urls deben ir en pareja:
Url_A Url_B
Url_C Url_d
Url_B reemplaza a Url_A y Url_d reemplaza a Url_C
El 302 se agrega para que el logo tampoco quede cacheado, de lo contrario, el logo puede no volver a la normalidad una vez eliminado el reemplazo ya que ha quedado cacheado en el navegador.
Acciones de Control
|Reload Squid |: cada vez que editamos el html de un portal, o que borremos y/o agreguemos ip en la lista, debemos hacer un reload de squid, de lo contrario los cambios no se aplicarán.
| Reload block |:esta función se utiliza como complemento para bloquear a un usuario, es decir, una vez editada la lista de ip, damos clic en reload squid, con lo cual estamos bloqueando solo el puerto 80, luego damos clic en reload block, éste script bloqueará el resto de los puertos usando iptables, a excepción de los puertos 8180, 22, para permitirnos utilizar el webadmin y el acceso por ssh.