Whether you are obsessed with security or simply need a way to 'get round' your companies firewall restrictions there are a number of ways to encrypted your data or use a proxy to avoid firewall problems.
The process I finally decided upon seemed to be both the easiest or simplest for my needs. One point to make is that I happen to have a Linux server (Ubuntu if anyone cares) running at home. This played an important part in my decision and the process I use would be impossible without it (unless you know someone who will let you use theirs).
The next thing to sort out is what kind of operating system you are wanting to use these services from. The process will differ depending on your OS, for this post I will concentrate on Windows users. The 1st bit of kit you will need is an external Linux server to use as a 'proxy'. You will need the IP or web address of the server and you will need the SSH authentication details. Setting up OpenSSH falls outside the scope of this post, if you need any help Google is your friend. Then you will need the software to connect to the server, for this I suggest Putty. Personally I use PortaPutty (from here or PuttyTray) as this means I can carry the whole system on a USB key.
Once you have Putty, whether the full client or one mentioned above you need to open the Tunnels pane under SSH (under Connections) on the left hand list. The simplest thing to do here is to enter 8080 (or a similar unused port number) into the Source Port box and select 'Dynamic' under Destination. Once you click Add it should appear as D8080 in the box above. Once you have done this you must return to 'Sessions' at the top of the list on the left. From here you can add in the details of your server, by host name or IP address and name the settings in the Saved Sessions box. One note before you click Save, below the save box (if you are using PuttyTray) is the option to use sessions from the registry or from a file. Before you save change this to "Session from file". It is also worth remembering that this reverts back to "Session from registry" each time it is restarted so you will have to change this each time to retrieve your settings. Of course if you don't mind your details being stored in the registry you can skip this step.
The basic setup for putty is complete. From here you simply select Open and enter your user name and password when prompted. If you intend to use the SSH session itself you can do so now. If you don't want to use the shell session you can change a few options in Putty to make it non interactive. From the SSH menu on the left (under connections) you can select 'Don't start a shell or command at all'. This will load up your tunnel without any interactivity in the shell window itself. Simply close the window to shutdown the shell and the tunnel (NOTE: remember if you close the shell the programs using the tunnel will no longer be able to access the internet).
Once you have completed the setup of Putty all that remains is to tell each of your programs that need the SSH tunnel that is exists. For example in Firefox (again I use Portable Firefox) or Thunderbird go to the Tools > Options > Advanced > Network and under Connections hit Settings. From here select 'Manual proxy configuration', under SOCKS Host enter localhost with 8080 in the Port box (or whichever port you entered in the source Port in Putty). Select SOCKS v5 and click OK and OK again. Now when you open Firefox (or Thunderbird) it will use the SSH tunnel provided by Putty. One way to test if it is working is to try to open a website in Firefox without Putty running. This should result in a 'Page can not be displayed' error which is then resolved once Putty is running and connected to your SSH host.
Remember the SSH session will not shut down while the Tunnel is still in use, you must close all programs using the tunnel then it will quit automatically (assuming you have logged out of the shell).
That is about it, you can configure any service which allows you to use a proxy to use this tunnel, for example I run Firefox, Thunderbird, Pidgin and FileZilla through mine.
It is also worth noting that this is a 'convenient' way to ensure you are safe and secure when using public wireless hotspots.
Some useful sites:
Portable Apps - for Portable Applications such as Firefox, Thunderbird, Pidgin etc
Lifehacker - for info on how proxy's work
Mac Geekery - How to for a Mac
Stop Design - Another how to for the Mac using SSH Tunnel Manager
Read more!