Remote Shell service for Windows XP
In UNIX/Linux world, it is common to connect to remote machine through Secure shell (SSH). But in Windows world, we depend too much on Remote Desktop Connection (RDP). But except Windows Servers, Windows workstations such as Windows XP does not support multiple simultaneous login to a Windows XP machine. This drawback can be managed to some extent using a Remote shell service running in Windows XP. Though you can’t run GUI application, this service can provide at least command line access to the Windows XP shell (cmd). Here is how to get it done.
Download and Installation of rshd
Windows XP does not come with Remote Shell Service (I am not sure about Windows 7). We need to download rshd (Remote Shell Daemon) from here in your remote target machine. After downloading, install it.
Configuration of rshd
Once installed, it will copy rshd.exe file in “C:\Program Files\rshd\bin” directory. Run the following command in command prompt to install it as a service.
cd “C:\Program Files\rshd\bin”
rshd -install -r
The above command will configure rshd as a service (If you want more secure service, and want to control the access through rhosts file – don’t use -r argument).
It is time to auto start this service when the machine boots. It can be done through Services applet.
Navigate to My Computer -> Right-Click -> Manage -> Services and Applications -> Services -> RSH Daemon -> Right-click -> Properties -> Start as given below.
Now Windows XP is ready to get connected through rsh command. All Windows machines comes with this RSH client tool. Now you can run the following command from any machine to run a command in our target machine.
rsh [Host] [-l UserName] [-n] [Command]
Host : Specifies the remote host (computer) on which to run Command.-l UserName : Specifies the user name to use on the remote computer. If omitted, the user name of the user who is currently logged on is used.-n : Redirects the input of rsh to the NUL device. This prevents the display of the command results on the local computer.Command : Specifies the command to run./? : Displays help at the command prompt.
rsh myremotexp -l mydomain\myusername c:\reports\generate_report.bat
In the above example, I am connecting to remote machine called “myremotexp” with my domain login “mydomain\myusername” and runs generate_report.bat to generate a report.
For more details on usage of rshd (service): http://rshd.sourceforge.net/
For more details on usage of rsh (client): MSDN