Una manera curiosa de manejar una consola de MS-DOS en windows
remotamente desde Linux (y es que a veces hay que hacer estas cosas)
es a través de Netcat. Netcat crea un socket TCP en modo escucha
(server socket) o un socket que es utilizado para conectarse a un
servidor (modo cliente). Esta navaja suiza nos permite hacer cosas
como esta:
C:> nc -l -p 1234 -e cmd.exe
En el ejemplo anterior es necesario tener netcat para windows
instalado. De este modo podemos acceder a Windows, desde cualquier
sitio (en donde también necesitamos tener instalado netcat)
simplemente con:
$ nc windowserver 1234
Y voilà, directamente accederemos a la consola de MS-DOS desde
tu linux (y sin ningun password).
También puede utilizarse para transferir archivos (ya que es
bastante usual que un Windows no disponga de un servidor ssh o ftp),
para escanear puertos, como sustituto de telnet, para realizar tars o
dd al vuelo, o para hacernos un chat sencillo, entre muchos usos. Otro
ejemplo práctico puede ser la transferencia de archivos:
Desde el host que se quiere transferir un archivo (por ejemplo,
en linux):
$ cat oracle.sql | pv -b | nc -l -p 1234
Y desde donde queremos recibir el archivo (windows):
C:> nc linuxserver 1234 > oracle.sql
Es claro que tenemos que tener acceso en ambos sistemas, aunque
no se tienen porque tener privilegios administrativos (en linux un
usuario sin privilegios va a manejar los puertos > 1024). Os dejo
una referencia de las cosas buenas 😉 que se pueden hacer con netcat,
todo un viejo rockero del unix, venido a menos ya que buena parte de
sus usos se pueden hacer en linux con comandos como ssh, telnet o nmap.
http://www.g-loaded.eu/2006/11/06/netcat-a-couple-of-useful-examples/