Está en la página 1de 39

CONFIGURACION PROXY SQUID EN LINUX Y

CONFIGURACION FIREWALL SIMPLE

Instalacin y Configuracin de un servidor Proxy con


En esta prctica se pretende instalar y configurar un servidor Proxy en Linux con
Squid y un cortafuegos GuFW en el servidor Ubuntu. La administracin del proxy se
realizara mediante Webmin.
En el servidor Proxy se creara una regla de acceso donde se prohibe la entrada a
pginas relacionadas con sexo, pornografa, etc.
El cortafuegos se configurara como permisivo y solo se cortaran los accesos
entrantes y salientes a la aplicacin amule como ejemplo.
El documento contiene los siguientes apartados:
1.
2.
3.
4.

Instalacin del servidor Proxy y GuFW.


Instalacin de Webmin.
Configuracin Squid y pruebas realizadas.
Configuracin de GufW y pruebas.

JUAN C TIRADO

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Instalacin del servidor Proxy y GuFW.


Para la instalacin del firewall GuFW abriremos una sesin de la terminal Bash en nuestra
maquina Ubuntu y desde la misma ejecutaremos el comando sudo aptitude install gufw tal y
como se aprecia en la captura siguiente, el sistema se encargara de descargar los paquetes
necesarios para la instalacin, y nos solicitara confirmacin para la instalacin, pulsaremos
y

Acto seguido y como se aprecia a continuacin el sistema comenzara la instalacin en s de


GuFW

JUAN C TIRADO

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Una vez termine la instalacin de los paquetes que componen el firewall y los halla
configurado, el sistema nos devuelve el control de la terminal bash, como se aprecia en la
siguiente captura.

Y el sistema nos habr creado un lanzador a GuFW en Sistema, Administracin tal y como se
puede comprobar en la siguiente captura.

Con esto habremos terminado la instalacin del Cortafuegos GuFW.


A continuacin procederemos a la instalacin del servidor proxy Squid en el sistema, para ello
lo documentaremos 3 procedimientos de instalacin distintos para el servidor Squid.

JUAN C TIRADO

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

El primer procedimiento de descarga se realizara desde el Gestor de paquetes Synaptic, en el


cual una vez iniciado desde sistema, administracin, gestor de paquetes synaptic,
introduciremos en el cuadro de bsqueda squid, y pulsaremos buscar tal y como se aprecia
en la captura siguiente.

El gestor de paquetes nos mostrara el resultado de la bsqueda y marcaremos para la


instalacin squid, el cual seleccionara los paquetes adicionales necesarios para su
funcionamiento, y haremos clic en aplicar.

JUAN C TIRADO

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Una vez realizado lo anterior comenzara la instalacin de los paquetes de Squid, y si pulsamos
en detalles nos mostrara los detalles de la instalacin mediante una consola.

JUAN C TIRADO

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Cuando finalice la instalacin el servidor proxy Squid se habr instalado en el sistema, otro
procedimiento para la instalacin de Squid es apt-get install squid tal y como se observa

JUAN C TIRADO

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

El ultimo procedimiento de instalacin del servidor proxy Squid ser llevado a cabo desde Unused Modules de la herramienta de administracin web Webmin, (de la cual documentaremos
su instalacin en otro punto) donde seleccionaremos Squid Proxy Server en la lista de mdulos
no usados, y haremos clic en l, con lo que se nos mostrara la pantalla de la captura, en la cual
habremos de hacer clic en click here (marcado en cuadro rojo) para que se realice su
instalacin.

JUAN C TIRADO

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Una vez realizado el clic se procede a la instalacin del servidor de manera no asistida por el
usuario, el sistema entiende que le has dado competencias para realizar la instalacin sin
necesidad de confirmacin u otra intervencin del usuario (notese la opcion en los
parmetros de instalacin -y --force -yes -f a continuacin de apt-get)

JUAN C TIRADO

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

