Y por su continuada capacidad de aumentar la productividad de todo el equipo, el premio de empleado del mes, es otra vez para …
La máquina de café
Te queremos <3
Mi Blog personal: GNU/Linux, Programación, Tecnología, Música, Mi… ¿Vida? y algunas cosas más
Y por su continuada capacidad de aumentar la productividad de todo el equipo, el premio de empleado del mes, es otra vez para …
La máquina de café
Te queremos <3
El paquete estandar de Squid 3 en los repositorios de Debian Squeeze, y en releases anteriores, no cuenta con soporte integrado para usar OpenSSL, ya que por cuestiones compatibilidad de licencias de cada uno no viene compilado.
Podemos compilar nuestra propia versión del paquete, previa comprobación que tengamos en nuestro /etc/apt/sources.list las lineas con los repositorios de código fuente (deb-src)
--enable-ssl \ --with-open-ssl=/etc/ssl/openssl.cnf file \
Dejo un punto de partida para que empiecen a googlear como configurar el proxy con soporte ssl
https_port 3128 transparent cert=/etc/squid3/ssl/servidor.crt key=/etc/squid3/ssl/servidor.key
Es cierto que monit puede hacer algunas pruebas básicas sobre una conexión TCP, aunque se le puede dar una vuelta de rosca. Todo esto tiene su propio capítulo en el manual, aunque podemos dar algunos ejemplos.
Además de TCP, monit También puede utilizar UDP y enviar solicitudes de ping. Aquí, por ejemplo, cómo se puede probar un servidor de Quake Arena a través de UDP usando Monit:
check host quake3 with address 192.168.10.20
if failed icmp type echo
for 3,5 cycles
then alert
if failed port 27970 type udp
send "\0xFF\0xFF\0xFF\0xFFgetstatus"
expect "sv_floodProtect|sv_maxPing"
then alert
En este ejemplo monit primero hace ping al servidor para ver si es esta arriba. Si no, monit es lo suficientemente inteligente como para no molestarse en hacer otras pruebas, ya que asume que el servidor está caído. Esto nos ahorrará alertas innecesarias. Las características “send” y expect” son muy cómodas y como se puede ver, permiten enviar hasta paquetes personalizados. El parámetro “expect” soporta expresiones regulares cuando se esta comprobando la respuesta desde el servidor.
Otro punto a destacar es que monit puede probar páginas específicas de un servidor web, e incluso puede comprobar el MD5 de un archivo / página. En este ejemplo, monit es usado para bajar un archivo de la web del kernel de Linux y comprobar su suma MD5
check host kernel with address www.kernel.org
if failed port 80 protocol http
and request "/pub/linux/kernel/v2.6/linux-2.6.39.tar.bz2"
with checksum f9d26b8393736b5dfad837bb13780786
then alert
Un uso útil del anterior test, puede ser si permitimos descargas de paquetes de software u otro tipo de archivos, ya que en el peor caso de ataque, podemos comprobar el estado de la integridad de los mismos.
También es posible utilizar expresiones regulares para revisar el contenido de una página descargada de un servidor web, mas o menos como hacer un “grep” del resultado:
check host noticias_guerra with address clarin.com
if failed url http://www.clarin.com/
and content != "guerra"
then alert
Un ejemplo medio exagerado, pero creo que se entiende bastante bien. El uso de la herramiente depende de las necesidades de cada uno, o como dicen por ahí: “la necesidad tiene cara de hereje”

Conversando hace unos días con un conocido que se había operado recientemente de un problema que aqueja mi vista también, nos dimos cuenta de nuestra imposibilidad de ver las tan de moda películas en 3D. ¿El problema? Estrabismo, del cual me operé hace bastante tiempo (a saber, tenía 6 años).
Para que entiendan por donde viene el asunto, cito a WikiPedia
El estrabismo es la desviación del alineamiento de un ojo en relación al otro. Implica la falta de coordinación entre los músculos oculares. Esto impide fijar la mirada de ambos ojos al mismo punto del espacio, lo que ocasiona una visión binocular incorrecta que puede afectar adversamente a la percepción de la profundidad.
Hace varías peliculas en 3D que salía con un sabor amargo, como que no había disfrutado los efectos o habían sido pésimos. ¿Y ahora me vengo a enterar? Parece ser que a una edad temprana el cerebro se acostumbra a utilizar únicamente un ojo, el otro sólo aporta profundidad. La región del cerebro de dicho ojo (siempre hay uno preferente) hace que el otro ojo se vuelva el ojo vago. Entonces, si mi teoría no falla (deberían probarla si alguien lee esto) si te tapas un ojo mientras estas en el cine (con estos anteojitos que todo el mundo se saca fotos), deberías ver las imágenes tal cual las veo yo, es decir, aburridas
Parece ser que tampoco estoy solo en el mundo, ya que entre el 8% y el 12% de los espectadores no es capaz de apreciar el efecto de las tres dimensiones o lo percibe de forma inapreciable. Sarah Jessica Parker, Eros Ramazzotti, Penélope Cruz, y hasta el mismisimo Johny Deep tienen o tuvieron estrabismo u otro defecto visual que les impediría lo mismo que a mi, disfrutar de algún que otro efecto generado por computadora
Por ahora sigo teniendo una buena excusa para ver cine desde la comodidad de mi casa. Viene a mi mente la frase: ”If you can’t make it good make it 3D.“

