我正在访问一个 Web 服务,不幸的是,我无法在此处粘贴 uri,因为它位于内部网络内,对我们没有任何帮助。Web 服务运行良好,但问题是它的维护者仅支持 http,而无意实现 https。
所以,我的问题是... 有没有办法强制加密而不使用 https?我想 SSH 隧道会非常有效,但我不确定在这种情况下如何实现它。
有任何想法吗?
答案1
SSH 隧道非常简单。只需确保防火墙不允许 HTTP 出站(否则隧道将失去意义)并允许 SSH 出站即可。
然后,您只需将 localhost:80(或任何端口)隧道传输到本地端口即可。
如果你的计算机运行 *nix,这里有一个示例:
ssh webserver.example.com -L 8080:localhost:80 -fN
假设 ssh 服务器与 Web 服务器相同,此方法将有效,如果不是,请使用 Web 服务器的 IP 而不是 localhost。-fN 将隧道置于后台,再次释放终端。
隧道建立后,您可以在计算机上浏览 localhost:8080 上的服务器。
如果您使用的是 Windows 机器,请使用 PuTTY 之类的程序。这里是一份带有屏幕截图的优秀操作指南。