ssh and corkscrew

just so I don’t have to search it again and again:

quelle/source: At Work
picture trying to show the desrcibed scenario

You need an SSH client that can issue CONNECT requests through the company HTTP proxy. If you’re on Windows, using Putty is fine as it has built-in support for tunneling through a HTTP proxy. If you’re on unix/linux (or cywgin) you can use openssh with corkscrew to go through the proxy to your home computer’s port 443.

If using openssh, you’d add the following line to your ~/.ssh/config file:

ProxyCommand /usr/local/bin/corkscrew 80 %h %p

You config the ssh client to port-forward a local port, say 8080, to the remote’s localhost:80. Now you have a channel established to your home computer, over a securely encrypted connection. Of course you also get a SSH login and you can start your X-programs from home to pop up at work etc…

The openssh command line to connect and port-foward the proxy could then look like this:

ssh -L 8080:localhost:80 -p 443

Configure your browser at work to use “localhost:8080” as proxy, for all the protocols you have enabled in your proxy at home.

All subsequent browser requests are then sent over the SSH connection, through the proxy, to the ssh server at home and from there to your proxy, and out in the world…