When to use an SSH Tunnel?
An SSH Tunnel is perfect for the following scenarios:
- You want to get to a website that a corporate network is blocking.
- You want to encrypt the network traffic for a non-encrypted protocol.
What is an SSH Tunnel?
An SSH Tunnel is where you tell your local SSH Client to forward your local computer's traffic to a specified SSH Server (over the encrypted SSH protocol). The SSH Server will then act as a proxy for all requests you make on your local computer.
How to set up an SSH Tunnel
There are 2 steps to set up an SSH Tunnel, and they both happen on your local computer (no configuration is needed on the SSH server which will be acting as the proxy).
Set 1: Open the tunnel
Run this command on your local computer:
ssh -D 5000 -N email@example.com
firstname.lastname@example.org the user/server you would use for normal SSH (e.g.
5000is the port you will hit on
localhostto enter the tunnel (see Step 2).
Set 2: Direct your network to use the tunnel
Open the network settings, find the Network Proxy configuration section, and set
localhost:5000 as a SOCKS proxy:
Ride the tube!
If you did it right, all traffic between your computer and
yourserver.com should now be encrypted, and
yourserver.com should be acting as a proxy on your local computer's behalf.
A simple test to make sure it is working properly is to Google for "what's my ip" before and after setting up the Tunnel. The IP should change when the Tunnel is on (and should be your server's IP).