#SysAdmin – Como saber la hora de los Logs del #Squid

Squid
Squid

Como ustedes ya saben en este blog Squid Proxy no necesita introducción, además si estás buscando información sobre lo que trataremos sobre Squid ahora probablemente es porque ya has configurado un Proxy Squid en GNU/Linux; por lo que iremos directamente al asunto. Y bueno, solo por si las moscas no conoces lo que es Squid Proxy te diré que un proxy es un servidor o aplicación intermediaria entre una o varias computadoras por medio de las cuales se buscan recursos (regularmente de Internet) y el destino o servidor donde se encuentran dichos recursos.

Fuera de los filtros o restricciones que se pueden establecer en un servidor o aplicación proxy, este suele trabajar en dos modalidades:
  • Manual: En la que se debe configurar cada cliente de forma manual para que accese a Internet vía el proxy, indicándole la dirección IP y el puerto de dicho proxy;
  • Transparente o intercepción: En la que cada cliente accesa directamente al proxy “sin darse cuenta” pues este tipo de servidor proxy por lo regular es la pasarela de la red local (gateway) y se han hecho los ajustes de IPtables necesarios para que direccione las solucitudes al puerto 80 como si fueran al puerto en el que la aplicación proxy trabaja (regularmente el puerto 3128 en Squid).
Finalmente, el objetivo de este post es ilustrarlos en lo que se refiere al monitorieo del tráfico en Squid Proxy. En posts anteriores vimos en detalle varios aspectos de Squid y también sobre el fichero access.log, y mencionábamos cómo podemos convertir la variable time, que está en tipo Unix, a un tipo de formato más entendible utilizando Perl.
Aunque existen varias aplicaciones para monitorear las actividades de Squid, nada mejor que un par de comandos que combinados rápidamente nos dan buenos resultados. El siguiente comando nos mostrará en tiempo real el acceso a Squid de los diferentes clientes o computadoras de la red que están navegando en Internet, pero la salida de este comando es enviada por tubería (pipe) a Perl para que nos devuelva la fecha y hora de acceso en formato más humano:

Hora y fecha del log de Squid

 El log de squid (access.log) muestra el acceso a internet de las estaciones. Para ver la fecha y hora de acceso en tiempo real, usar el siguiente comando:

# tail -f /var/log/squid/access.log | perl -pe ‘s/[\d\.]+/localtime($&)/e’

Para obtener el mismo resultado de forma retrospectiva, es decir no en tiempo real

# sudo cat /var/log/squid3/access.log | perl -pe ‘s/\d+/localtime($&)/e’ | less

Cambiar formato de fecha en el Log de Squid

La fecha del log esta en formato UTC y necesito verlo GMT: dd/month/yyyy:hh:mm:ss

La solución la encontré:

1. Editar el archivo: /etc/squid/squid.conf

2. Agregar la línea al final: emulate_httpd_log on

3. Reiniciar el demonio: /etc/init.d/squid restart

4. Revisar log: tail -f /var/log/squid/access.log

El resultado es:

192.168.0.4 – – [01/Oct/2015:09:04:35 -0500] “GET http://armandof.cubava.cu HTTP/1.1” 304 294 TCP_IMS_HIT:NONE

 

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*