Knowledgebase:
Remote Exec: The differences between different execution methods
Posted by Yury Averkiev, Last modified by Yury Averkiev on 05 June 2012 04:40 AM

SmartCode Remote Exec supports three methods of remote command execution: “psexec.exe” Like, Windows Remote Management shell and SSH shell.

This knowledge base article outlines the advantages and limitations of these three execution methods.

“PSEXEC.EXE” LIKE
This method is named after the popular psexe.exe tool developed by sysinternals.com, which is used to execute a command on a remote computer. Due to some technical limitations of psexec.exe we couldn’t use it so we developed an in-house solution, which works similar to the psexec.exe application.

Pros:
This execution method doesn’t require any additional server side components. It works with any Windows NT based operating system, such as Windows NT4.0, 2000, XP, 2003, 2008 and Vista.

Cons:
Some administrators disable administrative shares, such as the IPC$ share. This execution method will fail if a remote computer has its IPC$ share disabled.
Unless you are using a VPN connection the network traffic between the client and the server is sent in plain text rather than an encrypted form.

Run-time requirements:
Windows NT based (NT 4.0, 2000, XP, 2003, Vista, 2008) computer. Access to IPC$ share.

WINDOWS REMOTE MANAGEMENT SHELL
The Windows Remote Management (WinRM) is the Microsoft implementation of WS-Management Protocol, a standard Simple Object Access Protocol (SOAP). This is a firewall friendly protocol that allows hardware and operating systems, from different vendors, to communicate with each other and allows commands to be run on a remote computer.

Follow this link to learn more about Windows Remote Management features.

If you running the Windows XP or Windows 2003 operating system, you can install Windows Remote Management runtime by downloading it from the Microsoft Download Center.

Pros:
You can connect to a remote computer via HTTP/HTTPS protocol, which is firewall friendly.
It uses a secure connection to the remote computer.

Cons:
The application is not a built in component of Windows XP or Windows 2003 Server computers and must be installed as a redistributable package.

Run-time requirements:
WinRM is part of the Windows Vista and Windows 2008 Server operating systems. However, to obtain data from remote computers, you must configure a WinRM listener. For more information, see Installation and Configuration for Windows Remote Management.

Windows Server 2003 R2: WinRM is not installed by default, but is available as the Hardware Management feature through the Add/Remove System Components feature in Control Panel under Management and Monitoring Tools.

EXECUTE COMMAND VIA SSH
This method establishes a connection to a remote SSH server and then executes a command. The advantage of this method that it can execute a command on a computer with a non-Windows operating system installed such as Linux or the Macintosh operating system.

Pros:
SSH can execute commands on non-Windows based computers such as Linux and Mac.
It uses a secure connection to the remote computer.

Cons:
The remote computer must have a SSH server installed.

Run-time requirements:
The remote computer must have a SSH server installed.


APPLIES TO: SmartCode VNC Manager (Enterprise Edition) v4.0.14.0 or newer