Do you have a server that you can access with OpenSSH? Do you want to be able to browse the web, even non-SSL, unencrypted pages, without others on the network being able to see what you’re looking at or even hijacking your sessions? Given the existence of Firesheep, it is really easy for even unsophisticated users to hijack a web browsing session.
The method I’m presenting is easy and effective. OpenSSH makes this a snap. Your web browsing packets will be routed via an encrypted connection to your server.
Create a SOCKS Proxy Connection on localhost
First, in a terminal, open a SOCKS connection to your server with OpenSSH. Just add “-D 9999″ to your normal SSH command. This will create a SOCKS proxy on localhost at port 9999.
ssh -D 9999 email@example.com
Depending on your configuration, you may need to enter your server account password. Whatever your normal authentication is for SSH. This will even open a normal SSH session, you will get a shell prompt on the server like normal. If you do not want a shell prompt, use “-ND” instead of “-D” and the
You now have a proxy on your local computer using SOCKS on port 9999. Now we just need to use it.
Install Switchy! in your Chrome browser
This can be easily found in the Chrome Web Store.
Use your Shiny New SOCKS Proxy
Open the Switchy! Options dialog. Type the a name for this proxy in Profile Name. On the SOCKS Host line, enter “localhost” in the first blank and “9999″ for the Port. Click the Save button. You are using a SOCKS proxy running on your localhost.
Then, select the proxy by clicking the Switchy! icon in Chrome and selecting the proxy name you just entered.
You are now using a secure connection to browse the web. Note that someone on the network where your server is hosted can still snoop your traffic, but not in the Starbucks where your are sitting.