You _can_ create tunnels via ssh, even with PuTTY. You _cannot_ use the feature I'm looking for. Tongue in cheek I'd say check the docs on the ControlMaster feature, but this is what it boils down:
(reuses the handshake, is _much_ faster to connect)
Why do I want that? Couldn't I just use one connection and start tmux/screen? Turns out, no, I cannot. As soon as you have anything that actually needs to send data from your machine to the target host (i.e. nothing interactive. Think scp. git.) you need to open a new connection - and that's when I'm hoping for this feature on Windows.
I still don't see how these cases aren't equivalent. "ssh -D 9999 myhost" to start one connection. Future ones use a ProxyCommand of "nc -x localhost:9999 %h %p" or the equivalent (my real ones do a little more, as I'm often inside networks with finicky outbound connection policies). Done. Now wrap that in a dozen lines of scripting so you're not typing it out every time and call it a day.
You can sit and pine for some random GUI feature if you want. The rest of us are getting work done.
Your tone starts lacking now. If you don't understand a post, why don't you ask instead of assuming that the other guy is lazy or stupid?
The feature I want is _not_ a GUI feature. It's a ssh feature that is not supported on Windows. Whether you like it, need it, want it - I don't really care. It's not supported on a platform that I regularly have to use and I'd have loved to see PuTTY implement it.
There's no 'please make me a shiny button' involved, this is about a _network_ (or socket - that seems to be the limitation if I understand the reasons for the lack of this correctly) feature of the ssh _protocol_ that is not currently supported by any ssh client on Windows, for all I can tell.
Your solution - for all I can tell, solves the problem if you control client and server (you can use it to have a persistent and maybe shared connection to encapsulate random stuff). That's not my point though. I want regular commands a la ssh host something or scp, svn, git, whatever to be faster. That's something SSH supports with a feature that is NOT a GUI feature (just making sure that you get it). But not on Windows, unfortunately. Neither in PuTTY nor in any CLI (hint) client, for all I know.
The commercial products Tunnelier and SecureCRT can do this for shell windows and their bundled sftp clients. Didn't check if they can support third-party tools like git.
But even for shells, I went back to PuTTY anyway -- It came down to cost + time setting up on new machines vs. using PuTTY's "Duplicate Session" feature with ssh keys loaded into Pageant.
Since then I've moved on to using a persistent X11 VNC session over a plink tunnel :)
You _can_ create tunnels via ssh, even with PuTTY. You _cannot_ use the feature I'm looking for. Tongue in cheek I'd say check the docs on the ControlMaster feature, but this is what it boils down:
Terminal 1:
ssh someHostThatYouNeedForLotsOfThings [options here]
(.. wait for the negotiation, connect. Good)
Terminal 2 to N
ssh thatVerySameHost [options here]
(reuses the handshake, is _much_ faster to connect)
Why do I want that? Couldn't I just use one connection and start tmux/screen? Turns out, no, I cannot. As soon as you have anything that actually needs to send data from your machine to the target host (i.e. nothing interactive. Think scp. git.) you need to open a new connection - and that's when I'm hoping for this feature on Windows.