Vamos con una entrada rápida. ¿Quién no tiene en su casa una máquina montada con Linux y encendida 24h al día, 365 días al año?. ¿Que no la tienes?. ¡Venga ya!
(Espérate a mi super artículo sobre cómo preparar un servidor casero basado en Linux, si es que algún día lo acabo…)
Muchos de nosotros tenemos un servidor de descargas en casa montado en una máquina Linux, o incluso un router basado en Linux (como el Linksys WRT54GL), que podemos utilizar como pasarela para encender y apagar nuestro PC habitual. Supongamos que disponemos de acceso por SSH desde el exterior a nuestra máquina Linux, y que queremos encender de forma remota nuestro PC habitual para recuperar algunos documentos de su disco duro.
Necesitaremos: samba y alguna utilidad WOL:
# sudo aptitude install wakeonlan samba-client
Con esto tenemos todo el software que necesitamos. Para hacer el encendido y apagado remotos además necesitaremos conocer la IP y MAC de la máquina remota que queremos manejar.
Para despertar la máquina usaremos Wake On Lan (debe estar activado en la BIOS de la máquina a despertar):
# wakeonlan 00:11:22:33:44:55
Y para apagar de forma remota usaremos Samba:
# net rpc shutdown -t 10 -f -C «Apagando el sistema de forma remota…» -I 192.168.0.2 -U usuario%password
El parámetro «-t» expresa el tiempo de espera antes de realizar el apagado, «-f» indica forzar la terminación de todos los programas (garantiza que no se quede a la espera de algún programa y no se apague), «-I» permite establecer la IP de la máquina remota, y por último «-U» establece un usuario con permisos para realizar el apagado. Si no queremos indicar el password en el prompt podemos eliminar la última parte «%password», y la utilidad net nos preguntará la clave al estilo sudo.
En otro capítulo veremos cómo se puede acceder a esa máquina por Terminal Server (en Windows XP: Escritorio Remoto) sin necesidad de abrir puertos en el router, y con una conexión 100% cifrada. La pista de nuevo es SSH, una herramienta con mucho poder. Pero primero veremos cómo tunelizar y activar un proxy dinámico para lo que pudieramos necesitar.