How to use MacPorts (rsync) through a SOCKS5 proxy

mac-osxPROXYrsyncsocks

MacPorts relies on rsync to do its job, and I rely on a SOCKS5 proxy to get full access to internet. How do I make rsync run all its queries through my proxy?

Best Answer

Alternatively to Sirex' answer, you can use nc(1) (netcat) to use the proxy.

Again, modify your ~/.ssh/config file:

Host server-prox
        Hostname www.server.com
        ProxyCommand /usr/bin/nc -x localhost:8080 %h %p

then run

rsync -e ssh server-prox:path/to/files

and rsync (or rather ssh) will automatically use the proxy command.

This assumes there is a SOCKS proxy running on localhost port 8080, which you can get with

ssh -D 8080 proxyserver.com

Personally I use

ssh -qfxND 8080 proxyserver.com

to set up a proxy tunnel, where -qfxN make the command run quietly in the background, see ssh(1).