如何通过已知的 SSH 服务器轻松反弹任意连接,以避免端口防火墙

如何通过已知的 SSH 服务器轻松反弹任意连接,以避免端口防火墙

我正在寻找一种通过已知 SSH 代理连接到任意 SSH 服务器的方法,而无需对这些目标服务器进行硬编码。

例如,假设我无法从当前位置访问 github.com,因为端口 22 已设置防火墙,但我可以连接到家中的 SSH 服务器,因为它通过非防火墙端口。配置 SSH 的最实用方法是什么,以便当我明确想要通过代理连接时,它会这样做?

我想要一个简单的解决方案;只需输入以下内容即可:

$ ssh [email protected]

例如“ssh[电子邮件保护]“。

答案1

添加类似这样的内容到你的.ssh/config

Host *%myproxy
    ProxyCommand ssh [email protected] /bin/netcat -w 1 $(echo %h | cut -d%% -f1) 22

然后,您只需运行类似的命令即可ssh user@server-i-want-to-connect-to%myproxy。您确实需要在服务器上安装 netcat 作为代理。

相关内容