Las listas negras o blacklist a partir de ahora, las podemos encontrar en internet, las que vamos a utilizar en este manual contiene más de dos millones de dominios de todo tipo, desde pornografía a webmails, las categorías que tu actives en tu instalación es cosa tuya todo depende de donde instales el squid, en este manual se muestra como instalarlas todas y luego que cada uno se desactive las que no necesite.
Primero instalamos el squidguard con sus dependencias
proxy:~# apt-get install squidguard
Ahora descargamos las blacklist, http://urlblacklist.com en este site podrás encontrar algunas blacklist por categorías yo te recomiendo la bigblacklist que son 20393761 urls
http://urlblacklist.com/cgi-bin/commercialdownload.pl?type=download&file=bigblacklist
El arcchivo que te descarges Ej. bigblacklist.tar.gz lo guardas en el directorio root del servidor proxy.
Ahora en el servidor proxy entramos como root y descomprimimos el archivo
proxy:~# tar xvzf bigblacklist.tar.gz
Movemos el contenido del directorio blacklist al directorio /var/lib/squidguard/db/
proxy:~# mv blacklists/* /var/lib/squidguard/db/
En la configuración del squid /etc/squid/squid.conf tienen que existir estas lineas si no fuera el caso se las añades
Donde se encuentra el suidGuard(Filtrado web) y donde esta su archivo de configuración
Agregar las siguientes dos lineas para Squid 2.5:
redirect_program /usr/bin/squidGuard -c /etc/squid/squidGuard.conf
redirect_children 20
Agregar las siguientes dos lineas para Squid 2.6 o superior:
url_rewrite_program /usr/bin/squidGuard -c /etc/squid/squidGuard.conf
url_rewrite_children 20
En las siguientes lineas se muestra el contenido del archivo de configuración del squiqGuard, ubicado en: /etc/squid/squidguard.conf, las lineas de configuración se comentan una por una y al final de esta pagina podrás encontrar el archivo entero sin comentarios para que lo puedas utilizar en tu instalación.
Podemos utilizar el editor de textos nano para modificarlo
proxy:~# nano /etc/squid/squidguard.conf
Aquí es donde guardamos las blacklist
dbhome /var/lib/squidguard/db
Donde se guardaran los logs del squidGuard
logdir /var/log/squidGuard
También puedes limitar el acceso por horario o por ip, es muy intuitivo, tanto que omito cualquier comentario a esta configuración
dest porn {
domainlist porn/domains
urllist porn/urls
expressionlist porn/expressions
}
Aquí definimos que blacklist queremos activar, debajo se describe como funciona el bloque
- dest porn{ <-- el nombre de la acl
- domainlist <--donde se encuentra la db de los dominios pornos, en porn/domains que es lo mismo que /var/lib/squidguard/db/porn/domains
- urllist <-- donde se encuentra la db de urls pornos, en porn/urls que es lo mismo que /var/lib/squidguard/db/porn/urls
- expressionlist <-- donde se encuentra la db de expresiones porno, en porn/expressions que es lo mismo que /var/lib/squidguard/db/porn/expressions
}
Cuando tengamos todas las categorías definidas tenemos decirle al squidguard cuales prohibimos y cuales permitimos, en este manual solo prohibimos, pues si, la vida es una mierda y encima te mueres.
acl {
default {
pass !ads !adult !aggessive !antispyware !antispyware !artnudes !astrology
!audio-video !beerliquorsale !beerliquorinfo !blog !chat !childcare
!clothing !culinary !dating !desktopsillies !dialers !drugs !ecommerce
!entertainment all
redirect http://www.babilonics.com/politicausointernet.html
}
}
Estas lineas se explican por si solas pero por si hay alguien que no lo ve las explico a continuación:
- acl{ <-- Abrimos la acl(access List)
- default{ <-- el nombre y solo tenemos una
- pass !ads !adult … <-- solo permitimos el paso a las urls que no estan en estas categorías (!)
- redirect http://www.babilonics.com/politicausointernet.html <-- Si la url que pide el usuario esta en alguna categoría le mostramos las políticas del uso de internet
- } <-- cerramos la acl default
- } <--cerramos todo el bloque acl
Ahora necesitamos dar a la base de datos de squidGuard la propiedad adecuada:
chown proxy:proxy -R /var/lib/squidguard/db/*
y los permisos (todos los archivos 644, todos los directorios 755):
find /var/lib/squidguard/db -type f | xargs chmod 644
find /var/lib/squidguard/db -type d | xargs chmod 755
A continuación será necesario inicializar la base de datos:
proxy:~# squidGuard -C all
proxy:~# tail -f /var/log/squid/squidGuard.log
2009-12-05 10:17:56 [2636] init urllist /var/lib/squidguard/db/weapons/urls
2009-12-05 10:17:56 [2636] create new dbfile /var/lib/squidguard/db/weapons/urls.db
Una vez finalizada la inicialización de la base de datos de squidGuard bastará con reiniciar el squid y ya podemos probar nuestro nuevo y flamante proxy-cache
proxy:~# /etc/init.d/squid restart
En caso de hacer modificaciones a las blacklists será necesario actualizar la base de datos de squidGuard con:
proxy:~# squidGuard -C all
Y recargar la configuración de squid con:
proxy:~# /etc/init.d/squid force-reload
Archivo de configuración del squidGuard, en esta configuración se omiten parámetros, que yo no utilizo pero que en tu instalación pueden ser útiles, utiliza el archivo de configuración original para añadir los parámetros que consideres utilizando esta configuración como base:
dbhome /var/lib/squidguard/db
logdir /var/log/squidGuard
dest good {
}
dest local {
}
dest ads {
domainlist ads/domains
urllist ads/urls
expressionlist ads/expressions
}
dest adult {
domainlist adult/domains
urllist adult/urls
}
dest aggessive {
domainlist aggressive/domains
urllist aggressive/urls
}
dest antispyware {
domainlist antispyware/domains
urllist antispyware/urls
}
dest artnudes {
domainlist artnudes/domains
urllist artnudes/urls
}
dest astrology {
domainlist astrology/domains
}
dest audio-video {
domainlist audio-video/domains
urllist audio-video/urls
}
dest beerliquorsale {
domainlist beerliquorsale/domains
}
dest beerliquorinfo {
domainlist beerliquorinfo/domains
}
dest blog {
domainlist blog/domains
urllist blog/urls
}
dest chat {
domainlist chat/domains
urllist chat/urls
}
dest childcare {
domainlist childcare/domains
urllist childcare/urls
}
dest clothing {
domainlist clothing/domains
}
dest culinary {
domainlist culinary/domains
}
dest dating {
domainlist dating/domains
urllist dating/urls
}
dest desktopsillies {
domainlist desktopsillies/domains
urllist desktopsillies/urls
}
dest dialers {
domainlist dialers/domains
urllist dialers/urls
}
dest drugs {
domainlist drugs/domains
urllist drugs/urls
}
dest ecommerce {
domainlist ecommerce/domains
urllist ecommerce/urls
}
dest entertainment {
domainlist entertainment/domains
urllist entertainment/urls
}
dest filehosting {
domainlist filehosting/domains
}
dest games {
domainlist games/domains
urllist games/urls
}
dest gardening {
domainlist gardening/domains
}
dest hacking {
domainlist hacking/domains
urllist hacking/urls
}
dest homerepair {
domainlist homerepair/domains
urllist homerepair/urls
}
dest hygiene {
domainlist hygiene/domains
}
dest instantmessaging {
domainlist instantmessaging/domains
urllist instantmessaging/urls
}
dest jewelry {
domainlist jewelry/domains
}
dest kidstimewasting {
domainlist kidstimewasting/domains
urllist kidstimewasting/urls
}
dest marketingware {
domainlist marketingware/domains
}
dest medical {
domainlist medical/domains
urllist medical/urls
}
dest mixed_adult {
domainlist mixed_adult/domains
}
dest naturism {
domainlist naturism/domains
urllist naturism/urls
}
dest onlinegames {
domainlist onlinegames/domains
urllist onlinegames/urls
}
dest pets {
domainlist pets/domains
urllist pets/urls
}
dest phishing {
domainlist phishing/domains
urllist phishing/urls
}
dest porn {
domainlist porn/domains
urllist porn/urls
expressionlist porn/expressions
}
dest proxy {
domainlist proxy/domains
urllist proxy/urls
}
dest radio {
domainlist radio/domains
urllist radio/urls
}
dest ringtones {
domainlist ringtones/domains
}
dest sexuality {
domainlist sexuality/domains
urllist sexuality/urls
}
dest shopping {
domainlist shopping/domains
}
dest spyware {
domainlist spyware/domains
urllist spyware/urls
}
dest violence {
domainlist violence/domains
urllist violence/urls
}
dest virusinfected {
domainlist virusinfected/domains
urllist virusinfected/urls
}
dest warez {
domainlist warez/domains
urllist warez/urls
}
dest weapons {
domainlist weapons/domains
urllist weapons/urls
}
acl {
default {
pass !ads !adult !aggessive !antispyware !antispyware !artnudes !astrology !audio-video !beerliquorsale !beerliquorinfo !blog !chat !childcare !clothing !culinary !dating !desktopsillies !dialers !drugs !ecommerce !entertainment all
redirect http://www.nuestroservidor.com/politicausointernet.html
}
}