You can configure PuTTY, a free telnet/SSH client program, to port forward connections over an SSH connection by going to "SSH" then "Tunnels" when configuring a session.
Once you've added instances of port forwarding you can't edit those instances through the PuTTY configuration window though you can remove them and add new ones. The information for port forwarding is stored in the registry under the following key where Session_Name is the name for a stored session:
HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\Session_Name
Updates are stored when you save a session.
E.g., if I saved a session with the name Omega using the tunneling
configuration shown above, the registry entry at
HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\Omega
for a dynamic SOCKS proxy at port 1080 and forwarding for RDP using local
port 30,089 forwarded to port 3389 on a system with IP address 192.168.0.5
would be as follows:
Value name: | PortForwardings |
Value data: | D1080=,L30089=192.168.0.5:3389 |
I could change the details for the port forwardings by editing the registry entry. I would see the changed values when I loaded the session. I could check the information from a command prompt with the following command:
C:\>reg query "HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\Omega" /v PortForwardings HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\Omega PortForwardings REG_SZ D1080=,L30089=192.168.0.5:3389