[Howto] X11 Forwarding: Corriendo aplicaciones de Linux en Windows

Supongamos el caso mas típico:

  • Hay dos PC en la red, mi pc corre Linux, la de mi (mujer / novia / ¿amante? / hermano / padre / madre / amigo) corre windows.
  • Necesitamos urgentemente usar una aplicación instalada en la pc que corre linux pero no podemos por tal o cual motivo y la única pc disponible en la red tiene Windows instalado.

O este otro:

  • Estamos fuera de casa / lugar de trabajo.
  •  necesitamos urgentemente correr una aplicación cualquiera de una pc que corre linux y la única pc que hay a mano tiene windows. Via internet, podemos conectarnos al servidor SSH de la pc remota y usarlo para traer una aplicación remota hasta la pc local.

X11 Forwarding al rescate:

Como windows no tiene ninguna implementación parecida al servidor X de forma nativa, necesitamos de Xming que es justamente eso: Un servidor X para windows. Pueden descargarlo e instalarlo (con las opciones por defecto es suficiente) desde la página web oficial de Xming (pesa actualmente 2.4Mb).

Teniendo en ejecución Xming (Tiene un ícono con una X en el system tray, al lado del reloj de windows), solo queda ejecutar putty para conectarnos a la pc linux:

  1. Ejecutamos putty.
  2. Ingresamos el número de IP  –o nombre de host si hay un DNS de por medio– (y puerto si fuera necesario) de la pc que corre linux.
  3. Ponemos la tilde en donde dice «Enable X11 Forwarding» dentro de Connection / SSH / X11
  4. Iniciamos sesión con nuestro nombre de usuario y contraseña (o par de llaves, pero eso es tema para otro artículo que tengo a medias).
  5. Ejecutamos la aplicación en cuestión.

Ejemplo: Xcalc ejecutado en la pc remota desde una pc con WIndows: 

XCalc corriendo nativamente en Linux pero manejado desde una pc con windows.

Para que esto funcione de mas está decir que en la otra punta tiene que haber un servidor SSH corriendo.

Este servidor SSH tiene que permitir X11 forwarding, lo cual se consigue descomentariando la siguiente línea en /etc/ssh/sshd_config:

X11Forwarding            yes

Sirve para cualquier aplicación, pueden ejecutar desde la simple xcalc del ejemplo hasta algo tan complejo como Amarok, pasando por Mozilla firefox, aMSN, etc, etc…

Obviamente, también funciona en el caso que dispongamos de dos PC corriendo linux, cosa que simplifica bastante el proceso. Basta con ejecutar:

ssh -X <número_de_ip> xcalc

Para traer xcalc desde la pc remota al monitor local.

Algunas aplicaciones no se llevan bien con la opción -X. Firefox, por ejemplo, solo funciona si en lugar de -X se usa -Y:

ssh -Y <número_de_ip> firefox

Si se pretende usar este sistema sobre una conexión que va por internet, puede que te interese comprimir el tráfico al vuelo para mejorar el desempeño de la aplicación:

ssh -YC <número_de_ip> firefox

¿Conclusión?

Putty y Xming, dos herramientas que no te pueden faltar en el pendrive.

[HowTo] Cazando phishing, scammers, spammers y demases.

¿Cada quien se divierte como quiere no? Me llegó un mail de esos con publicidad barata, el tipico SPAM prometiendo la vida facil, inversiones rentables, la chancha, los 20 y la máquina de hacer chorizos…

Y me llegó en mal momento… (Me llegó sin tener yo nada mejor que hacer que enojarme con este tipo de gente).

Una cosa es que te manden propaganda no solicitada intentando vender algo. Si me interesa lo miro, si no, lo dejo pasar.

Otra cosa muy distinta es que por medio de engaños intenten sacarte guita. Meter la mano en el bolsillo de los ingenuos. DELITO, penado por la ley y todo.

Este SPAM (o SCAM, o PHISHING) que me llegó, si no fuera por un poco de investigación que hice tendría toooooda la pinta de ser uno de esos casos en donde el pobre estúpido engañado pierde unos cuantos pesos, y yo no tengo nada mejor que hacer ya mismo, así que –como dijo jack el destripador– vamos por partes:

Sigue leyendo

[TIP] Linux nunca se cuelga y puedo probarlo.

En linux, si el hardware está sano y los drivers consistentes, nunca hace falta usar ni el botón de apagado ni el botón de reset.

He tenido que explicar esto tantas veces que me he decidido a hacer este post para poder enlazarlo y no tener que tipear lo mismo mil veces.

¿ Se te trabó una aplicación?

  • La cierras, si no te deja, ejecutas xkill y la cierras con un click.
  • Si no se puede ejecutar xkill, abres un terminal y ejecutas killall nombre de aplicación.
  • Si no se puede abrir un terminal, te cambias a una consola real con [CRTL] + [ALT]  +  [F1] y ejecutas killall nombre de programa
  • Si no se puede cambiar a una consola real, presionas [CTRL] + [ALT] + [BCK SPACE] para matar el servidor X. Si hay un gestor de login trabajando, el servidor X se reiniciará automágicamente.

Si no se puede matar el servidor X, por que ni el teclado ni el mouse funcionan y no hay otra pc en red para loguearse por ssh a matar procesos: REISUB al rescate.

Ubicada de manera estratégica para que sea imposible presionarla por error, esta combinación de teclas lleva al sistema a un apagado limpio.

Presionando la tecla [ALT],  sin soltarla, se presionan luego en este orden:

  • [IMPR PANT] – Inicia el proceso que permitirá controlar el kernel con combos de teclas.
  • [R] – Pasa el teclado a modo RAW
  • [E] – Cierra todas las aplicaciones abiertas enviándoles la señal SigTerm
  • En este punto, normalmente el entorno gráfico se ha cerrado o reiniciado y ya tenemos el control del sistema nuevamente. De no ser así, sin haber soltado todavía la tecla [ALT] se presiona:
  • [I] – Cierra todas las aplicaciones restantes y procesos enviandoles la señal SigKill
  • [S] – Sincroniza los buffers y cachés con el contenido del disco rígido.
  • [U] – Desmonta todas las unidades de forma límpia.
  • [B] – Reinicia el equipo.

Durante el proceso es conveniente prestarle atención al led que indica actividad en el disco rígido pulsación tras pulsación, esperando que esta se detenga antes de seguir con la próxima tecla.

[ALT] + [IMPR PANT] + [R] + [E] + [I] + [S] + [U] + [B]

¿Ok?

No es necesario pulsar las teclas en ese orden, pero es lo sano tanto para el software como para el hardware.  Bien podría el lector impaciente usar [ALT] + [IMPR PANT] + [B] y sería el equivalente a haber presionado el botón de reset.

El combo tiene además otras funciones en casos de fallos mas catastróficos, como crashdumps, volcados de memoria, setear el nivel de Nice para todas las aplicaciones, mostrar el estado de las tareas, etc, etc.

[howto] Arrancando desde la red, sin CD ni disco rígido.

Siguiendo la saga del post anterior en donde presentaba a dnsmasq como la navaja suiza del arranque remoto para clientes sin disco rígido – lo que se conoce como diskless o thin clients – completo el artículo con una breve explicación acerca de como poner en funcionamiento este sistema para que nos sirva como DHCP server, TFTP server y PXE server.

Englobando un poco la idea general, lo que se persigue es:

  1. Nunca mas tener que volver a usar un CD o un diskette para arrancar una PC.
  2. Arrancar un ordenador usando únicamente la red (Tenga este disco rígido o no)
  3. Disponer de una serie de imágenes para arrancar desde la red entre las que incluyo:
    • Algunas distribuciones de linux (Cualquier versión de Ubuntu y System Rescue CD)
    • Imágenes ISO de cualquier CD Booteable
    • Windows desde la red.
    • Imágenes de Diskette booteables.

Todo esto se consigue combinando tres piezas que tienen que interactuar entre si:

  • Dnsmasq
  • Grub4Dos
  • PXElinux

Sigue leyendo