如何通过 SOCKS5 代理使用 MacPorts(rsync)?

如何通过 SOCKS5 代理使用 MacPorts(rsync)?

MacPorts 依靠 rsync 来完成其工作,而我依靠 SOCKS5 代理来完全访问互联网。如何让 rsync 通过我的代理运行其所有查询?

答案1

除了 Sirex 的答案之外,您还可以使用nc(1)(netcat)使用代理。

再次修改您的~/.ssh/config文件:

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

然后运行

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

并且 rsync(或者说 ssh)将自动使用代理命令。

这假设存在SOCKS代理运行在localhost8080 端口,你可以使用

ssh -D 8080 proxyserver.com

我个人使用

ssh -qfxND 8080 proxyserver.com

要设置代理隧道,-qfxN使命令在后台静默运行,请参阅ssh(1)

答案2

抱歉,只是粘贴一个网址,但它这里解释。本质上你安装连接实用程序,添加如下内容到~/.ssh/config

Host stokebloke.com
    ProxyCommand connect -S user@socks-server:1080 %h %p

然后使用:

rsync --progress -avrz -e ssh src_dir/ [email protected]:~/dest_dir/

相关内容