How To Connect To A SOCKS Proxy From An Unjailbroken iPhone/iPod Touch

/ Published in: JavaScript
Save to your folder(s)

Let's say, perhaps, that you are already forwarding your web traffic through an SSH/SOCKS tunnel at work (for privacy reasons that have absolutely no relation to accessing blocked sites LOL!) and you would like to use that same tunnel on your iPhone/iPod Touch. This is actually pretty easy to accomplish.

First, you need to make sure the SOCKS tunnel on your work computer allows LAN connections so your iPhone/iPod Touch can connect to it. To do this, you simply need to add `-g` to your existing SSH command (something like `ssh -N -g -D 1080 [email protected]`).

Most people think you can't connect to a SOCKS proxy from an iPhone/iPod Touch without jailbreaking it but the truth is you can. You simply have to create a Proxy Auto-Config (PAC) file, insert the function below in it (replace the *x*'s with your IP and the *y*'s with the port you used after the `-D` in your SSH command), and save it to a web accessible place with a *.pac* extension. If you're reading this chances are you know how to serve a file over HTTP on your work LAN, so I won't delve into that.

Finally, on your iPhone/iPod Touch, go to *Settings > Wifi* and click the blue arrow to the right of your work network, scroll to the bottom, click *Auto* and type in the address to your PAC file (*e.g. http://192.168.xx.xx/mysupersecretproxy.pac*).

Congrats! Now you can surf the web securely from your iPhone/iPod touch ;)

Copy this code and paste it in your HTML
  1. function FindProxyForURL(url, host) {
  2. return "SOCKS 192.168.xx.xx:yyyy";
  3. }

Report this snippet


RSS Icon Subscribe to comments

You need to login to post a comment.