首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SSH隧道不工作

SSH隧道不工作
EN

Server Fault用户
提问于 2012-09-15 13:00:49
回答 4查看 20.5K关注 0票数 9

我正在尝试使用我的服务器作为ssh的“代理”。但是,使用

代码语言:javascript
复制
ssh -D localhost:8000 user@myserver

不管用。

我用ssh和putty在不同的机器上测试了这一点--它连接得很好,但是当我相应地设置浏览器设置时,我只会得到一个错误“连接已被重置”。我试着用wireshark监控交通,但我甚至没有看到隧道的交通。我显式地将AllowTcpForwarding设置为“是”,但我仍然不能使用隧道。

在详细模式下运行ssh时,我不会收到任何错误,但是

代码语言:javascript
复制
debug1: Connection to port 8000 forwarding to socks port 0 requested.
debug1: channel 3: new [dynamic-tcpip]
debug1: channel 3: free: dynamic-tcpip, nchannels 4

我做错了什么?

EN

回答 4

Server Fault用户

发布于 2014-07-25 11:50:12

这是一个旧的帖子,但我认为这是值得张贴可能的解决方案。

我在几个浏览器上也有同样的问题,结果是配置问题。如果是这样的话,下面的命令应该工作并显示远程计算机的IP地址:

代码语言:javascript
复制
links -socks-proxy localhost:8000 www.myipaddress.com

首先,对这个问题的评论是正确的,因为浏览器可能尝试使用HTTP而不是SOCKS代理,在这种情况下,我看到来自ssh的输出与OP的帖子中的输出完全相同。虽然我确实设置了SOCKS代理,但问题是我没有取消HTTP代理。一旦做到这一点,一切就像预期的那样开始运作。

票数 6
EN

Server Fault用户

发布于 2012-09-15 13:07:15

正确的命令是:

代码语言:javascript
复制
ssh user@server -D 8000

在这种情况下,您仍然无法连接,检查其他进程是否正在使用此端口。最容易做到这一点的方法是:

代码语言:javascript
复制
netstat --listen |grep 8000

如果是这样的话,只需使用另一个端口。

票数 2
EN

Server Fault用户

发布于 2015-02-07 20:30:21

我遇到了同样的问题,我的修复方法是将-g选项添加到命令中:

代码语言:javascript
复制
$ ssh -D 12324 localhost:8000 user@myserver -g
票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/427703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档