我有两台远程机器,remote1 和remote2。remote2 只运行 sshd,我不能在上面运行其他任何东西。remote1 是一个成熟的服务器,我可以完全访问它。我可以在 remote2 上运行一个 SOCKS 代理,通过ssh -f -N -D *:8080 me@remote2
它我可以在 remote1 的 8080 端口上公开一个 SOCKS 代理。我想对此进行身份验证,以免代理处于打开状态。我怎样才能做到这一点?
似乎我应该能够使用delegate,但我什至似乎无法使其 HTTP 代理功能正常工作。当我运行时,delegated -r -P8081 SERVER=http PERMIT="*:*:*" REMITTABLE="*"
我什至无法让它在端口 8081 上工作。
无论如何,我希望有人能指出我正确的方向,让我验证对 SOCKS 代理连接的访问?也就是说,我希望能够将我的浏览器代理指向 remote1,并通过 SSH SOCKS 代理/隧道浏览互联网到 remote2。
squid 不支持 SOCKS 父级 =(
谢谢!
尼龙支持带有 ACL 的 SOCKS 镜像
http://monkey.org/~marius/pages/?page=nylon
如果您希望 remote1:8080 只能从某个本地网络访问,请将“-D *:8080”更改为“-D $IP:8080”,其中 $IP 是 remote1 的本地网络地址。
如果你愿意
you <-(ssh)-> remote1 <-(ssh/socks)-> remote2 <-> internet
,你可以这样做:您还可以设置一对 stunnels 或 socats 来保护您与 SSL 证书的连接。