You are on page 1of 10

Manual de instalación y uso de Squid.

Para instalar las versiones de Squid y sus dependencias más convenientes para el estado del servidor 
hay que introducir el comando
sudo apt­get install squid

Cuando se pregunte si se desea seguir con la instalación, seleccionar que sí y esperar a que termine la 
instalación.
En el archivo squid.conf ubicado en el directorio /etc/squid/ se encuentra la configuración básica del 
servidor proxy, sin embargo, este archivo está lleno de comentarios y es difícil editarlo a gusto. Por lo 
tanto, mejor optamos por borrar todo su contenido y colocar sentencias que sí comprendamos y 
controlemos.
Para abrir el archivo squid.conf hay que teclear el siguiente comando
sudo gedit /etc/squid/squid.conf

Al abrirse el editor de texto hay que eliminar todo su contenido y en su lugar colocar el siguiente texto

# Parámetros de identificación *******************
visible_hostname proxy_seg_informatica
http_port 192.168.1.67:3128 transparent

# Uso de la Cache *******************************
cache_mem 64 MB   
cache_swap_low 90
cache_swap_high 95
maximum_object_size 4096 KB
cache_dir aufs /var/spool/squid 1024 16 256
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log        
cache_store_log /var/log/squid/store.log

# Listas de control de acceso ********************
acl all src 0.0.0.0/0.0.0.0     # todas las direcciones IP
acl servidor src 192.168.1.67/255.255.255.255 # El servidor proxy
acl maestros src 192.168.1.0/255.255.255.128 # Subred de los maestros
acl alumnos src 192.168.1.128/255.255.255.128 # Subred de los alumnos
acl puerto_msgr port 1863 # Puerto del messenger
acl sitio_denegado dstdomain www.youtube.com # Se niega youtube
acl horario_trabajo time MTWHF 8:00­20:00 # De lunes a viernes de 8am­8pm
acl palabras_malas url_regex "/etc/squid/palabrasMalas" #Archivo donde se definen las palabras malas
# Asignación de las ACL ***************************
http_access allow servidor 
http_access deny puerto_msgr
http_access allow !horario_trabajo sitio_denegado 
http_access allow maestros
http_access allow alumnos !palabras_malas
http_access deny all

error_directory /usr/share/squid/errors/es # Para que los errores salgan en español

En la sección Parámetros de identificación se especifican datos básicos del servidor como el nombre, 
la dirección IP y el puerto en el que funciona.
La siguiente sección es para especificar el uso de la Caché del servidor, así como la ubicación de los 
archivos *.log que llevarán registro de cada acontecimiento en el servidor.
En la sección Listas de control de acceso se asignan variables a direcciones IP, dominios, urls, tiempos, 
puertos o archivos. Por ejemplo, en la última línea de esta sección, se identifican como 
“palabras_malas” a todo url que tenga alguna de las palabras contenidas en el archivo 
/etc/squid/palabrasMalas.
En la última sección, se permite o niega el acceso utilizando combinaciones de las variables 
previamente definidas. Las condiciones de acceso se pueden resumir a lo siguiente:
– El servidor no tiene ninguna restricción en el tráfico que maneja.
– Para todas las demás computadoras se prohíbe la comunicación por el puerto del messenger.
– Mientras no sea horario de trabajo, permite el acceso a youtube.
– Fuera de las restricciones antes mencionadas, los maestros no tienen ninguna más
– Además, los alumnos sólo pueden ver aquellas páginas que no tengan las palabras malas.
– Por motivos de seguridad se prohíbe el cualquier tráfico que no sea del servidor, maestros o 
alumnos.
La última línea indica la dirección de los archivos que se deben desplegar cuando sucede un error, en 
este caso, seleccionamos la carpeta que contiene los archivos en español. Dichos archivos pueden ser 
modificados para que se despliegue cualquier mensaje y en cualquier plantilla. Finalmente, hay que 
guardar y cerrar el archivo.
Aún falta crear el archivo que contendrá la lista de palabras prohibidas. Para hacerlo, hay que escribir 
en la terminal
sudo gedit /etc/squid/palabrasMalas

Dicho comando creará el archivo y lo abrirá para que lo podamos editar. Hay que introducir la lista de 
palabras que consideramos “malas”, tal como lo muestra la figura. Posteriormente guardar y cerrar el 
archivo.

Finalmente, para terminar la configuración del proxy, es necesario reiniciar el servicio del servidor 
mediante el siguiente comando.
sudo /etc/init.d/squid restart
Con esto queda terminada la configuración del servidor proxy, ahora sólo queda hacer pruebas para 
comprobar que funcione adecuadamente.
Dado que las pruebas del servidor fueron realizadas fuera del “horario de trabajo”, la única forma de 
probar al servidor es probando las restricciones que se aplican para distintos segmentos de red.
La siguiente imagen muestra cómo se configuró el navegador de una cliente con Windows XP para que 
acceda a Internet por medio de nuestro Proxy.
En el navegador se da click en Herramientas>>Opciones de internet. En la ventana que se abre 
seleccionar la pestaña de Conexiones y luego dar click en el botón Configuración de LAN... Emergerá 
una nueva pestaña en la que se tendrá que introducir la dirección y el puerto del servidor.
Posteriormente, se configura el host para que se encuentre inicialmente dentro de la subred de alumnos.

Como era de esperarse, el cliente puede entrar a cualquier dirección de internet siempre y cuando no se 
aplique una de las restricciones que se establecieron antes (como Yahoo).
Pero cuando el alumno busca en google una de las palabras prohibidas, por ejemplo boobies
El resultado es el siguiente
Ahora cambiamos la dirección IP del host para que forme parte de la subred de profesores
Al buscar en google otra de las palabras prohibidas, en este caso barney, el resultado es el siguiente.
Esto corrobora el buen funcionamiento del servidor.
Por último, si se desea llevar un monitoreo de los últimos eventos del servidor, se pueden ver las 
últimas líneas de los archivos *.log utilizando la instrucción tail. En este caso, los comandos serían
sudo tail ­f /var/log/squid/access.log
sudo tail ­f /var/log/squid/cache.log
Dando como resultado lo siguiente

You might also like