如何在 Linux 中通过代理使用 SSH

如何在 Linux 中通过代理使用 SSH

我正在尝试使用 bash shell(Ubuntu 11.10)中的 SSH 通过工作中的代理连接到我的家乡大学。

当我在 Windows 中从同一位置使用 PuTTY 时,我可以在代理选项卡中输入代理详细信息,并且它可以正常工作。但是,我无法在 Ubuntu 中使用它。

我使用系统设置中的网络代理对话框将 Ubuntu 配置为在系统范围内使用代理。但是,SSH 不起作用 - 要么无法解析主机名,要么连接超时。

我究竟做错了什么?

我可以浏览互联网(也可以浏览 HTTPS 网站),也可以更新我的软件包,但我不能使用 SSH、FTP 或其他任何东西。

我对 PuTTY 和网络代理设置使用的代理设置是:

proxy-name:8888 (same for all protocols)

说实话,我不知道那是什么样的代理。

答案1

我认为 Putty 中的代理实现很可能通过代理服务器执行了 CONNECT。没有多少代理配置为接受这种类型的连接,因为这意味着代理可用于搭载任何类型的连接,而通常部署代理服务器来控制允许哪些内容离开边界。

如果是这种情况,那么我认为 corkscrew 就是您想要的。这将建立与代理的初始连接并启动 CONNECT。然后,您通过此“隧道”推动 ssh 连接。

有关于如何做到这一点的描述这里。corkscrew 可能位于你的发行版的存储库中,因此在安装之前请先尝试一下下载

答案2

相关内容