= Setting up a SOCKS proxy in Mac OS X = If you're somewhere that has a network that is partly blocked, but allows SSH, or if you are in a coffee shop or something similar and are worried about security, you can setup a SOCKS proxy to route all your traffic via a remote server that you control, and then out onto the Internet. == Setup SOCKS proxy == First, you need to SSH to the remote machine with some special parameters: ssh -vND 8888 user@host.com Some detail on those options: -v verbose mode; useful for debugging -N don't start an interactive shell on the remote server -D setup the SOCKS proxy on port 8888 on localhost == Configure Proxy Settings - OS Level == Now, go into your Network Control Panel, and then 'Advanced...' -> 'Proxies'. Set the **SOCKS Proxy (only)** with your proxy settings: ''localhost'' / ''8888''. You **DO NOT** want to set the HTTP proxy, HTTPS proxy, etc. From here, all your apps that are proxy aware (most of them, probably) will 'just work'. == Configure Proxy Settings - Firefox Only == In some cases, you may not want to mess around with the system settings, especially if you just have something quick you need to do. In that case, Firefox allows you to configure it's proxy settings separately from the rest of the OS. Go to 'Preferences' -> 'Advanced' -> 'Settings...' -> 'Manual proxy configuration'. The key here is that you want to fill in **ONLY the SOCKS host and port**, and not the HTTP proxy, etc. As above, the settings are ''localhost'' and port ''8888'' (assuming you followed the example SSH command above). == Test == Once you've got things setup, go to [[http://www.myipaddress.com/]] and double check that you're seeing the IP address of the remote machine (e.g. ''host.com'' in the example above). If you are, you're good to go... you're routing all traffic via the proxy!