Por primera vez y luego de mucho tiempo de usarlo, tuve una actualización errónea de un blog con WordPress, el mismo rezaba
El mismo se soluciona fácilmente eliminando el archivo .maintenance que se encuentra en la raíz de nuestra instalación de WordPress. Para aquellos que usen algún cliente como FileZilla, tengan en cuenta activar la vista de archivos ocultos
Uno de los usos más útiles que tenemos con Squid, además de usarlo como caché es el de poder administrar el consumo de ancho de banda de los clientes que se conectan al mismo.
Para poder usar los Delay Pools debemos tener configuradas ACL’s, tanto sea por subred, grupo de equipos, destino, o lo que necesitamos controlar
Existen 3 tipos de “delay pools“. Los valores de ancho de banda son dos, se expresan en bits, e indican el número promedio de bits por segundo y un límite istantáneo que no se puede superar.
El tipo 1 te permite definir un límite de ancho de banda global, o sea que todos las solicitudes que entran en ese pool estarán compartiendo este ancho de bando. Este tipo te permite decir, por ejemplo “Hay un ancho de banda disponible de 128kbps para bajar archivos desde la red A”
El tipo 2 te permite definir un ancho de banda global y un límite por cada usuario. Este tipo te permite decir, por ejemplo, “Hay un ancho de banda disponible de 128kbps para bajar archivos desde la red A pero cada usuario que acceda no podrá usar más de 32kbps”.
El tipo 3 te permite definir un ancho de banda global, un límite por cada subred clase C (/24), y un límite por cada usuario accediendo. Este tipo te permite decir, por ejemplo “Hay un ancho de banda disponible de 256kbps para bajar archivos, pero cada subred clase C no puede usar más de 128kbps, y cada usuario individual no puede usar más de 32kbps”.
# Se indica el número TOTAL de delay_pools definidios en el sistema delay_pools 1 # Definimos un delay pool (número 1) de Clase 2 # (es decir, con limite global, y para cada usuario): delay_class 1 2 # Definimos los parámetros del delay_pool número 1 delay_parameters 1 128000/128000 32000/56000
Esto indica que el Delay Pool número 1 tiene un límite global de 128kbps (promedio e instantáneo), cada usuario accediendo dentro del pool tiene un límite promedio de 32kbps, pero puede bajarse objetos pequeños del caché a 56kbps.
Como explicaba más arriba, también tenemos que definir algún ACL para identificar a que objetos o usuarios afecta el pool que acabamos de definir:
acl mired src 10.0.10.0/255.255.255.0 delay_access 1 allow mired delay_access 1 deny all
Podemos usarlo para limitar ancho de banda para destinos especificos
acl destinos dstdomain .youtube.com .facebook.com delay_access 1 allow destinos delay_access 1 deny all
La necesidad tiene cara de hereje, y si en algún momento de nuestras vidas necesitamos desde PHP detectar con que tipo y versión de navegador estan accediendo nuestros usuarios, esta clase puede ser de mucha utilidad
Browser.php es una clase PHP que se encarga de detectar la mayoría de los navegadores de escritorio y móviles. El resultado puede ser utilizado para mostrar diferente contenido a los usuarios dependiendo del navegador que esten usando (o no mostrar nada, en caso de IE 6
), o simplemente loggearlos con fines más estadísticos
Ejemplo de uso
$browser = new Browser();
if( $browser->getBrowser() == Browser::BROWSER_FIREFOX && $browser->getVersion() >= 2 ) {
echo 'Estas usando Firefox 2 o superior';
}
Enlace: Browser.php
PV (pipe viewer) es un comando que permite al usuario ver el progreso de avance de datos a través de un pipe, brindando información como el tiempo transcurrido, porcentaje completado (con su respectiva barra de progreso
), transferencia de datos actual y tiempo estimado de finalización
Para usar este comando, lo hacemos mediante un pipe entre dos procesos, lee los datos desde la entrada estandar (STDIN), salen por salida estandar (STDOUT) y el progreso de la lectura se muestre por la salida de errores (STDERR)
Ejemplo: para ver el progreso de restauración de un backup de MySQL desde la consola, podríamos usarlo así
# pv backup_mysql.sql | mysql -uroot -p 96.8MB 0:00:17 [5.51MB/s] [==> ] 11% ETA 0:02:10
Enlace: Pipe Viewer (PV)
Comentarios recientes