Addons y binarios para IPCop 1.4.x

IPCop Logo

IPCop Logo

Pues parece que algunos addons y binarios para las versión 1.4.x de IPCop las están descontinuando y ya no están en línea. Lamentablemente los binarios (y supongo que algunos addons) no son compatibles entre las versiones 1 y 2.

A solicitud del amigo Carlos Illes que me dejó varios comentarios en este sitio tuve que desenterrar mi antiguo servidor para recuperar los addons y binarios que tenía instalados.

Lista de addons y binarios para descargar

No son todos los que estaban disponibles, pero si son los de batalla. Si todavía tienen un servidor IPCop viejito y necesitas algunos de estos addons los puedes descargar sin problemas y retrasar un poco la actualización.

Como configurar un bypass al proxy transparente de IPCop

Bypass al proxy transparente de ipcop

En esta ocasión les voy a intentar explicar como configurar un bypass al proxy transparente de IPCop 2 para que las peticiones a ciertos dominios salgan directamente a Internet sin pasar por Squid.

El problema

Como les había comentado en días anteriores cambié mi servidor de de IPCop a IPCop 2. El cambio ocurrió prácticamente sin problemas, pero al poco tiempo me encontré con uno que no fue sencillo de solucionar.

Con el rollo de la facturación electrónica tuve un problema con mi PAC[^1], al momento de intentar timbrar una factura con el programa Microsip me arroja el siguiente error:

Ocurrió la siguiente excepción: Connection lost (error code is 10058)

Durante varios días le estuve dando varias vueltas al asunto. A manera de solución rápida desactivé el proxy y se pudo timbrar sin problemas, primera pista Squid.

Llevo usando Squid durante más de 8 años y es la primera vez que tengo un problema de este tipo, vamos, ni con los horripilantes sistemas del gobierno mexicano desarrollados en Java he tenido tantos problemas por algo tan sencillo.

Investigué en varios foros el origen del problema, al parecer existe una mala combinación entre SOAP,IIS7 y Squid en sus ultimas versiones (actualmente IPCop usa la versión 3.4.4), simplemente no se llevan bien y eso provoca el error de conexión.

En un principio quise agregar una opción a Squid para que se llevaran bien, me refiero a ignore_expect_100 on pero no funcionó, siguió apareciendo exactamente el mismo problema.

Como de momento no se iban a llevar bien mi proxy y el servidor de timbrado y apagar el proxy cada vez que se iba a timbrar una factura no era para nada una solución práctica decidí cambiar el enfoque.

Bypass al proxy.

Sabía lo que tenía que hacer. De alguna forma tenía que configurar IPCop para que al momento de que llegara una petición al dominio del servidor de timbrado, en lugar de que se fuera por la ruta normal (Squid como proxy transparente) saliera directamente a internet sin la intermediación del proxy. Creo que ni yo me entendí… en fin, la idea es esa.

Bypass al proxy transparente de ipcop

Decirlo es más fácil que hacerlo, al igual que en otras ocasiones supuse que la solución la iba a encontrar con iptables y así fue.

Encontré un artículo que explicaba como hacer esto en IPCop 1.4.12 así que sólo lo tuve que adaptar ligeramente para que funcionara en IPCop 2.

Para lograrlo hay que editar el archivo /etc/rc.d/rc.firewall.local y agregar algunas reglas de iptables.

El archivo esta dividido en 3 secciones, start, stop y reload. Sólo vamos a modificar las dos primeras.

A manera de ejemplo, si el dominio problemático es xyz.com entonces en la sección de start agrego la siguiente línea:

/sbin/iptables -t nat -A CUSTOMPREROUTING -p tcp --dport 80 -d xyz.com -j ACCEPT

En la sección de stop:

/sbin/iptables -t nat -F CUSTOMPREROUTING

Y la sección reload la dejo tal y como esta.

Al final el archivo completo queda muy similar a este:

Guarden el archivo. Para aplicar los cambios, pueden reiniciar el servidor o mediante una conexión ssh ejecutar el script con /etc/rc.d/rc.firewall.local reload

La comprobación

Para averiguar que todo esta funcionando pueden activar los registros del proxy Menú Servicios – Proxy – Configuración de Registros – Registro Activado y luego revisar los registros en el menú LogsRegistros del proxy.

Visite unas tres o cuatro veces el sitio, no deben de aparecer en el registro porque en teoría nunca pasaron por ahí.

Este consejo se puede aplicar tanto en IPCop 1.x como en IPCop 2.x .Espero que este artículo les sea de utilidad.

Referencias

Aumentar el tamaño de la partición root en IPCop 2

Hace unos días un amigo me contactó porque tiene un problema con IPCop 2. Al parecer se llena muy rápido su partición de root, tratamos de identificar que programa era el que estaba llenando la partición, pero al final intentamos modificar el tamaño de la partición root para hacerla más grande.

Por default IPCop asigna un tamaño de unos miserables 512 MB para la partición de root y el resto del disco duro para /var/log y otras cosas. Esta configuración por default debería de funcionar bien, pero parece que unos addons utilizan la partición de root para guardar algunos datos y con tan poco espacio disponible la llenan con muy poco esfuerzo.

