viernes, 23 de diciembre de 2011

el repo con la cache

En mi país, las conexiones son un poco lentas. Aveces conseguir los repos se vuelven MUY difícil. Una alternativa que me resuelve mucho es convertir la cache en un repositorio local. Así puedo dársela a mis amigos luego y que ellos lo usen como repo.

Un script sencillo para estos sería así:

#!/bin/sh
# crea el directorio local
mkdir -p /usr/local/var/repo/
cd /usr/local/var/
# refresca el fichero Packages.gz
touch /usr/local/var/repo/Packages.gz
rm /usr/local/var/repo/Packages.gz
# mueve la cache al repo
mv /var/cache/apt/archives/*.deb /usr/local/var/repo/
# genera la lista de paquetes
dpkg-scanpackages repo/ /dev/null | gzip > repo/Packages.gz
# crea la entrada en APT
echo "deb file:/usr/local/var/ repo/" > /etc/apt/sources.list.d/lazaro.list


Con eso tenemos un repo, aptitude update y tendremos el repo local funcionado. A los amigos le copiamos el repo en /usr/local/var/repo/ y le ponemos en el source.list la linea:
deb copy:/usr/local/var/ repo/
Entonces ya podemos tener la amabilidad de proveerle los paquetes a los colegas sin acceso a Internet.

miércoles, 21 de diciembre de 2011

ver solo nuevos

Con Mutt: Aveces cuando estamos leyendo muchos correos, sobre todo de las listas. Nos encontramos que distinguir los nuevos en correos en un hilo, puede llegar a ser un poco tedioso. Aveces los nuevos correos se mezclan en hilos que quedaron atrás. En otros clientes de correo tenemos la opción de "mostrar solo los sin leer". En mutt podemos hacer algo por el estilo. Creamos un macro que diga:
macro index     n      "l(~N|~O)\n"

Con eso, solo se mostrarán solo los mensajes sin leer. Podemos jugar con esos parámetros y crear una gama de  opciones bien amplia.  Por ejemplo con esto:
macro index     y      "l~d<2d ~d>1d\n"
Mostraremos solamente los mensajes de ayer. Se puede crear ganchos, por ejemplo, para que en las carpetas de lista se muestren solo los nuevos. Al final lo deje así.
macro index n "l(~N|~O)\n"
macro index y "l~d<2d ~d>1d\n"
macro index , "l~A\n"
folder-hook lista "push n"
folder-hook . "push ,"
Donde "n" muestra los nuevos y sin leer. La "y" los de ayer y la "," muestra todo de nuevo y al entrar en la carpeta "lista" veremos solo los nuevos.

lunes, 19 de diciembre de 2011

sarg en debian 6

Sarg, es una herramienta especializada en analizar los log de squid. No usa bases de datos y lo único que hace es generar unos HTML estáticos con el reporte detallado de la navegación. En debian todo es muy fácil.

aptitude install sarg

y editamos su fichero de configuración, es muy probable que este junto a squid.

mc -e  /etc/squid/sarg.conf

Ahi le editamos los parametros y le ponemos el idioma que sea de su agrado. Como no hay finlandés lo pongo en español :-D. Localizen las cadena "language" y vera todas las opciones disponibles.

language Spanish

Si lo desea y es un malvado adminitrador de red, puede asegurarlo con un .httacces. Otra linea últil es una que esta llegando a la linea 140. Esta dice donde saldrán los reportes.

output_dir /var/www/squid-reports

En este caso el valor esta en www pero yo opte por hacerle un virtualhost en otro lugar. Ahi usted puede, si lo desea cambiar el directorio de salida del HTML con el reporte.

No se embulle en mirar configuraciones y cambiarlas a lo loco, sarg es un softweare caprichoso y una configuración aparentemente normal, puede generar un treintena de errores que no indican ni remotamente a la configuración realizada, como por ejemplo, "Error: fichero truncado" Otra que si es segura modificar, es la fecha, cerca de linea 195.

date_format e

Donde e es el formato Europeo, dd/mm/yy, el mas similar al que aprendimos en la escuela. Por ultimo, una observación del fichero /etc/squid/sarg.users Ahí podemos poner nuestro usuario, todo los usuarios ahí, NO saldrán en el reporte. Mi usuario, es el que uso para descargar los antivirus y siempre acabo siendo el peor y mas inconsciente en cuanto a descargas.

De la misma forma hay un sarg.hosts que controla los sitios o host ignorados. Por ejemplo, yimg.com para no tener que ver las imágenes del yahoo! en el reporte.

Por ultimo ya estamos listos, sarg se ejecutara de una manera muy discreta durante un rato laaaaaargo. Al cabo del rato, terminara de ejecutarse, aparentemente no hizo nada, pues alégrese, el solo muestra los errores; MUY ÚTIL para el cron. Valla al directorio de la variable output_dir o a su vhost con una navegador.


Nota:

Si lo desea generar una tarea de cron que corra sarg y luego corra: "sarg -e direccion@dominio.tld" para crear un reporte por correo. Cuando mire el pertinente reporte vera que solo genero el reporte de este mes o
de este dia, segun lo tenga el fichero /var/log/squid/access.log yo roto los logs semanales. En caso de que usted tenga esta buena costumbre, le recomiendo que la primera vez corra sarg de una manera especial.

Valla al fichero de configuracion y localize la variable "access_log" esta cerca de la linea 35. Ahí configure TEMPORALMENTE un fichero.

access_log /tmp/reporte.log

Ahora, crearemos un concenso de todo el logueo. En mi caso yo roto los logs en el mismo directorio, asique tengo algo así.

ls /var/log/squid/
access.log.1 access.log.2 access.log.3 access.log.4
access.log.5 access.log.6 access.log.7 access.log.8

Entonces lo juntamos todo.

cat /var/log/squid/access.* > /tmp/reporte.log

Valla por un cafe y demorece segun el tamanho de los logs. Cuando vuelva, si ya a terminado la tarea, corra sarg con esa "configuración especial". Al terminar, vera que se genero un reporte bien completo. Le recomiendo que corra sarg a la hora de almuerzo, preferiblemtne antes de almorzar. Para aprovechar el tiempo. Si hay pescado, mejor tadovaia, asi se demora mas. Una vez con la barriga llena, probablemente ya sarg halla terminado. Valla a la configuracion y restablezca la linea a la normalidad.

access_log /var/log/squid/access.log

Entonces, valla al reporte y vea si es de su argado. Ya solo le faltaría programar el cron. Yo roto los logs una vez a la semana pero emito un reporte diario con sarg, uno para los html y otro el martes y el jueves con sarg -e por correo.

viernes, 25 de noviembre de 2011

bitlbee

 Bitlbee es un software Holandés que funciona como una pasarela IRC para distintos protocolos.  Eso quiere decir que a través de un cliente IRC podemos usar twitter, jabber, yahoo etc... En debian las cosas son muy fáciles.
aptitude install bitlbee
Si usas proxy. Localiza la linea que está en /etc/bitlbee/bitlbee.conf:. Se ve mas o menos asi: 
Proxy = http://usuario:password@proxy:8080
Reiniciamos bitlbee y lo contacatamos con un cliente IRC cualquiera. Bitlbee es un "pseudoservidor" IRC asi conectandonos a nuestro puerto local 6667 ya lo tenemos en linea.


En el momento que nos conectamos. Caeremos a un canal llamado &bitlbee. Este canal tiene un usuario llamado root. Es el que responde a los comando. El símbolo "&" delante del canal es correcto porque representa un canal privado; tenga en cuenta que bitlbee no es un servidor IRC. Para introducir las ordenes solo tenemos que hablar en el canal. El software está muy bien documentado.

help

Así veremos el menú de ayuda simple. Mas explicito sería:

help quickstart2

Pero bueno, empecemos con lo importante. Agreguemos una cuenta de gtalk usando las facilidades del jabber. Eso lo hacemos así:

account add jabber fulano@gmail.com password talk.google.com

Donde "password" se sustituye por tu contraseña de gmail y "fulano" por tu usuario. De esta forma estaremos entrando al servidor xmpp de gmail que es talk.google.com


Así veras como tus amigos se unen al canal. Para hablar con el usuario abres una ventana querry como si fuera IRC.


Twitter:


También podemos hacer esto con twitter. Bitlbee soporta MSN, twitter, yahoo, jabber, y otros. mejor vea

help account add

Pero volviendo al tema. Veamos como conectamos en twitter que es un paso mas complejo por el tema de la autorización. Empecemos por agregar la cuenta.

account add twitter usuario password

Aquí es lo mismo. Sustituimos por nuestros datos y veremos una ventana con una URL hacia una dirección en twitter que nos mostrara un número. Ese número se lo escribimos en la caja de texto y lo mandamos como si lo dijéramos en el canal. Entonces si lo hiciste bien, veras como un nuevo canal se abre y ahí está lo que sigues. Si quieres seguir a alguien solo be al canal &bitlbee y escribe.

add ID BitlBee

Donde ID es el numero de cuenta de twitter. Para saber eso usa:

account list

y BitlBee sería lo quieres seguir. Para dejar de seguir es muy parecido.

rem Fulano

y te dirá que Fulano se fue del canal. Desde ese momento dejaste de seguir a Fulano.




caralibro facebook


Los servidores de facebook suelen tener un mediocre servidor XMPP. Lo único especial que necesitamos un nombre de usuario de facebook. http://www.facebook.com/username


Con el nombre de usuario de facebook, lo demás esta casi hecho.


account add jabber nombre.usaurio@chat.facebook.com tupassword
account fb set nick_source full_name


Donde fb es la ide de la cuenta de facebook. Esto se hace porque los usuarios de facebook son numéricos y con esa segunda configuración se usara el nombre real del usuario como nick. Finalmente arrancamos.


account on




Servidores públicos de bitlbee


Si no quiere tomarse el trabajo de instalarlo; en la dirección im.bitlbee.org hay un servidor público de bitlbee y en testing.bitlbee.org está una versión de prueba bastante estable y nueva.

La versión 3 de bitlbee permite tener un canal para cada protocolo. De forma tal que usando:

 /join &jabber

Veras todos tus amigos de jabber y podrás confuigurar de manera individual ese canal. Por ejemplo si quieres ver a los que están desconectados, escribis en el canal:

chan set show_users offline

Así de simple:



lunes, 21 de noviembre de 2011

busybox

Busybox, como mismo ellos lo dicen "The Swiss Army Knife of Embedded Linux" La navaja suiza de los sistemas linux. Realmente ese tipo tiene casi todo lo que necesitamos.

 Veamos un ejemplo simple:


busybox ls
Excato, es un comand list. Pero eso no lo es todo, veamos:
busybox ifconfig
Asi mismo! un ifconfig; pero hasta esto:
busybox vi fichero.txt
Sublime! un Vi minimalista. Pero se trata de hacer mucho con poco, miren esto otro:
busybox httpd -h
Para ver los procesos tenemos un top
bsybox top
No tienes syslog? Pues hasta eso tiene busybox; syslogd y klogd. En fin, son miles, mejor vean
busybox --help

Pero que fuerte! tener que teclea "busybox fulanito" cada vez. Bueno nada, si queremos "sacar" un aplet, vamos al directorio de busybox, en mi caso bin y le creamos el link de esta manera
ln -s /bin/busybox wget
Remplace "wget" por el nombre de la applet que quiera extraer. Fácil verdad?

EN ese link puede ver la lista de todo lo que incluye:

miércoles, 9 de noviembre de 2011

Crono y squid

El popularísimo servidor proxy squid, puede ser usado para restringir páginas según el horario. En mi caso, el director de mi empresa, no desea que al gente entre a cara libro facebook antes de almuerzo y así aumentar el rendimiento del horario verdaderamente laboral.


squid es capaz de eso y mucho mas. Para eso editamos su configuración y creamos una ACL.

acl horario time MTWHF 06:00-12:00
acl diferidos url_regex -i "/etc/squid/diferidos"
http_access deny horario diferidos
De esta forma. El fichero /etc/squid/diferidos contiene las URL que no podrán ser accedidas desde las 6 de la mañana a las 12 de día. Simple verdad?

lunes, 7 de noviembre de 2011

sputnik

Hay una wiki, escrita en Lua , llamada sputnik. Realmente no es la gran cosa ni mucho menos pero es fácil de instalar y su procedimiento es muy curioso. Originalmente esta pensada para que funciona con un servidor, también escrito en Lua llamado xavante, pero no es el caso. Lo único bueno de sputnik es que es muy simple y no usa un gran motor de base de datos. Es decir, puede usarlo, pero no es indispensable para su funcionamiento. El presente manual tiene como objetivo, entretenerse un poco e instalar una cosa potencialmente inútil.

lunes, 31 de octubre de 2011

mutt, terminal_title y nuevos correos

no hay cliente de correo como mutt. Ya sea mejor o peor que mutt. Eso muy discutible cualquier cosa que se diga pero mutt es un buen MUA. A mi siempre me a parecido una flojera no poder ver en el título del terminal cuantos correos nuevos tengo. Hoy finalmente resolví ese problemilla viendo unos archivos de no se que lista lista.

Ponemos en .muttrc lo siguiente:
set xterm_set_titles
set xterm_title="Mutt %f -- Unread: %n 
...y con esa bobería veras en la pestaña de la terminal la cantidad de correos sin leer, en caso de gnome-terminal, no se con otras terminales, agradecería comentarios al respecto.

jueves, 27 de octubre de 2011

pflogsumm

Nada como una sumário bien táctico y bien global para saber en que estado está algo. Postfix es algo serio y tiene herramientas para generar sumarios serios. Realmente hay muchas que generan gráfico pero esta puede usarse para que nos mande un correo diario con un resumen de como está. Si usa un postfix sin ldap o MySQL, tiene las ventajas de procmail y la sencillez a su favor.


En debian, instalamos pflogsumm


# aptitude install pflogsumm


y creamos este script sencillo que yo le llamo sumario.sh (por ponerle un nombre). Al script le ponemos lo siguiente. 


/usr/sbin/pflogsumm -h 9 -d today < /var/log/mail.log \
|formail -I "From: Mailserver <root@localhost>" -I "To: postmaster@localhost" -I "Subject: pflogsumm" \
|procmail -d tu_usuario_de_correo_aqui


Mucho ojo en la tercera linea, ahí debe poner su nombre de usuario, es decir que que tiene su correo delante de la "@".


Ese script lo ponemos en un cron diario, yo lo agrego a /etc/cron.daily/standard y listo. Cada mañana sabremos si somos un día mas sin openrelay pero ademas. Tendremos al detalle quienes son lo mas consumidores de nuestro servicio quien envía mas correos, quien recibe mas etc... todo un top-5 desglosado.

empathy detrás de un proxy

En Debian 6:


Al parecer, empathy no pincha del todo bien en lo que a proxy refiere. La matraca del asunto radica en que debemos usar la librería purple de pidgin (o mejor pidgin completo) para conectarnos detrás de un proxy.


Configuramos el proxy de gnome y cambiamos lo siguientes paquetes:


Eliminar  telepathy-gabble telepathy-butterfly telepathy-salut


# aptitude purge telepathy-gabble telepathy-butterfly telepathy-salut

Entonces instalamos el toque mágico.

# aptitude install telepathy-haze

Y reiniciamos gnome, o mejor la PC completa.