Haciendo puentes SSH entre distintos hosts con netcat

Por si en algún momento les toca hacer SSH a una máquina, para hacer SSH a otra máquina, para hacer SSH a una máquina final, como me toca hacer ahora, donde los números de puerto o los nombres de usuario son distintos, la utilización de ssh con netcat propuesta en este artículo es de suma utilidad:

esquemassh

Editar (o crear, si no existiera) el archivo ~/.ssh/config e incorporar las siguientes lineas (reemplazando los nombres de host donde correspondan):

Host buenvecino
    User mauro
    Hostname buenvecino.domain.net
    Port 1022

Host www
    User bitnegro
    Hostname www.example.net
    ProxyCommand ssh -q buenvecino nc -q0 www.example.net 4020

Host destino
    User bitnegro
    ProxyCommand ssh -q www nc -q0 192.168.57.215 22

Y con esto definido, es posible hacer directamente

$ ssh destino
mauro@buenvecino.domain.net's password:
bitnegro@www.example.net's password:
bitnegro@192.168.57.215's password:

Last login: Fri May 16 20:31:01 2014 from www.example.net
bitnegro@destino:~$ echo Success!!

Pero la mayor utilidad de todo esto, la crème de la crème, es que es posible hacer SCP pasando archivos de un lado a otro sin tener que hacer las copias intermedias, por lo que esta alternativa de configuración es, a mi criterio, un go-la-zo.

Créditos al autor original, al que le debo una docena de facturas.

FLISOL 2014 – Festival Latinoamericano de Instalación de Software Libre

El grupo de usuarios de Software Libre de la Universidad de Luján –UNLUX- invita a toda la comunidad a participar de la edición 2014 del FLISOL – Festival Latinoamericano de Instalación de Software Libre en la ciudad de Luján, a llevarse a cabo el día sábado 26 de abril, en concordancia con numerosas ciudades de Argentina y el continente. Las actividades se desarrollaran en la Sede Central de la Universidad Nacional de Luján (UNLu) a partir de las 13:00 hs.

Al igual que en ediciones anteriores, los integrantes del grupo instalarán Software Libre (GNU/Linux, Firefox, etc.) de forma gratuita y totalmente legal en los equipos informáticos que los asistentes acerquen al encuentro. Durante la ejecución del mismo se ofrecerán charlas informativas y técnicas sobre diferentes aspectos relacionados con el Software Libre.

Los invitamos a participar acercando sus equipos tanto para la instalación de Software Libre, la resolución de problemas sobre instalaciones existentes o simplemente para participar de una jornada distinta para intercambiar experiencias sobre Software Libre o compartir una tarde en un ambiente agradable.

Sobre el FLISOL

El Festival Latinoamericano de Instalación de Software Libre es un evento que se viene desarrollando de forma anual desde hace casi una década, donde se promueve el trabajo colaborativo ayudando a personas a conocer el mundo del Software Libre.

Está organizado por varios grupos de usuarios de los países involucrados congregados alrededor de esta iniciativa que reúne participantes de Argentina, Bolivia, Brasil, Chile, Colombia, Cuba, Ecuador, El Salvador, Guatemala, Honduras, México, Nicaragua, Panamá, Paraguay, Perú, Uruguay y Venezuela, entre otros. En Argentina ya está confirmada la realización de FLISOL en distintas ciudades.

El encuentro está dirigido a todas las personas que desean conocer más sobre software libre, instalarlo y usar sus computadoras preservando sus libertades, en condiciones de legalidad y sin estar preocupados por virus y otros problemas comunes del software privativo. Durante la jornada, se realizan instalaciones en forma totalmente gratuita, mientras que en paralelo se ofrecen diversas charlas de divulgación para promover el uso y la filosofía del Software Libre.

Cronograma de Charlas

El cronograma de charlas se está actualizando constantemente. Revisa los sitios flisol.info/FLISOL2014/Argentina/Lujanwww.unlux.com.ar para estar al tanto de las novedades.

Inscripción

Llenando este formulario, nos ayudas a estimar la asistencia de público y preparar mejor los espacios disponibles:
http://eventosimple.net/event/sp/publication/flisol-unlu/register

Sin embargo, la entrada es libre y gratuita, no es necesario registrarse para asistir a las charlas. Si pensás traer un equipo para instalar o configurar, por favor registrate y lee detenidamente las aclaraciones y datos al respecto.

Sobre el UNLUX

El UNLUX es un grupo de usuarios y entusiastas del Software Libre, que existe desde el 2005 y realiza sus actividades en el marco de la Universidad Nacional de Luján. Participa en el FLISOL desde el 2006, instalando y difundiendo diferentes ventajas de usar el Software Libre en el ámbito Educativo, Social, Técnico, Profesional y Personal.