Antes que nada les advierto que este es un procedimiento experimental, hice algunas pruebas con una maquina virtual porque mi instalación de IPCop con la versión 1.4 tiene años funcionando bien y no tengo una razón para cambiarlo o actualizarlo, pero algunos prefieren la versión 2 porque soporta hardware más moderno como discos o unidades de CD SATA (por decir lo menos). Hechas las aclaraciones pertinentes, si se hace con cuidado este método puede funcionar sin muchos problemas, aunque prefiero que lo hagan en instalaciones nuevas.

Gparted al rescate.

Para las pruebas usé una maquina virtual con un disco duro de 8 GB. Usé mi disco de Hirens BootCD que incluye un live cd de una herramienta especializada llamada Parted Magic que es básicamente Gparted. Así que prácticamente cualquier live CD que lo incluya se puede utilizar, como por ejemplo el CD de instalación de Ubuntu.

Como pueden ver en la siguiente imagen, la partición de root ocupa muy poco espacio y la partición varlog ocupa el espacio restante.

En un IPCop recién instalado la partición tiene un uso del 50%.

Espacio libre de las particiones con el IPCop 2 recién instalado

Esto es lo que muestra Gparted con el IPCop recién instalado.

Información que muestra Gparted con IPCop 2 recién instalado

El objetivo es recorrer el inicio de la partición varlog y por lo tanto reducir su tamaño.

Una vez liberado ese espacio, podemos agrandar el tamaño de la partición root.

Cambios en las particiones

Aplicamos los cambios y si todo salió bien, verán los cambios en la partición y que ahora tiene mucho más espacio disponible.

Aplicando los cambios en las particiones

En mi experimento, después de aplicados los cambios no tuve problemas durante el arranque.

Primer arranque de IPCop después de los cambios en las particiones
Primer arranque de IPCop después de los cambios en las particiones

Ahora si, el espacio disponible en la partición de root es mucho mayor.

Aumento en el tamaño libre disponible en la partición de root

En una instalación real ¿Cuanto espacio le debo de asignar a la partición de root? con el tamaño de los discos duros actuales 8 o 16 GB no suena descabellado, creo que son más que suficientes para cualquier eventualidad que pudiera ocurrir.

Enlaces.

Update Accelerator, mejorando las actualizaciones con IPCop

El Update Accelerator es un add-on para IPCop que hace una sencilla pero noble labor acelerar las actualizaciones.

Supongamos que tenemos 30 equipos con una configuración más o menos similar. En lugar de que los 30 equipos descarguen sus actualizaciones individualmente ocupando ancho de banda y recursos, este add-on “reconoce” los archivos descargados como actualizaciones y los almacena en un caché especial en el disco duro, cuando otra computadora necesita el mismo archivo de actualización la sirve desde el caché a la velocidad de la red local.

Administración del caché
Opciones, archivos listos y descargándose.

Desafortunadamente su lista de sitios es limitada y hasta donde se, no hay una opción para actualizarla o agregar sitios, pero los que incluye son de mucha utilidad:

  • Adobe
  • Apple
  • Avast
  • Linux (.deb and .rpm) // ¡Yeeeeeeei!
  • Microsoft // Un mal necesario
  • Symantec // Todavía hay quien lo usa
  • Trend Micro

Actualización 2012-11-03 Gracias a el comentario en Google Plus de Angel Martín que encontró una guía para personalizar los sitios con los que funciona este addon Update Accelerator – Custom Sources Guide ¡Gracias!.

Después de instalarlo es importante habilitarlo en la configuración del Proxy.

Habilitando el addon
Es necesario habilitar el addon en la configuración del proxy

El add-on ofrece opciones para limitar el ancho de banda que se utiliza para descargar las actualizaciones y el espacio que puede llegar a ocupar el caché en el disco duro, realmente no hay que moverle mucho para que funcione bien.

Como anécdota, en la red que administro es curioso escuchar la voz femenina de Avast diciendo rapidamente varias veces — La base de datos de virus ha sido actualizada — casi de manera simultánea 🙂

Enlaces

Calamaris + IPCop

Calamaris es un programa desarrollado en Perl5 que genera reportes con información útil a partir de los archivos de registro (logfiles) de squid.

En mi caso tengo un proxy transparente con IPCop y Calamaris me entrega datos sobre las peticiones y consumo de ancho de banda que hacen mis usuarios. Puedo utilizar esta información para establecer bloqueos de sitios, o administrar mejor el ancho de banda con los delay pools.

Afortunadamente es muy sencillo instalar Calamaris en IPCop ya que cuenta con un add-on. ya instalado podemos generar los reportes en el menú LogsInformes del proxy.

Acabo de sacar el reporte del mes de Junio:

IPCop - Informes del Proxy -

Los dominios que tienen la mayor cantidad de solicitudes son obvios, google y facebook. Pero el que se lleva el premio al consumo de ancho de banda es Youtbe, y eso que ya tomé algunas medidas 🙂