El sistema nos informa no solo de la correcta instalacin del servidor en s, sino tambin de los
paquetes necesarios para el correcto funcionamiento del servidor proxy tal y como se muestra
en las siguientes capturas, instalacin correcta de squid-langpack, squid-common, el propio
squid, tal y como se muestra a continuacin.

JUAN C TIRADO

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Para por ltimo y una vez instalado el servidor poder acceder a la interfaz grfica de
administracin y configuracin que provee Webmin.

JUAN C TIRADO

1
0

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Instalacin de Webmin.
Para la instalacin de webmin habremos de proceder de la siguiente manera, podremos bien
dirigirnos directamente a la pgina de Webmin (www.webmin.com) y seleccionar downloads

En esa pgina procederemos a seleccionar la descarga que sea compatible con nuestra distro
de Linux, en este caso Debian para deban, Ubuntu y otros derivados Linux, tal y como se
observa en la captura, haremos clic para descargar.

JUAN C TIRADO

1
1

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Una vez descargada y en el sistema Ubuntu si hacemos doble clic sobre el archivo, aparecer la
opcin de abrir con (tal y como se aprecia en la captura) el instalador de paquetes Gdebi que
es el predeterminado para instalar descargas con la extensin .deb como es el caso de
nuestra descarga webmin_1620_all.deb, pulsamos aceptar.

JUAN C TIRADO

1
2

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Cargara el instalador de paquetes GDebi y haremos clic en Instalar paquete arriba a la


derecha

Lo que dar comienzo a la instalacin propiamente dicha, si hacemos clic en terminal veremos
el progreso de la instalacin.

Continuando la instalacin de webmin

JUAN C TIRADO

1
3

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Realizando la configuracin de administrador

JUAN C TIRADO

1
4

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Y notificndonos la finalizacin exitosa de la instalacin de webmin.

JUAN C TIRADO

1
5

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Los pasos para instalar Webmin en Ubuntu desde la terminal son los siguientes, ejecutaremos
sudo aptitude update, e instalamos una serie de paquetes que nos hacen falta para la
instalacin de Webmin y para que se configure con SSL mediante sudo aptitude install perl
libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions
nos aseguraremos de estar en nuestro directorio personal home mediante el comando
wget http://downloads.sourceforge.net/webadmin/webmin_1.620_all descargaremos la
ltima versin de webmin y procederemos a su instalacin mediante el comando sudo dpkg -i
webmin_1.620_all.deb
Una vez instalado podemos acceder a la interfaz web de Webmin usando un navegador y
escribiendo la direccin IP del equipo donde est instalado seguida del puerto donde est
escuchando, por defecto, el 10.000.
Eso s, debemos estar atentos porque en vez de usar el protocolo HTTP, usaremos el HTTPS, en
nuestro caso la IP ser https://192.168.0.199:10000 o lo que es lo mismo
https://servidorweb:10000.
Nos encontraremos con la siguiente advertencia si accedemos desde Firefox y aadiremos una
excepcin, por lo que hacemos clic sobre Obtener certificado y despus sobre Confirmar
excepcin de seguridad.

JUAN C TIRADO

1
6

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Iniciaremos sesin en Webmin y nuestro nombre de usuario ser el usuario del sistema con
privilegios de administrador, en este caso sr05 y como clave 1.

Y as accedemos a la interfaz de Webmin.

JUAN C TIRADO

1
7

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Configuracin Squid y pruebas realizadas.


Para la configuracin de Squid proxy server se ha partido de cero sin que existiera ninguna
acl ni restriccin proxy en el servidor, habiendo suprimido todas aquellas que aparecan por
defecto en la configuracin del mismo.
Una vez realizado esto, haremos clic en Access Control (marcado en cuadro rojo en la captura)
para proceder a configurar nuestras listas de control de accesos.

