SSH over SSH Tunnel

puttysshtunneling

I have seen this question: How to setup ssh tunnel to forward ssh? but I'm having difficulties because of OS barriers. I have someone sitting on an XP laptop behind a router that they cannot configure. I have them running freeSSHd and I need to connect to it. I have my personal SSH server and can access it freely. The other person only has puTTY as an option for an SSH client, which makes this confusing (especially since she is not extremely tech savvy). I understand the concept of using an SSH tunnel to connect to HER server through MY server, but I don't seem to be able to make it happen. Right now I have her connecting via puTTY to MY server with the remote tunnel with (source: 1357) and (destination: localhost:23). Her freeSSHd server is running on port 23. However, when I try to connect via SSH to my server on port 1357, I get a connection refused error. What is wrong with this setup?

Final Answer:

Firstly, in sshd_config add GatewayPorts clientspecified. Then, in puTTY, add a REMOTE tunnel with a SOURCE PORT <rport> and DESTINATION localhost:<sport> (where <rport> is the port you want the public SSH server listening on and <sport> is the port that your local, firewalled SSH server is listening on). Make sure both boxes at the top of puTTY's Tunnels page are checked. This is equivalent (if I understand correctly) to ssh -N -g -R <rport>:localhost:<sport> user@public_server. Then, you should be able to SSH into the public server connecting to <rport> and it will forward you properly to the firewalled server. At least, it worked for me…

Best Answer

You'll need to make sure it's a reverse tunnel, so under SSH->Tunnels ensure the buttons at the bottom say "Remote" and "Auto (or IPv4)". I couldn't get this working however so I'd be interested to see what the problem was.