Well I guess, there's no better way to do it. Darn you Apple, is it so hard to put a SOCKS Proxy setting in the iPhone OS network settings panel?
:-(
Anyway, the best answer so far, and the only one I could find on the Net, is from a document from the SNIPPLR Code 2.0 website entitled How To Connect To A SOCKS Proxy From An Unjailbroken iPhone/iPod Touch.
Below is a cleaned up version of their solution:
Let's say, perhaps, that you are already forwarding your web traffic through an SSH/SOCKS tunnel at work (for privacy reasons) and you would like to use that same tunnel on your iPhone/iPod Touch. This is actually pretty easy to accomplish.
Make sure the SOCKS tunnel on your work computer allows LAN connections so your iPhone/iPod Touch can connect to it.
ssh -N -g -D 1080 user@domain.com
Create a text file and insert the following code:
function FindProxyForURL(url, host)
{
return "SOCKS 192.168.xx.xx:yyyy";
}
Replace the x's with your IP and the y's with the port you used after the -D in your SSH command
Save the text file as a Proxy Auto-Config (PAC) file 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 → Wi-Fi 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).
Now you can surf the web securely from your iPhone/iPod touch.
I hope you remember back to the days when 200MB/day was an incredible amount to have. :-)
There are some simple things and then some more complicated things.
Limit access by time of day
First of all, you can block times of day for connections by MAC address (advanced settings) on the Airport Extreme base station. This can keep machines from pulling down files, updates, etc., without your permission.
Cache data with a proxy server
Second, you can install a "caching" proxy server, such as Polipo http://www.pps.jussieu.fr/~jch/software/polipo/, which will allow multiple machines to access the same content, fed from your iMac instead of the Internet. You'll need to perform the same sort of proxy chaining as you currently do with GlimmerBlocker. You should look around for a caching proxy that offers plugins for ad blocking, etc.
Limit your bandwidth so you cannot exceed your daily transfer limit
Third, you could perform what is called "rate limiting", "traffic shaping," or "QoS" (Quality of Service) (see http://en.wikipedia.org/wiki/Traffic_shaping). You can do this by installing software (http://intrarts.com/throttled.html is one I have Googled but have not used) or by purchasing a home router that offers this option and putting it between your AE base station and the satellite router. Here's a list from CNET: http://reviews.cnet.com/routers/?filter=500563_5554972_
With this option, you could do some rough math to figure out, given your peak usage, how much bandwidth to allow to your network. I don't think the software solution will work with your iMac proxy solution since people do not connect through the iMac (but the caching proxy will help) so you may have to spend $50 or so on a router and configure the allowed bandwidth.
This will basically cause you to treat your 200MB/day satellite connection as a 18kbps modem assuming 24 hours a day usage. If you really only use it eight hours a day, you could have the equivalent of a 56kbps modem. Fudge up or down based on your comfort level. It will stink but you won't have overages, and you can always "turn it off" if you need to make a big download.
It will also allow your entire family to download video or other media. It will be self-correcting, in that it will be so painful to download high definition video that it won't be worth doing.
Best Answer
So here it is: https://github.com/chetan51/sidestep/issues/34#issuecomment-3137335
In Transmit define