I have created this applet in an effort to simplify ssh tunneling access & provide user friendly experience. The applet will create a tunnel to your SSH gateway and establish a connection to either Remote Desktop or VNC screen. The name of the VNC or RDP server has to be resolvable by the SSH gateway. The applet will distinguish between VNC & RDP protocols by the presence of ":" in the remote server name, for ex. "myserver:1" would be a VNC screen and "myserver" would default to an RDP connection.
Screenshots:
The applet uses the following libraries;
jsch-0.1.52.jar (Java SSH library) | http://www.jcraft.com/jsch/ |
java-getopt-1.0.13.jar | https://www.gnu.org/software/java-getopt/ |
log4j-1.2.16.jar | http://logging.apache.org/log4j/ |
properJavaRDP.jar | http://sourceforge.net/projects/properjavardp/ |
VncViewer.jar | http://www.tightvnc.com/download.php |
NOTE: I had to recompile VncViewer.jar and put it in a package "org.vncviewer" per Oracle Java recommendation.
Please keep in mind that as of Java 7 update ?? unsigned or self-signed applets are blocked from running. For testing purposes you can try Java 6 after which you can decide to buy a code signing certificate for your applet and libraries.
The applet requires the following parameters to function
<param
name="sshhost" value="ssh.example.com"/> |
- The address
of your SSH gateway. |
<param
name="sshport" value="22"/> |
- The port
your SSH server listens. |
<param
name="sshtimeout" value="3000"/> |
- The SSH
connection timeout value. |
<param
name="Show Controls" value="No"/> |
- Show VNC
Viewer controls. |
<param
name="Open New Window" value="Yes"/> |
- Open VNC
viewer in new window. |
<param
name="clientwidth" value="1024"/> |
- The Remote
Desktop width. |
<param
name="clientheight" value="768"/> |
- The Remote
Desktop height. |
For the Remote Desktop width/height parameter you can
optionally use included JavaScript code applet-launcher-js.txt to determine optimal
full size window.