我正在尝试使用 Putty 通过 HTTPS 连接到 Ubuntu(防火墙阻止了通过端口 22 的 SSH)。我阅读了很多关于 SSL、SSH、隧道等的教程和网站,现在我有点困惑。我无法弄清楚什么是正确的方法,我需要什么技术/协议以及如何做到这一点。
环境
- Ubuntu 16.04 TLS(全新安装,托管于云服务)
- Windows 7 上的 Putty(本地)
- 仅通过代理进行 Web 访问;已在我的 Win 机器上配置(端口:3128)
- 防火墙会阻止任何东西(包括用于直接通过 SSH 访问 Ubuntu 终端的端口 22)
我的观察和我迄今为止的尝试
查看sshd_config
Ubuntu 上的 ,我发现只有端口 22 可用于 SSH 访问。添加端口 443 不起作用。我猜是因为仍然使用相同的协议?
然后我研究了一下这项stunnel4
服务。使用教程这里我配置了一切并尝试连接,但失败了。即使没有防火墙(在家尝试时)。我猜原因是隧道只是用来通过 Linux 服务器进行路由?
问题
再说一遍:我想通过 HTTPS 从 Windows(Putty)连接到 Ubuntu 的 SSH 终端。
- 使用什么?例如隧道、https、...
- 如何配置 Ubuntu 服务器(sshd deamon、stunnel4 服务……)?
- 如何配置 Putty?
答案1
只需在 Ubuntu 上配置您的 SSH 守护程序以在 TCP:HTTPS 端口上运行。
然后您需要配置Putty使用代理并使用HTTPS端口连接到Ubuntu服务器,就这样。
你也可以考虑使用 SSH 隧道,请查看这里。
答案2
- 至少有一个 SSH 服务监听端口 443。使用 Putty 连接。
- 如果您的服务器位于 NAT 后面,请将端口从 443 转发至 22。
- AjaxTerm。
- 按照另一个答案进行隧道施工。
- RDP/VNC 连接到外部桌面并在其上打开 Putty。这对于传入(到服务器)流量的跳跃/堡垒/限制性 NSG 防火墙漏洞非常常见。