Para conocer las vías de comunicación, podés empezar por www.unlux.com.ar y suscribirte a la lista de correo y el canal IRC.

En agenda

Traducción completa del manual del administrador de Debian

Raphaël Hertzog anunció la disponibilidad de las traducciones completas en Español y Francés del libro “The Debian Administrator’s Handbook, Debian Wheezy from Discovery to Mastery” que escribiera en co-autoría con Roland Mas. Al día de hoy es quizás la referencia más completa, actualizada -y correcta, además- del sistema operativo Debian en su versión 7 (Wheezy).

La traducción en español fue llevada a cabo por Matías Bellone, Adrià García-Alzórriz, Rene Saavedra y otros colaboradores.

El libro puede adquirirse en papel, en digital, consultarse gratuitamente en línea o leerse localmente instalando el paquete debian-handbook (en este último caso, en inglés).

Kernels nuevos en Debian Stable

Vengo siguiendo bastante de cerca la publicación de versiones estables del kernel de Linux. A fines de diagnóstico suelo compilar la última versión disponible e instalarla en varias de las máquinas sobre las que tengo acceso. Como quizás le sirva a más de uno, acá dejo disponible la última versión que compilé en casa.
Todas estas son directamente instalables sobre Debian GNU/Linux Wheezy 7.0 de 64 bits sin quilombo de dependencias. Cada directorio contiene los paquetes con la imagen del kernel, los encabezados, el firmware y la configuración utilizada en la compilación.

Si les interesa saber qué hay de nuevo, les dejo el clásico resumen hecho por la gente de KernelNewbies: Linux 4.0.

Actualización 2015: en función a la reciente publicación de la nueva versión estable Debian GNU/Linux 8.0 Jessie, y tras haber migrado los equipos que utilizo habitualmente, mantendré a los paquetes aquí publicados brevemente como históricos y luego -eventualmente- desaparecerán del repositorio. Para los que estén interesados en mantenerse al día con las últimas versiones, encontrarán nuevos paquetes del núcleo en el post dedicado a Kernels nuevos en Debian Jessie.

 

Instalación de ipfw/dummynet en Debian Wheezy

¿dummynet? ¿qué es dummynet?

Según su sitio web: “dummynet es una herramienta de simulación de redes en vivo diseñada originalmente para probar protocolos de red, y que desde entonces se utiliza para una variedad de aplicaciones entre las que se incluye el manejo de ancho de banda. Simula/impone limitaciones de encolado y ancho de banda, retrasos, pérdida de paquetes y otros efectos. Implementa también varios algoritmos de planificación. dummynet puede utilizarse en el mismo equipo donde se ejecuta la aplicación a probar o en cajas externas que actúan como enrutadores o puentes.

La selección de tráfico se realiza mediante el firewall ipfw, que es la interfaz de usuario principal para dummynet. ipfw permite seleccionar con precisión el tráfico y la dirección a trabajar, simplificando su configuración y uso.”

Para más información los dirijo al completo artículo Dummynet Revisited de los autores Marta Carbone y Luigi Rizzo.

Procedimiento

Con la colaboración de varios compañeros de trabajo surgió la siguiente receta para construirlo en Debian Wheezy (en este caso para amd64, pero es similar en i386). No es la única ni la mejor manera, pero es una que funciona. Si alguno encuentra una mejor, será bienvenida.

  1. Bajar la versión de ipfw compatible con kernels 3.x (20130607 o superior) y descomprimirla
    wget http://info.iet.unipi.it/~luigi/doc/20130607-ipfw3.tgz
    tar xvzf 20130607-ipfw3.tgz
  2. Instalar los paquetes necesarios para Debian
    apt-get install build-essential linux-headers-`uname -r` linux-source-3.2
  3. Desempaquetar el código fuente completo del kernel linux. Esto requiere al menos 700 MB de espacio en disco libres, así que estén preparados.
    cd /usr/src
    tar xvjf linux-source-3.2.tar.bz2
  4. Copiar la configuración del kernel que se está ejecutando y las versiones de los módulos instalados
    cd /usr/src/linux-source-3.2
    cp -v /boot/config-`uname -r` .config
    cp -v /usr/src/linux-headers-`uname -r`/Module.symvers .
  5. Preparar el entorno de compilación del kernel
    cd /usr/src/linux-source-3.2
    make prepare
    make scripts
  6. Compilar ipfw indicando la ruta a los fuentes del kernel
    cd /ruta/a/ipfw3-2012
    make KSRC=/usr/src/linux-source-3.2
  7. Si no tiró errores, probar la carga y descarga del modulo ipfw_mod
    insmod kipfw-mod/ipfw_mod.ko
    dmesg
    rmmod ipfw_mod
  8. (Opcional) Instalar los binarios de ipfw y el modulo del kernel
    mkdir /lib/modules/`uname -r`/updates
    cp -v kipfw-mod/ipfw_mod.ko /lib/modules/`uname -r`/updates
    depmod
    cp -v ipfw/ipfw /usr/local/sbin
    chmod +x /usr/local/sbin/ipfw
  9. (Opcional) Verificar la instalación del modulo y agregarlo para cada inicio del equipo
    modprobe ipfw_mod
    dmesg
    echo ipfw_mod >> /etc/modules
  10. Listo!

