RouterMaN’s Bloghackergotchi

November 22, 2007

Proxy en Debian Etch: Dansguardian + Squid + Sarg

Filed under: GNU/Linux, Debian, HOWTO

Como el título lo indica, el objetivo de este post es instalar estas 3 aplicaciones y que nos muestre las estadísticas de consumo. Normalmente si instalamos solo Dansguardian y Squid en los logs del squid vemos que las peticiones para loguearse son de la propia máquina. Lo cual es inútil para el Sarg, pues todas las estadísticas serían con localhost. Para arreglar este problema, se debe compilar el squid con el tag “–enable-follow-x-forwarded-for”. Para hacerlo simplemente seguimos los siguientes pasos:

  • Instalamos las dependencias del squid
    • apt-get build-dep squid
  • Descargamos las fuentes del squid
    • cd /usr/src/
      apt-get source squid
  • Modificamos las opciones de compilación
    • vim /usr/src/squid-2.6.5/debian/rules
  • En este archivo, en la parte del configure (linea 141 apróx) aumentamos la opcion:
    • --enable-follow-x-forwarded-for \
  • Editamos el changelog y le ponemos una version superior
    • vim /usr/src/squid-2.6.5/debian/changelog
  • En mi caso la linea queda squid (2.6.5-7) unstable; urgency=high
    (Antes era squid (2.6.5-6) unstable; urgency=high)
  • Ahora creamos el paquete
    • cd /usr/src/squid-2.6.5
      dpkg-buildpackage
  • Instalamos los paquetes generados con dpkg -i. En nuestro caso, estos paquetes son squid y squid-common
  • Una vez instalado los paquetes, configuramos el archivo /etc/squid.conf. Las siguientes lineas deben estar añadidas o descomentadas
    • acl localhost src 127.0.0.1/255.255.255.255
      acl redinterna src 10.1.0.0/255.255.0.0
      acl reddmz src 192.168.214.0/255.255.255.0

      follow_x_forwarded_for allow localhost
      acl_uses_indirect_client on
      log_uses_indirect_client on

      http_access allow localhost
      http_access allow redinterna
      http_access allow reddmz

    Con eso terminamos la configuración del squid. Ahora para el dansguardian y el Sarg los instalamos como cualquier otro paquete en debian, es decir, con apt-get. Debemos indicarle al Dansguardian que mande en la cabecera HTTP al squid, el cliente inicial, para eso activamos el parametro forwardedfor (línea 248 aproximadamente)

  • forwardedfor = on
  • Para el caso del sarg, simplemente se instala, pero debemos tener en cuenta el logrotate, que por defecto está en un día. Debemos cambiarlo para que sea una vez a la semana, así como también aumentar el tamaño máximo del access.log

    11 Comments »

    The URI to TrackBack this entry is: http://routerman.blogsome.com/2007/11/22/proxy-en-debian-etch-dansguardian-squid-sarg/trackback/

    1. Te recuerdo que estás invitado, como siempre, a participar con una charla relámpago este DíaDebian:

      http://www.debianperu.org/diadebian2007/charlasrelampago

      :)

      Comment by Diego Escalante Urrelo — November 23, 2007 @ 2:30 am

    2. comparito.. eres un MAESTRO.. excelente, funciona ;)

      Comment by Carlos Carrera — December 18, 2007 @ 4:34 pm

    3. me sale este error!!!!
      dpkg-shlibdeps tools/cachemgr.cgi
      dpkg-gencontrol -isp -psquid-cgi
      dpkg –build debian/tmp ..
      dpkg-deb: building package `squid-cgi’ in `../squid-cgi_2.6.5-7_i386.deb’.
      rm -rf debian/tmp
      signfile squid_2.6.5-7.dsc
      gpg: skipped “Luigi Gangitano “: secret key not available
      gpg: [stdin]: clearsign failed: secret key not available

      dpkg-genchanges
      dpkg-genchanges: not including original source code in upload
      dpkg-buildpackage: binary and diff upload (original source NOT included)
      (WARNING: Failed to sign .dsc and .changes file)

      no puedo instalarlo :( :’(

      Comment by Carlos Carrera — December 19, 2007 @ 2:53 pm

    4. Carlos,
      Ese error es correcto.
      Los .deb están en /usr/src/. Los puedes instalar de ahi

      Saludos,

      Comment by Diego — January 9, 2008 @ 5:34 pm

    5. Buen dia.
      Ya instale todo muy bien, ya puse en “on” el dansguardian, pero no logro entender eso del sarg, como ultimo paso y ponerlo a prueba.

      Gracias de antemano.
      Atentamente,
      Enrique N. A.

      Comment by enrique — February 14, 2008 @ 5:46 pm

    6. Me sale este error luego de hacer el dpkg-build

      install -p -o root -g root -m 644 debian/doc/CompleteFaq debian/tmp/usr/share/doc/squid
      gzip -9f `find debian/tmp/usr/share/doc/squid/* | grep -v examples`
      dpkg-gencontrol -isp -psquid-common
      dpkg –build debian/tmp ..
      dpkg-deb: construyendo el paquete `squid-common’ en `../squid-common_2.6.18-2_all.deb’.
      dpkg-deb: el directorio de control tiene permisos erróneos 2755
      (debe ser >=0755 y

      Comment by Sebas — April 7, 2008 @ 5:49 pm

    7. Diego, ya lo solucioné con esto:
      # chmod -R a-s /usr/src

      Comment by Sebas — April 7, 2008 @ 6:16 pm

    8. Ahora el tema es que me genero estos paquetes para instalar:

      squid-cgi_2.6.18-2_i386.deb
      squidclient_2.6.18-2_i386.deb
      squid-common_2.6.18-2_all.deb

      Debo instalar to2?

      Comment by Sebas — April 7, 2008 @ 6:18 pm

    9. Hola instale el dansguardian y lo configure pero le hago un service dansguardian status y me sale el error service desconocido, ayudenme ya no se que hacer UR

      Comment by Bernar — January 21, 2009 @ 11:12 am

    10. Hola buenas tardes, ya c que este tema esta algo desactualizado pero me ayudaria mucho que me ayudaras con la instalacion de este tema…

      veras segui los pasos y todo iva bien hasta que me confundi en el pso de editar el changelog me aparece algo asi y me pierdo

      Gangitano ——– 11 líneas: squid (2.6.5-5) unstable; urgency=low — Luigi
      Gangitano ——— 14 líneas: squid (2.6.5-4) unstable; urgency=high —
      Luigi Gangitano ——– 12 líneas: squid (2.6.5-3) unstable; urgency=low —
      Luigi Gangitano ——— 22 líneas: squid (2.6.5-2) unstable; urgency=low —
      Luigi Gangitano ——— 24 líneas: squid (2.6.5-1) unstable; urgency=low —
      Luigi Gangitano ——— 23 líneas: squid (2.6.4-2) unstable; urgency=low -
      Luigi Gangitano ——— 9 líneas: squid (2.6.4-1) unstable; urgency=low -
      Luigi Gangitano ——— 9 líneas: squid (2.6.3-1) unstable; urgency=low -
      Luigi Gangitano ——— 15 líneas: squid (2.6.2-1) unstable; urgency=low -
      Luigi Gangitano ——— 13 líneas: squid (2.6.1-4) unstable; urgency=low -
      Luigi Gangitano ——— 17 líneas: squid (2.6.1-3) unstable; urgency=low -
      Luigi Gangitano ——— 7 líneas: squid (2.6.1-2) unstable; urgency=low -
      Luigi Gangitano ——) stable-security; urgency=high

      y no c donde modificar o poner la linea

      espero me ùedas ayudar

      de antemano gracias por tu amable atencion.

      saludos
      PAZ

      Comment by Adalberto Cesar — January 22, 2009 @ 10:57 am

    11. Sin palabras… a la primera funciono… muchas graciac compadre.

      Comment by Camilo — January 25, 2009 @ 6:21 pm

    RSS feed for comments on this post.

    Leave a comment

    Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>























    Get free blog up and running in minutes with Blogsome | Theme designs available here