Una vez en la pantalla de Control de Acceso, para crear una nueva lista de control de acceso
habremos de seleccionar el tipo de lista en el desplegable de la derecha (marcado rojo), y una
vez seleccionado el tipo pulsar el botn crear nuevo de la izquierda. (Marcado azul)

JUAN C TIRADO

1
8

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Para definir la siguiente lista de control de acceso seleccionaremos el tipo Direccin de Cliente
(client address) y pulsaremos crear nuevo, una vez nos presenta la imagen siguiente, en esta
ocasin para el nombre de la lista (acl name) introduciremos all es una acl que verifica todos
los equipos de la red, es equivalente a acl all src 0.0.0.0/0.0.0.0 Posteriormente se utilizara
para establecer una poltica preestablecida para denegarlo o aceptarlo todo, por lo tanto
introduciremos 0.0.0.0 en el espacio (From ip), el espacio hasta ip (to ip) lo dejaremos vacio, y
por ultimo introduciremos 0.0.0.0 en el espacio de mascara de red (netmask), y acto seguido
pulsaremos salvar, y volveremos a acl haciendo clic en return to acls.

JUAN C TIRADO

1
9

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

La siguiente lista de control de acceso seleccionaremos el tipo Direccin de Cliente (client


address) y pulsaremos crear nuevo, una vez nos presenta la imagen siguiente, en esta ocasin
para el nombre de la lista (acl name) introduciremos localhost y en el espacio desde ip (from
ip) introduciremos la ip loopback del sistema 127.0.0.1 esta lista tiene por objeto registrar
nuestra maquina como origen de conexiones y acto seguido pulsaremos salvar, y volveremos a
acl haciendo clic en return to acls.

JUAN C TIRADO

2
0

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Para la siguiente lista de control de acceso seleccionaremos el tipo url_regex el cual permite
especificar expresiones regulares para comprobar una url completa, desde el http:// inicial, y
pulsaremos crear nuevo, en el nombre de esta lista introduciremos las iniciales de nuestro
nombre y apellidos, en este caso JCTS, marcaremos la opcin de ignore case para que ignore
JUAN C TIRADO

2
1

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

las maysculas, no introduciremos nada en el cuadro de expresiones, y en la ltima fila store


acl values in file almacenar valores en archivo marcaremos separate file archivo separado y
haremos clic en el cuadro con los tres puntos para seleccionar el archivo de configuracin y su
ubicacin y acto seguido pulsaremos salvar, y volveremos a acl haciendo clic en return to acls.

Previamente a la seleccin del archivo que contendr las expresiones a comprobar, habr que
crearlo e introducir en l lo que queramos comprobar, en este caso queremos que se bloquee
el acceso a las pginas que contengan pornografa, para conseguirlo crearemos mediante la
terminal bash un archivo llamado porno.acl en la carpeta /etc/squid/, para ello desde la
terminal realizaremos cd /etc/squid y una vez en la carpeta deseada nano porno.acl con lo
que nos creara dicho archivo.

Una vez en dicho archivo el cual estamos editando aadiremos tantas expresiones como
deseemos en este caso se han incluido 10 urls de pginas de contenido pornogrfico, y aparte
de estas 18 expresiones que pudieran conducir a una bsqueda de contenido pornogrfico
por medio de un buscador cualquiera, una vez configurado a nuestro gusto el archivo

JUAN C TIRADO

2
2

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

pulsaremos control+o para guardar el contenido escrito en el archivo seleccionado y control+x


para salir de nano.

Una vez realizado lo anterior el aspecto que tendr la pantalla de listas de control de acceso
ser el de la captura siguiente, una vez aqu seleccionaremos la pestaa Proxy restrictions
(marcada en rojo) y haremos clic en ella.
JUAN C TIRADO

2
3

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Una vez en Editar restricciones de proxy, crearemos dos reglas de control de acceso, la primera
de ellas ser allow autorizar y seleccionaremos la acl all con ello habremos conseguido
JUAN C TIRADO

2
4

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

