Introduction

SSH Tunnel Agent is a Windows program that maintains Secure Shell tunnels quietly and easily. All features are accessed through its icon in the system tray (bottom-right, by the clock).

If you are not familiar with tunnels, read this Wikipedia article on Port Forwarding or just Google it.

Behind the scenes the program uses Plink which is a command-line version of the popular SSH client PuTTY written and maintained primarily by Simon Tatham.

Requirements

This program requires at least the .NET Framework 4.5 which is included with Windows 8. Windows 7 SP1 and Windows Vista SP2 are compatible with the framework, but it must be installed separately or obtained through Windows Update.

You must use this program in a country that does not outlaw the use of encryption. Otherwise, use of this program may be illegal.

Visual Instructions

Hover over the Tray Icon for a Tooltip containing the currently connected sessions.


Right-click the Tray Icon to toggle application-wide settings or to Exit. The setting "Start when you logon" creates a scheduled task that runs the program about 30 seconds after you logon.


Left/Double-click the Tray Icon for the session control popup. It displays all the sesions and whether they are connected, disconnected, or had an error. You can left-click on a status image or double-click on a session to connect or disconnect that session. Left-clicking the gear image will open the "Configure Session" window in edit mode. Clicking the "Add session" link opens this window in new session mode.


In the session control popup, you can also right-click on a session to toggle its connection state or edit its configuration. You cannot edit a session that is currently connected.


In the session control popup, click "Add session" or right-click a session and choose Configure to open the "Configure Session" window. You can click the "Remove session" link in the bottom-left to remove a session.


In the "Configure Session" window, check the "Send Data instead of opening Tunnel" checkbox to hide the tunnel options and show the remote command options. Sessions with remote commands will change status to Disconnected if they complete successfully and Error if they fail.


The "Session Console" windows will always be displayed if any input is required after a session is started, if the "Start a Shell" option is checked, or if a session is sending remote commands and the "Show console to view results" option is checked. Closing the "Session Console" does not disconnect the session. The window cannot be reopened without reconnecting.

Things to Consider

If a session doesn't seem to be working correctly, then enable the "Start a shell" or "Display results in console" options (then connect again) to open the Session Console to view the connection details.

If the program is located in a system folder (C:\, C:\Program Files\*, etc), then it will not be able to write to that location (unless it is run as an administrator). Instead, it will write to ssh-tunnel-agent in the current user's roaming profile. You can easily access this folder by typing %APPDATA% into the start menu/screen and pressing enter. If the .config file exists in this location, then it will override the .config located with the program.

If the "Start when you logon" setting is enabled and you move the program to another location, then the scheduled task will be automatically deleted the next time the program is started. You will have to manually re-enable "Start when you logon" to create the task again.