Cuotas de navegacion para SQUID con SQUISH

Imagen de neos

Tema: 

Implementar cuotas de navegacion para el SQUID con SQUISH, como instalar squish para implementar cuotas para squid

1. Bajamos el paquete de

http://www.ledge.co.za/software/squint/squish/squish-0.0.18.tar.gz disponible como la ultima version el 5 de julio de 2007

2. Descompacte todo el paquete en el directorio /usr/local/squish (el directorio squish no existe, tiene que ser creado por ud.)

3. Copie el fichero squish.conf para el directorio /etc/squid/
4. Cree este fichero en blanco /etc/squid/squishe
5. Annada a /etc/squid/squid.conf las siguientes lineas
#-- reglas para el squish y las cuotas--#

##acl SQUISHLOC dst jadiaz.co.cu
acl SQUISHLOC url_regex \.jadiaz\.co\.cu
acl SQUISHED1 proxy_auth -i "/etc/squid/squished"
##acl SQUISHED2 ident "/etc/squid/squished"
#acl SQUISHED3 src "/etc/squid/squished"
## Actually: your host name instead of localhost:
deny_info http://www.tudomain.cu/?squished& SQUISHED1
deny_info http://www.tudomain.cu/?squished& SQUISHED2
deny_info http://www.tudomain.cu/?squished& SQUISHED3
http_access allow SQUISHLOC
#http_access deny SQUISHED1
##http_access deny SQUISHED2
#http_access deny SQUISHED3

(Las lineas que estan comentadas dejarlas asi mismo)
6. Establecer las cuotas en el fichero /etc/squish.conf
7. Ej:
agro 200Mb/month
lsantana 200Mb/month
nmarin 200Mb/month
yusmanyc 50Mb/month
(tiene otros tipos de opciones de cuotas, el fichero lo explica en el encabezado)
8. reinicie el squid
9. Cree una entrada en el DNS que se llame proxy y que apunte al IP que tiene el squid
Ej:
;Servidor ISPSERVER2
but IN A 1xx.1xx.1xx.1xx
proxy.isp IN CNAME but
10. reinicie el bind9
11. Cree un virtualhost en el directorio /etc/apache2/sites-available/ con el nombre proxy y
ponle esto en su interior
ServerName proxy.midominio.cu
ServerAdmin admin@midominio.cu
DocumentRoot /var/www/proxy/
Options +ExecCGI
AddHandler cgi-script .cgi
DirectoryIndex squish.cgi
AllowOverride None
Order allow,deny
Allow from all
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/proxy_access.log combined
ServerSignature On
12. haga un link simbolico de este virtualhost en el directorio /etc/apache2/sites-enabled
13. reinicie el apache2
14. Cree el directorio /var/www/proxy pues no existe y ponga en su interior una copia exacta
del contenido de /usr/local/squish
15. teclee en su navegador http://proxy.midominio.cu Si da un error como este:
Software error:
Can't locate GD.pm in @INC (@INC
contains: /etc/perl /usr/local/lib/perl/5.8.8 /usr/local/share/perl/5.8.8
/usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8
/usr/local/lib/site_perl .)
at /var/www/proxy/squish.cgi line 163.
BEGIN failed--compilation aborted at /var/www/proxy/squish.cgi line 163.
Entonces haga esta busqueda en su mirror

aptitude search gd|grep perl

e instale

apt-get install libgd-perl

16. refresque el pedido que hizo en el navegador el cual dio error y ya debe estar todo listo
17. agregue esto al crontab y reinicielo luego

*/5 * * * * root /usr/local/squish/squish.cron.sh

el fichero de la base de datos se guarda en /var/lib/squish

Comentarios

reiniciar squish

ya tengo instalado el squish pero le pongo una cuota diaria a un usuario y al otro dia no se reinicia, hay alguna manera que lo haga automatico o como hacerlo manual