una regla en la que todos tengan acceso, sin que se realice ninguna comprobacin de
expresin.

Y a continuacin crearemos la regla que comprobara las expresiones que hemos introducido
en el archivo y si coincide alguna de ellas no permitir la conexin, para ello seleccionaremos
deny denegar y en la lista de coincidencias acl (match acl) seleccionaremos nuestra lista de
control de acceso JCTS, y en la lista de no coincide acl (dont match acl) localhost que es el
equipo origen de las conexiones.

JUAN C TIRADO

2
5

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Solo queda ordenar las reglas de acceso para un correcto funcionamiento de nuestro servidor
proxy squid, para ello por medio de las flechas pondremos en primer lugar la regla deny
JCTS!localhost por encima de allow all, ya que si no se realizase esto no se comprobara
expresin alguna, ya que si no se coloca la regla ms restrictiva primero, no pasa a analizar la
segunda regla.

Con ello tendramos configurado el servidor proxy squid solo deberamos pulsar apply
changes , a continuacin stop squid y una vez parado el servidor ponerlo en marcha de
nuevo haciendo clic en start squid.

JUAN C TIRADO

2
6

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Una vez configurado y en marcha nuestro servidor proxy, solo nos queda configurar nuestro
navegador para que haga uso de l, para ello en Firefox, en la opcin de la barra de mens
Editar haremos clic en preferencias, en la ventana que cargara, haremos clic en avanzado, y
una vez all, seleccionaremos la pestaa red en la que haremos clic en configuracin.

En la ventana de configuracin de conexin, seleccionaremos la configuracin manual del


proxy e introduciremos los datos del mismo, nuestra direccin ip 192.168.0.199 y el puerto de
escucha es el definido por defecto para squid 3128, hacer notar que se configurara el no usar
proxy para localhost ni para 127.0.0.1 de manera automtica.
Una vez configurado pulsaremos aceptar.

JUAN C TIRADO

2
7

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

PRUEBAS
En Firefox una vez realizado lo anterior, introduciremos la url de una pgina pornogrfica, la
cual hemos hecho mencin especfica dentro del archivo porno.acl en concreto
es.pornhub.com, comprobamos que el proxy bloquea el acceso a dicha pgina.

Lo mismo ocurre con otra url nombrada en el archivo, www.babosas.com tambin es


bloqueado por el proxy.

JUAN C TIRADO

2
8

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Comprobaremos ahora si la bsqueda en google de una de las expresiones nombradas en el


archivo nos devuelve algn tipo de direccin, en este caso haremos la bsqueda con la
expresin sex, y comprobamos como ha sido bloqueada por squid.

Lo mismo sucede con otra expresin incluida tambin en el archivo, en este caso anal, que
tambin son bloqueados los resultados por squid.

JUAN C TIRADO

2
9

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Sin embargo cualquier otra bsqueda no coincidente con las expresiones del archivo
porno.acl devuelve resultados y permiten el acceso normalmente, como se aprecia en la
imagen.

JUAN C TIRADO

3
0

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Por ultimo una captura de ventana del sistema con una bsqueda bloqueada por el servidor
proxy, una bsqueda no bloqueada, la pgina de inicio de Firefox, y la informacin de la
conexin del sistema.

JUAN C TIRADO

3
1

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Configuracin de GufW y pruebas.


Para la configuracin de GuFW primero lo iniciaremos, por lo que iremos a sistema,
administracin, seleccionaremos configuracin del cortafuegos.

Se nos solicitara que introduzcamos nuestra contrasea

Con lo que se cargara nuestro cortafuegos, lo activaremos lo configuraremos en modo


permisivo (marcado en rojo), y pulsaremos el botn aadir para introducirle las reglas que
deseamos (marcado en azul).

JUAN C TIRADO

3
2

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Seleccionaremos la opcin de Mostrar acciones extendidas y podremos escoger entre


