Answers:
我相信OP正在寻求一种隧道所有流量的方法,而不仅仅是让您设置代理设置的流量。问题是某些程序不允许您指定代理设置,这是shuttle起作用的地方。sshuttle允许任何程序通过您的隧道,而不仅仅是您指定代理服务器的程序。
更好的是-使用PuTTY并通过它进行设置。您不需要ProxyCap之类的东西,只需将您的SOCKS浏览器代理设置指向您为-D指定的任何端口上的loaclhost。
关于这一点的重要说明。“问题解决”不是很正确。是的,您的正常浏览器流量http / s将通过SSH隧道,但是仍然存在一些问题,此方法可以解决其中一个问题,但不能解决。
关于shuttle的妙处在于,它不会将TCP置于TCP之上。这样做很糟糕,这就是为什么他们不这样做。他们在通过SSH(TCP)隧道发送之前在本地对所有流量进行多路复用,然后在另一端(ssh服务器端)进行重组。这很可能是OP提出这个问题的原因。找到这篇文章时,我正在寻找具有这种功能的东西...
要注意的第二件事是,除非您通过隧道重定向所有来自浏览器的DNS流量,否则您将通过网络“泄漏” DNS查询,这首先会否定SSH隧道的目的。
例如,使用Firefox在URL字段中输入“ about:config”,不带“”,接受“我会小心”,然后过滤“ socks_remote_dns”,然后双击该条目将其更改为“ True”。就是这样,您的浏览器DNS现在也将通过指定的代理端口。不过,仍然不能解决TCP over TCP问题,因此您将无法获得良好的会话体验。
可以通过以下网址在tcp上的tcp上找到更多阅读内容:https : //github.com/apenwarr/sshuttle
对于Windows,使用Cygwin和ssh到目的地:
ssh -D 8000 -N user@destination.com
现在,下载ProxyCap for Windows,并在端口8000上将socks5代理安装到本地主机。问题已解决,一切都通过ssh隧道进行。
您可以在虚拟机上运行shuttle,然后将流量重定向到该虚拟机。看一下这个: