Underc0de

Sistemas Operativos => GNU/Linux => Mensaje iniciado por: jOn en Abril 28, 2016, 11:44:55 PM

Título: Proxy Squid + squidGuard + Shalla's Blacklist
Publicado por: jOn en Abril 28, 2016, 11:44:55 PM
Hola! Este será mi primer aporte solo espero que os guste y sea de ayuda.

¿Qué vamos a ver y a hacer en este tutorial?
Bien lo que veremos es como instalar un Proxy web, para el que no sepa para que sirve básicamente es poner un intermediario entre el navegador e internet y gracias a las shalla list tendremos una gran base de páginas clasificadas en distintas categorias como por ejemplo porno, publicidad, colegios, redes sociales, alcohol y un largo etc.
La funcion que hará es que cuando el usuario ingrese una página web como por ejemplo heineken, squidguard comprobará si en la ACL está la categoría de alcohol bloqueada y si es la página esta en la database de alcohol automáticamente será bloqueada.


Empezaremos instalando squid3 con el comando.

¿Que es squid3?

Como ya mencioné arriba este será el software que utilizaremos para crear el servidor proxy

sudo apt-get install squid3 squidclient squid-cgi

(http://i.imgur.com/P3XklK9.png)

Una vez instalado instalamos squidGuard con comando

¿Que es SquidGuard?

SquidGuard es el encargado de redireccionar y filtrar Sitios Web utilizando la interfaz estándar del Squid. SquidGuard. Sistema de filtrado combinado de redireccionamiento web, y el plugin del controlador de acceso para Squid

sudo apt-get install squidguard

(http://imgur.com/ymX5Gav.png)

Una vez instalado tenemos que decirle que el propietario de la base de datos donde se va a guardar las shallalist, es proxy.

sudo chown -R proxy:proxy /var/lib/squidguard/db

Modificamos el archivo squirdguard.conf que está en /etc/squidguard/squidguard.conf, cambiamos el dbhome por la ruta en la que instalaremos la blacklist y logdir por la ruta en la que está el squidGuard.log

(http://i.imgur.com/rWgPafG.png)
*Nota: en la imagen hay unas cuantas acl mientras investigaba mas adelante las explicaré.

Ahora incorporamos dos lineas en squid.conf para que cuando hagamos un restart o start, tome la configuración del archivo «/etc/squidguard/squidguard.conf»

url_rewrite_program /usr/bin/squidGuard -c /etc/squidguard/squidGuard.conf
url_rewrite_children 2


(http://i.imgur.com/vNNcR4F.png)

Ahora bajamos el shallalist.sh

wget http://www.shallalist.de/Downloads/shalla_update.sh

(http://i.imgur.com/ekBPafE.png)

Editamos el script shalla_update.sh con gedit y tiene modificamos los siguientes campos.

squidGuardpath=
squidpath=
httpget=
tarpath=
chownpath=
dbhome=
squidGuardowner=


(http://i.imgur.com/p3n7lMq.png)

Ejecutamos el script y nos descargará la base de datos.

sudo bash ./shalla_update.sh

(http://i.imgur.com/Xnl6LXZ.png)

Despues de obtener las shallalist comentaremos esta linea para que no baje la base de datos nuevamente.

(http://i.imgur.com/854Xgwi.png)

Vamos a la siguiente ruta para comprobar de que se han descargado.

cd /var/lib/squidguard/db
ls


(http://i.imgur.com/kC823Cp.png)

Bien, estas carpetas tienen dentro dos ficheros que son domains y url en los que dentro hay una recopilación de dominios y urls.

Una vez tenemos todo esto para los ejemplos voy a crear 3 páginas en html ( LOL, ahora viene bajo nivel de html )
Primero creamos el primero que se llamará blocked.html que será generico.
cd /var/www/html
touch blocked.html
gedit blocked.hml


(http://i.imgur.com/yxJAuq6.png)

Segundo crearemos uno que se llamará alcohol.html

touch alcohol.html
gedit alcohol.html


(http://i.imgur.com/DqSq1gs.png)

El tercero que crearemos se llamará no.html

touch no.html
gedit no.html


(http://i.imgur.com/ulP1Lb4.png)

Una vez ya las tenemos vamos a configurar squidGuard.conf

sudo gedit /etc/squidguard/squidGuard.conf

(http://i.imgur.com/IPXWr2u.png)

Para crear las ACL destino es muy sencillo escribimos

dest alcohol ( nombre que queramos poner a la acl ) {
domainlist alcohol/domains ( ruta en la que esta la lista de dominio )
urllist alcohol/url ( ruta en la que esta la lista de url )
redirect http://( ip del server donde esté instalado el proxy )/alcohol.html <-Esta parte es por si queremos hacer una redirección especifica.


Para aplicar la ACL escribimos

acl{
             default {
             pass !alcohol(nombre del destino) all
             redirect http://192.168.10.1(ip del server proxy)/blocked.html
           }
}


También se pueden crear ACL de origen para bloquear IPs especificas solo habria que escribir

src jOn {
         ip 192.168.0.0
}


O crear un rango de Ips ejemplo

src facturacion{
   ip 10.1.2.3-10.1.2.20
}


Como podeis ver en la imagen anterior yo tengo 3 acl destino creadas una con porn, otra con adv y alcohol. Bien reiniciamos el servicio

sudo service squid3 restart

Ahora vamos a un cliente y configuramos el navegador para que use proxy.

(http://i.imgur.com/Tk1zkFj.png)

Ponemos la ip del server, en mi caso es 192.168.10.1 y el puerto 3128

Prueba con una página de alcohol.
(http://i.imgur.com/m7KBu9t.png)

Prueba con una página de publicidad
(http://i.imgur.com/XxEz4v3.png)

Prueba con una página de pornografía
(http://i.imgur.com/RLYsxWL.png)

Si quereis mas información sobre como hacer ACL podeis visitar la página de squidguard : http://www.squidguard.org/Doc/configure.html


Título: Re:Proxy Squid + squidGuard + Shalla's Blacklist
Publicado por: Stiuvert en Abril 29, 2016, 07:00:36 AM
Muy útil Squid!

Está muy bien explicado @jOn (https://underc0de.org/foro/index.php?action=profile;u=55255), pero sabes que añadiría? Una pequeña introducción de que consiste Squid y para que se puede utilizar.

Un saludo
Título: Re:Proxy Squid + squidGuard + Shalla's Blacklist
Publicado por: arthusu en Abril 29, 2016, 02:00:06 PM
Muy buen aporte! C: +1
Título: Re:Proxy Squid + squidGuard + Shalla's Blacklist
Publicado por: jOn en Abril 29, 2016, 02:46:53 PM
@Stiuvert (https://underc0de.org/foro/index.php?action=profile;u=3790) Gracias! en cuanto pueda lo modifico  para que quede más presentable y una introducción!

@arthusu (https://underc0de.org/foro/index.php?action=profile;u=2961) Muchas gracias!

En cuanto pueda intentare contribuir con mas cosas :)
Título: Re:Proxy Squid + squidGuard + Shalla's Blacklist
Publicado por: ice en Abril 30, 2016, 06:29:40 PM
alto tutorial! también me parece que sería genial como dijeron más arriba, que agregues algo de información de los paquetes que usás, que són, para que sirven, que lográs con ellos, etc...
Título: Re:Proxy Squid + squidGuard + Shalla's Blacklist
Publicado por: linuxer0 en Junio 08, 2016, 08:41:29 AM
Excelente amigo...podrias hacer lo mismo pero proxy transparente...