introducir las reglas pre configuradas en las cuales solo habremos de seleccionar el nmero de
orden de la regla, si la regla es permitir o denegar, la conexin entrante o saliente, con registro
sin registro o registro completo, si es un programa o servicio y el nombre del programa de una
lista de varios.
El modo simple el cual podremos seleccionar el nmero de orden de la regla, si la regla es
permitir o denegar, el tipo de trafico entrante o saliente, con registro sin registro o registro
completo, el protocolo TCP, UDP o ambos, y el nombre del programa.
Y por ltimo el modo Avanzado el nmero de orden de la regla, si la regla es permitir o
denegar, el tipo de trfico entrante o saliente, con registro sin registro o registro completo, el
protocolo TCP, UDP o ambos, la direccin ip de inicio y la direccin ip del final as como los
puertos que deseamos filtrar.
En este caso hemos elegido la opcin avanzada si bien hemos deseleccionado la opcin
mostrar acciones extendidas, y acto seguido hemos pasado a denegar la conexin entrante del
protocolo TCP en la direccin ip 192.168.0.199 en el puerto 4662 que es el puerto de
transferencias cliente a cliente P2P de amule por defecto.

JUAN C TIRADO

3
3

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Hemos pasado a denegar la conexin saliente del protocolo TCP en la direccin ip


192.168.0.199 en el puerto 4662 que es el puerto de transferencias cliente a cliente P2P de
amule por defecto.

Hemos pasado a denegar la conexin entrante del protocolo UDP en la direccin ip


192.168.0.199 en el puerto 4665 que es el puerto utilizado para recibir y enviar peticiones de
bsqueda globales. (ste siempre es el puerto anterior +3)

Hemos pasado a denegar la conexin saliente del protocolo UDP en la direccin ip


192.168.0.199 en el puerto 4665 que es el puerto utilizado para recibir y enviar peticiones de
bsqueda globales.

JUAN C TIRADO

3
4

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Hemos pasado a denegar la conexin entrante del protocolo UDP en la direccin ip


192.168.0.199 en el puerto 4672 que es el puerto utilizado para el protocolo eMule extendido:
Queue Rating, File Reask Ping, etc.

Hemos pasado a denegar la conexin saliente del protocolo UDP en la direccin ip


192.168.0.199 en el puerto 4672 que es el puerto utilizado para el protocolo eMule extendido:
Queue Rating, File Reask Ping, etc.

Quedando GuFW configurado con las siguientes reglas.

JUAN C TIRADO

3
5

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Con anterioridad a esto se instal en el sistema el cliente aMule.

Para proceder a la prueba de nuestro firewall, iniciaremos aMule desde aplicaciones, internet,
aMule, hacer constar que a modo de prueba se ha utilizado aMule en el equipo para que
comenzara a conectarse y a descargar como se observara a continuacin.

JUAN C TIRADO

3
6

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

Obsrvese que se encuentran dos descargas activas en aMule, y que la fecha de la ltima
recepcin de ambas es 17/02/2013 a las 22.36 y las 22.31 respectivamente.

Observar que en las estadsticas de aMule se observa como a lo largo de la sesin 26.48
minutos no se ha descargado de la red, ni subido nada a la misma por parte de aMule, y en la
JUAN C TIRADO

3
7

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

esquina inferior izquierda de aMule ha saltado el aviso de ID baja (marcado en rojo) esto indica
que no ha sido posible establecer una comunicacin correcta entre dos usuarios lo que
ocasiona que descargas lentas, e incluso hay servidores que eliminan las fuentes con ID baja.
Tambin se observa que la red Kad se encuentra tras cortafuegos en la parte inferior derecha.

Observar que el ndice de descarga y subida no est disponible, que no existen ni subidas ni
descargas activas
JUAN C TIRADO

3
8

CONFIGURACION PROXY SQUID EN LINUX Y


CONFIGURACION FIREWALL SIMPLE

JUAN C TIRADO

3
9

También podría gustarte