Servidor proxy HTTP con Squid: qué es, instalar en Ubuntu...

Servidor proxy HTTP con Squid: qué es, instalar en Ubuntu...

Squid es un programa que soporta peticiones HTTP a equipos que requieren conectarse a la red y además almacena las páginas consultadas de manera local incrementando la rapidez de acceso a los servidores. En resumen, este es un proxy con caché de software libre.

¿Cómo instalar el proxy en Ubuntu de Linux?

Para instalar Squid escribe en el terminal lo siguiente:

sudo aptitude install squid

¿Cómo configurar el servidor proxy?

La configuración de Squid se hace editando el archivo /etc/squid/squid.conf y para editar este archivo solo necesitas presionar Alt+F2 y escribir:

gksu gedit /etc/squid/squid.conf
  • Nombrar el proxy

Squid necesita conocer el nombre de la máquina. Para ello, primero busca la línea visible_hostname. Por ejemplo, si la máquina se llama “ubuntu”, añade:

visible_hostname ubuntu
  • Elegir el puerto

Por defecto, el puerto de escucha del servidor proxy será 3128. Para elegir otro puerto ubica esta línea:

http_port 3128

Y posteriormente únicamente cambia el número de puerto. Por ejemplo:

http_port 3177
  • Elegir la interfaz

El servidor proxy escucha por defecto todas las interfaces. Ahora bien, por razones de seguridad sólo debes configurarlo para que escuche en tu red local. Por ejemplo, si la tarjeta de red ligada a tu LAN tiene el IP 10.0.0.1, modifica la línea a:

http_port 10.0.0.1:3177
  • Definir los derechos de acceso

Por defecto, nadie está autorizado a conectarse al servidor proxy, a excepción de tu máquina. Por tanto, si quieres permitir que otras personas accedan hay que crear una lista de autorización. Vamos a definir a modo de ejemplo un grupo que abarca toda la red local. Ubica la línea del archivo que comienza por acl localhost y al final de la sección agrega lo siguiente (lanhome es un nombre arbitrario que hemos elegido):

acl lanhome src 10.0.0.0/255.255.255.0
© Línea de código
  • Autorizar al grupo

Ahora que el grupo está definido, vamos a centrarnos en las autorizaciones. Ubica la línea que contiene http_access allow y agrega debajo (antes de la línea http_access deny all):

http_access allow lanhome
© Línea de código
  • Autorizar los puertos no estándar

Squid sólo autoriza el tráfico HTTP en algunos puertos (80, etc.) Esto puede ocasionar problemas con algunas páginas web que utilizan otros puertos. Encuentra la siguiente línea para evitar bloqueos:

http_access deny !Safe_ports

Y agrega un comentario:

#http_access deny !Safe_ports

¿Cómo iniciar el proxy?

Reinicia el proxy para que se tenga en cuenta la nueva configuración. Después de esto el proxy debería funcionar. Sólo habrá que configurar los diversos programas para que lo utilicen. Para reiniciar:

sudo /etc/init.d/squid restart

¿Dónde se encuentran los logs?

Los logs del proxy se encuentran en /var/log/squid/access.log.

¿Cómo modificar el tamaño de caché?

Por defecto, la caché de Squid está activada, lo que permite que las páginas se carguen más rápido. El tamaño por defecto es de 100 MB (ubicada en /var/spool/squid). Para cambiar su tamaño modifica el archivo /etc/squid/squid.conf. Para ello encuentra la línea:

# cache_dir ufs /var/spool/squid 100 16 256

Para modificarla puedes cambiar el valor de 100 a el valor que desees (por ejemplo 200 MB):

cache_dir ufs /var/spool/squid 200 16 256

¿Cuáles son los módulos de Squid?

Squid posee una gran cantidad de opciones y módulos. Abre Synaptic y haz clic en el botón "Buscar". Después escribe "Squid" para encontrar los módulos relacionados a Squid. Algunos de ellos son:

  • Prefetch (para pre-cargar las páginas y de este modo acelerar la navegación).
  • Filtros antivirus, anti-popups, etc.
  • Control de acceso al proxy con login y contraseña.
  • Control de acceso en función de la hora.