Dejo un breve script para los haraganes que, como yo, prefieren ejecutar todo el procedimiento de un saque: build-ipfw.sh

Suerte y saludos!

SUBE no quiere Ubuntu(s)

No hace mucho comentaba en este mismo blog sobre mis dificultades para hallar el listado de viajes realizados en el sistema web de la tarjeta SUBE. Hoy volvemos a tocar este tema a partir de lo descubierto por un gran amigo.

Para (volverlos a) poner en contexto la tarjeta SUBE, o más bien el Sistema Único de Boleto Electrónico, es: “Un servicio para abonar con una sola tarjeta viajes en colectivos, subtes y trenes adheridos, en la Región Metropolitana de Buenos Aires.

Un excelente profesional, con el que tengo el gusto de compartir el trabajo diario, me remitió el siguiente correo:

Una curiosidad. Estando en casa, quise entrar en la página de la tarjeta SUBE para ver los viajes realizados (https://gestiones.sube.gob.ar/bienvenida.aspx), y me encontré con este mensaje de error:

sin-sube-en-ubuntu
No le presté demasiada atención en ese momento (será problema del sitio, me dije a mí mismo). Al día siguiente intenté nuevamente, con idéntico resultado. Pero oh sorpresa, con otro navegador (Chromium en vez de Firefox) sí pude ingresar.

Probé cambiarle el useragent al Firefox ¡y también pude ingresar!
Y luego de un rato llegué a la conclusión de que lo que no le gusta al sitio es la palabra Ubuntu en el useragent del Firefox: quitándola, o reemplazándola por cualquier cosa como Windows, Suse, Debian o incluso la palabra ‘basura’, entra sin dramas.

Y corroboré ese hallazgo cambiando el useragent de chromium, agregándole la palabra Ubuntu. Ejecutando desde la línea de comandos $ chrome –user-agent=”Mozilla/5.0 (X11; Ubuntu; U; Linux i686; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.619.0 Safari/534.16″ tampoco me dejó ingresar.

No contento con lo encontrado, se tomó unos minutos para seguir investigando:

Descubrí algo más. No es la palabra Ubuntu de por sí la que dispara el filtro, ya que lanzando el navegador con –user-agent=”Ubuntu” también deja ingresar a la página para realizar gestiones.

La cuestión parece ser “X11; Ubuntu”

Si uno suprime el X11, o si los cambia de lugar (por ej. “Ubuntu; X11”), también entra.

Ahora bien, ¿me puede explicar alguien qué tiene de malo Ubuntu como para que restrinjan ese sistema operativo en la plataforma del sistema SUBE? Como hemos visto, el error sólo ocurre con Ubuntu, con Debian funciona correctamente.

Identificar sockets en uso en 3.. 2.. 1..

Normalmente uso

# netstat -tnap

pero debo decir que

# lsof -i -P +c 0 +M

resulta sumamente útil también.

Visto en alias.sh

Trivia de enlaces en Linux: ls -l

En una charla de mate con un amigo dimos con las siguientes cuestiones, que pudimos dilucidar luego de pensar un buen rato (y sin salir a buscar en google o la wikipedia).

Dado el siguiente árbol y posterior listado de directorio:

.
├── bin
├── examples
├── pydasm
│   └── build
│       ├── lib.linux-x86_64-2.6
│       └── temp.linux-x86_64-2.6
└── rbdasm

mauro@stereo:/usr/local/src/libdasm-1.5$ ls -la
total 900
drwxr-xr-x 6 mauro mauro   4096 dic 15  2011 .
drwxrwsr-x 5 root  staff   4096 nov 29 12:04 ..
drwxr-xr-x 2 mauro mauro   4096 ene  9  2006 bin
drwxr-xr-x 2 mauro mauro   4096 dic 15  2011 examples
-rw-r--r-- 1 mauro mauro   5558 dic 27  2007 HISTORY.txt
-rw-r--r-- 1 mauro mauro 163894 dic 15  2011 libdasm.a
-rw-r--r-- 1 mauro mauro  31201 feb 14  2006 libdasm.c
-rw-r--r-- 1 mauro mauro    344 ene  9  2006 libdasm.def
-rw-r--r-- 1 mauro mauro  17199 feb 21  2006 libdasm.h
-rw-r--r-- 1 mauro mauro 162312 dic 15  2011 libdasm.o
-rwxr-xr-x 1 mauro mauro 161338 dic 15  2011 libdasm.so
-rw-r--r-- 1 mauro mauro    785 feb 21  2006 LIB.txt
-rw-r--r-- 1 mauro mauro    605 ene  9  2006 Makefile
-rw-r--r-- 1 mauro mauro    183 ene  9  2006 Makefile.msvc
-rw-r--r-- 1 mauro mauro 283110 feb 21  2006 opcode_tables.h
drwxr-xr-x 3 mauro mauro   4096 dic 15  2011 pydasm
drwxr-xr-x 2 mauro mauro   4096 ene 11  2006 rbdasm
-rw-r--r-- 1 mauro mauro  14460 feb 21  2006 README.txt
-rw-r--r-- 1 mauro mauro    161 ene  9  2006 TODO.txt

Con el único fin de molestarles, acá van unas preguntas:

  1. ¿Qué representan los números de la segunda columna del listado?
  2. ¿Podría un archivo tener un número mayor a 1?
  3. ¿Por qué las entradas . (punto), .. (punto-punto) y pydasm (entre otras) tienen distintos números?
  4. ¿Mediante qué llamada a sistema (función, no comando) puede obtenerse ese valor?
  5. ¿Cuál es el campo relevante en la estructura obtenida por la llamada del punto anterior?

Se los dejo como tarea y en quince días vemos que sale…

Viendo el streaming de TN, sin navegador web

Lamentablemente no pude estar en Capital para el recital que diera Pedro Aznar recordando al eterno flaco Luis Alberto Spinetta, me tuve que conformar con intentar verlo por algún medio de comunicación, y considerando que en casa no está andando la TV por cable, suelo recurrir a ver los especiales rockeros de TN por la web.

Pero a mi juicio los reproductores basados en Flash son un atropello al navegante cuando existen muy buenos reproductores de video; tiene que haber una forma de ver el flujo de video en tiempo real, pasando por fuera del navegador.

Afortunadamente el usuario LeaN946 en el foro de TDT Latinoamérica nos brinda la respuesta adecuada: utilizando rtmpdump con algunos parámetros mágicos:

$ rtmpdump -r rtmp://stream.tn.com.ar/live/tn2 \
    -a live/tn2 -y tnlive3 \
    -W http://tn.com.ar/sites/all/themes/dozer/swf/cplayer/player.swf \
    -p http://tn.com.ar/envivo/especiales | cvlc -

o bien

$ rtmpdump -r rtmp://stream.tn.com.ar/live \
    -a live -y tnhd1 \
    -W http://tn.com.ar/sites/all/themes/dozer/swf/cplayer/player.swf \
    -p http://tn.com.ar/envivo/24hs | cvlc -

es posible arribar a esto:

El audio deja un poco que desear 🙁 pero la imagen no está mal, no?

FLISOL 2012 – Festival Latinoamericano de Instalación de Software Libre

Como ya viene siendo una sana costumbre, el Grupo de Usuarios de Software Libre de la Universidad Nacional de Luján está organizando la edición local de la 8va edición del Festival Latinoamericano de Instalación de Software Libre (FLISoL), el evento simultáneo de difusión de Software Libre más grande en Latinoamérica.

El FLISOL se realiza desde el año 2005 y su principal objetivo es promover el uso del software libre, dando a conocer al público en general su filosofía, alcances, avances y desarrollo. Para tal fin, las diversas comunidades locales de software libre (en cada país, en cada ciudad/localidad), organizan simultáneamente eventos en los que se instala, de manera gratuita y totalmente legal, software libre en las computadoras que llevan los asistentes. Además, en forma paralela, se ofrecen charlas, ponencias y talleres, sobre temáticas locales, nacionales y latinoamericanas en torno al Software Libre, en toda su gama de expresiones: artística, académica, empresarial y social.

El FLISOL 2012 se llevará a cabo el sábado 28 de abril. Por quinta? sexta? séptima? vez, el UNLUX organizara la actividad en la ciudad de Luján. La jornada está dirigida a todo público, sin importar el nivel de conocimientos técnicos que se posea, y comprenderá la instalación de software libre en los equipos que acerque el público, así como también habrá charlas de variado tenor.

Agendando…

Más Info en el sitio web del UNLUX y en www.installfest.info/FLISOL2012/Argentina/Lujan

Recuerden que además, el sábado siguiente -5 de Mayo- tenemos ¡PyDay en la UNLu!

Copyright © All Rights Reserved · Green Hope Theme by Sivan & schiy · Proudly powered by WordPress