Last Updated: 29 Mar 2012


Author: dordal

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

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).


Once you've got things setup, go to and double check that you're seeing the IP address of the remote machine (e.g. in the example above). If you are, you're good to go… you're routing all traffic via the proxy!


test203.90.239.220, May 14, 2015 02:55 PM

There is a Mac OS X GUI tools:


test135.84.177.135, Jan 13, 2016 05:20 PM

how do i get specific socks?
i've been asking forums after forums…noing
can you help?

Enter your comment. Wiki syntax is allowed: