SSHVnc Applet

Description

The SSHVnc Applet is designed for environments where ease of access to SSH connectivity applications is crucial. The applet is accessible through a standard web browser and requires no physical installation on the host machine. This can be invaluable for such users as network engineers or system administrators as their work generally involves a large percentage of remote administration of systems that are geographically distanced.

To install the applet simply extract the distribution zip file onto your web server. The applet HTML file is pre-configured so you can test the applet by launching the sshvnc-applet.html file in your browser. If you are deploying to environments where clients use JRE 1.4 exclusively you can remove the reference to SSHVncApplet-jdk1.3.1-dependencies-signed.jar from the APPLET tag and remove this file from the web server to avoid any additional overhead in downloading this un required dependency.

SSHVnc can be configured through a series of parameters which can be tailored to your own company's connectivity requirements. For example you may want the terminal to connect automatically to a certain server when the page loads.

For users interested in customizing the functionality of the applet, we have listed these and their relevant functions below.

Parameters

Attribute Description
sshapps.connection.url The URL of a connection profile to open. Connection profiles are XML files which specify connection parameters and these may be created by setting up a connection through the standard SSHTerm application.
sshapps.connection.host The host to connect to (e.g "ssh.mycompany.com")
sshapps.connection.userName The username to connect as (e.g. "root")
sshapps.connection.authenticationMethod The authentication method to use when connecting. (e.g password, publickey)
sshapps.connection.connectImmediately Connect immediately to the specified host upon startup. (e.g "true" or "false")
sshapps.connection.showConnectionDialog Show the connection dialog (e.g "true" or "false")
sshapps.connection.disableHostKeyVerification Disables host key verification checking. This means that clients will not attempt to check the authenticity of the server. (e.g "true" or "false")
sshvnc.connection.vncHostDisplay Sets the display number that the remote VNC server is accepting connections on. In Windows this value should be set to "localhost:5900" which represents the port that the VNC server is listening on. For Unix systems you should use "localhost:1", as this represents the display number that the VNC server is listening on (should be in range 1-9).
sshvnc.connection.preferredEncoding Sets the preferred VNC encoding algorithm. Accepts values 1-6 (Raw, RRE, CoRRE, Hextile, ZLib, Tight).
sshvnc.connection.useCopyRect Use copyrect encoding (e.g "true" or "false")
sshvnc.connection.compressLevel An integer value (0-9). Zero represents no compression, 9 represents maximum compression.
sshvnc.connection.jpegQuality An integer value representing the level of JPEG compression to use (0-9). Zero represents no compression and 9 represents maximum compression. Note that higher values cause a loss in image quality.
sshvnc.connection.cursorUpdates Set cursor updates (0 or 1)
sshvnc.connection.eightBitColors Reduces the amount of color information transferred for lower bandwidth connections. (e.g "true" or "false")
sshvnc.connection.reverseMouseButtons2And3 Causes mousebutton 2 to act as mousebutton 3 and vice versa. (e.g "true" or "false")
sshvnc.connection.encryptedVncPassword The VNC password to use (encrypted)
sshapps.connection.password The SSH password to use (not recommended!)


Embedding the applet into a web page

To embed the applet into a web page, use code similar to the following. This example creates a small window of 640 x 480 pixels in size, and connects to the host "ssh.mycompany.com" immediately when loaded. The username parameter has also been set to default to "root" and we are connecting to a VNC server on a Linux machine that is configured to accept connections on display number 1.

<applet width="640" height="480"
archive="SSHVncApplet-signed.jar,SSHVncApplet-jdk1.4-workaround-signed.jar,SSHTermApplet-signed.jar,SSHTermApplet-jdk1.4-workaround-signed.jar"
code="com.sshtools.sshvnc.SshVNCApplet"
codebase="." style="border-style: solid; border-width: 1; padding-left:
4; padding-right: 4; padding-top: 1; padding-bottom: 1">
<param name="sshapps.connection.host" value="ssh.mycompany.com">
<param name="sshapps.connection.userName" value="root">
<param name="sshapps.connection.connectImmediately" value="true">
<param name="sshapps.connection.authenticationMethod" value="password">
<param name="sshvnc.connection.vncHostDisplay" value="localhost:1">
</applet>