我曾经在本地计算机上成功配置过通过 SSH SOCKS 代理访问远程主机的 Web 服务器,localhost:5000
例如通过在 Firefox 中输入。我在服务器的防火墙中创建了一条规则,仅允许本地访问此应用程序。
我已经有一段时间没有使用它了,同时我将本地计算机更新到了 Ubuntu 18.10。现在该设置不再起作用了。127.0.0.1:5000
也不行。
SOCKS 设置实际上正在工作 - 我可以看到浏览器检测到本地 IP 是远程服务器的 IP,并且我可以通过 SOCKS 代理正常浏览互联网。事实上,我可以通过将 Firefox 指向服务器的 external_ip:5000 来访问远程 Web 服务器(假设http://180.129.54.204:5000)。同时,从配置为直接连接的不同浏览器程序(Chromium)使用相同的 external_ip:5000 ,结果是连接错误,正如预期的那样。
当使用该标志建立 SSH 连接时-vvv
,每次打开网页时我都会看到活动,但是当尝试打开时localhost:5000
什么也没有发生,就好像请求甚至没有到达 SSH 连接一样。
如果我设置错误的端口并将浏览器指向访问external_ip:5000
,我会收到错误页面“代理服务器拒绝连接”。另一方面,当尝试访问localhost:5000
任何配置时,我只看到“ Unable to connect
”。
我检查了几次,在 Firefox 的网络配置中,“ ”字段为No proxy for
空。
我还尝试将 Chromium 配置为使用 SOCKS 代理而不是 Firefox,但结果是相同的。在这种情况下,还要仔细检查“无代理”为空。
我当地的/etc/hosts
127.0.0.1 localhost
127.0.1.1 My_computer_name
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
我不知道我的系统发生了什么变化。有谁能够指出问题或至少指出我应该监视的日志文件以及在哪里寻找线索?
答案1
在 中更改network.proxy.allow_hijacking_localhost
为 true about:config
。
答案2
我遇到了同样的问题,我通过使用 chrome 和 --proxy-bypass-list 选项设置来解决它,如下所示:
google-chrome --proxy-server=socks://127.0.0.1:9999 --proxy-bypass-list='<-loopback>'
我在这里找到了这个解决方案:
https://superuser.com/questions/1441133/google-chrome-ignoring-localhost-for-socks5-proxy
答案3
您是否也尝试过填写 HTTP 代理字段?
我注意到,当利用我的一个 VPS IP 来隧道时,该字段也被填满了,还有袜子。不过,我检查了我的可见公共 IP,它确实显示了我的 VPS IP。