通过代理连接SSH

115

我在这里做什么其实并不清楚,请您谅解,如果您能帮助我,我会非常感激!

我正在尝试通过代理连接到我的虚拟服务器,但无法连接,连接就一直挂着。我猜测这是因为无法通过我们的代理。

我在家也尝试了完全相同的操作,效果完美。我使用Terminal在OS X上进行连接。

请问有人可以指导我如何通过SSH穿过代理吗?


你目前是如何尝试通过代理连接的? - Richard Christensen
2
你应该在ServerFault或SuperUser上提问,这样你会得到更好的回答。 - Spencer Kormos
2
请接受答案。 - Millemila
2
对于那些尝试使用netcat的人:**你需要使用openbsd软件包!!! netcat-openbsd ** https://www.linuxquestions.org/questions/linux-newbie-8/how-to-sftp-using-a-socks-v5-proxy-789824/#post3867664 - Y00
1
netcat 在 Mac/Linux/openbsd 上有不同的实现,请注意它们参数之间的差异,并将适用于您版本的一份复制粘贴! - Y00
16个回答

2

编辑配置文件:

.ssh/config

Host github.com
    HostName github.com
    User git
    Port 22
    ProxyCommand nc -X 5 -x 192.168.49.1:8000 %h %p

并测试:

ssh -T git@github.com

Hi [username]! You've successfully authenticated, but GitHub does not provide shell access.

1

我曾在Ubuntu下使用以下行(可以用适当的命令行参数替换)在我的.ssh/config中。

Host remhost
  HostName      my.host.com
  User          myuser
  ProxyCommand  nc -v -X 5 -x proxy-ip:1080 %h %p 2> ssh-err.log
  ServerAliveInterval 30
  ForwardX11 yes

使用Msys2时,安装了gnu-netcat后,文件ssh-err.log显示选项-X不存在。nc --help确认了这一点,并似乎表明没有替代选项来处理代理。 因此,我安装了openbsd-netcatpacman询问后删除了gnu-netcat,因为它与openbsd-netcat冲突)。初看起来,检查相应的手册页面,openbsd-netcat和Ubuntu netcat似乎非常相似,特别是关于选项-X-x。 有了这个,我毫无问题地连接了。

其中 1080 可以是 socks5 端口 - Ferris

1

要连接到SOCKS5代理,只需运行以下命令:

ssh user@destination -o "ProxyCommand=nc -X 5 -x proxyhost:proxyport %h %p"

或者将代理设置添加到.ssh/config文件中。

Host destinaion_host
    HostName destinaion_host
    User ali
    ProxyCommand nc -X 5 -x proxyhost:proxyport %h %p
    ServerAliveInterval 60
    ServerAliveCountMax 10

那么您只需运行ssh destinaion_host

特别感谢 @maxim-k


0
在我的情况下,由于我在中间有一个跳板主机或堡垒主机,并且由于这些堡垒节点上的签名已经发生了变化,因此它们被导入到known_hosts文件中后,我只需要从以下文件中删除这些条目/行:
/Users/a.abdi-kelishami/.ssh/known_hosts

从上述文件中删除那些涉及堡垒主机的行。

0
尝试在相关命令中使用 -o "ProxyCommand=nc --proxy HOST:PORT %h %p"。它在 OEL6 上有效,但需要根据 OEL7 的要求进行修改。

0

如果在CentOS / RHEL上有任何人遇到以下问题

nc: invalid option -- 'X'

使用这个ProxyCommand
ProxyCommand nc --proxy  HOST:PORT --proxy-type http %h %p

这已经在这个答案中提到,并且也适用于OS X - Cadoiz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接