如何通过 HTTPs ssh 进入服务器?

如何通过 HTTPs ssh 进入服务器?

我有一台服务器,它设置了反向代理 (NGINX),用于在一台服务器上托管我所有其他网站/服务。我想创建一种通过 HTTP 通过 SSH 进入该服务器的方法。我需要这样做的原因是,我的服务器运行在具有端口转发功能的 VPN 后面,因此外部互联网只能通过单个 IP 和单个端口访问我的服务器。

我有点困惑这是否可行或者我应该做什么。据我所知,我应该在该服务器上设置 HTTP 代理。我可以使用 SQUID 来实现这一点吗?

请寻求一些指导。

答案1

传统方法是让管理员建立自己的 VPN 连接来连接到您的服务器要进行维护的网络。

但是有一些工具允许“协议多路复用”,让你能够同时使用 http(s) 和 ssh(以及其他协议)连接到同一个端口,随后 ssh 协议将被转发到你的 ssh 守护进程,而你的网络流量将被转发到你的网络服务器/反向代理:例如 sslhhttps://www.rutschle.net/tech/sslh/README.html

答案2

一些 SSH 客户端(尤其是 PuTTY)支持“开箱即用的”通过 HTTP 进行 SSH 隧道传输。在 PuTTY 中,您只需要在设置连接时在“代理”选项卡中选择“HTTP”作为代理类型(当然还要填写您的代理详细信息)。

对于常规命令行 ssh 客户端,您可以使用以下工具代理隧道或者HTTP隧道. 在 Google 上搜索“SSH over HTTP”,会有很多结果。

您可能需要考虑的另一个选择是安装基于 Web 的终端应用程序,例如盒中壳在您的服务器上。然后,您就可以直接在浏览器中使用终端会话(这不使用 SSH,它只是直接从 Web 登录到您的服务器)。

相关内容