========== Implementar cuotas de navegacion para el SQUID con SQUISH ========== Autor: M.Sc. WIlfredo Martínez Consuegra Nick: whilo email: wilfredo@ecotsm.co.cu 1.-Bajamos el paquete de http://www.ledge.co.za/software/squint/squish/squish-0.0.18.tar.gz disponible como la última 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/squished 5.- Añada a /etc/squid/squid.conf las siguientes lineas #-- reglas para el squish y las cuotas--# ##acl SQUISHLOC dst proxy.midominio.cu acl SQUISHLOC url_regex \.vcl\.jovenclub\.cu ## tomando a jovenclub como ejemplo 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://proxy.isp.midominio.cu/?squished& SQUISHED1 deny_info http://proxy.isp.midominio.cu/?squished& SQUISHED2 deny_info http://proxy.isp.midominio.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) 7.- Establecer las cuotas en el fichero /etc/squish.conf Ej: agro 200Mb/month lsanta 200Mb/month nmar 200Mb/month yusmy 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 delta IN A 192.168.0.1 proxy IN CNAME delta 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@isp.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 enjoy Whilo ;-)