Lots of mobile operators don’t like you using your phone as an internet access point for other devices, even though you’re paying for a set amount of bandwidth. If this is the case, or you just fancy an SSH tunnel to securely use the internet, then this is for you.
To set up an SSH tunnel, you’ll want a VPS server. I highly recommend DigitalOcean as you’re able to spin up a VM and destroy it a few hours later, essentially costing you a few pennies to run your anonymous operation.
Once you’re all set up, you’ll want to launch your SSH tunnel, you do this by opening a normal SSH connection, and appending ‘-D 8080’ or which ever local port you’d like to use. For instance, I might use:
ssh email@example.com -D 9898
Now you’ve your SSH tunnel connection established, you’ll want to get your computer pointing it’s requests to the port you just selected when using the -D command line flag.
First, open up your Network settings:
Then when the window opens, select ‘Network Proxy’, and under Socks host, enter localhost, followed by the port you used when you entered the -D flag.
Now when you check your IP address through your browser, you’ll see that all your requests are being tunnelled via encrypted SSH connection. If you then lost connection – which happens often when travelling- your pipe will be broken and you’ll have to establish a new connection. This is exactly the sort of behaviour we want, as having packets transmit ‘in the clear’ could reveal that you’re tethering.