我的目标是拦截来自我的机器的流量,并对现有协议进行一些逆向工程。
为此,我有一个闭源客户端和一个闭源远程服务器。远程服务器仅在端口 443 上运行,并且客户端无法被欺骗连接到具有错误证书的服务器。
所以我的问题如下:我如何(使用 ssh、stunnel 或其他命令行工具)打开本地未加密端口,并将流量包装到基于远程 https 的服务器。
答案1
如果客户端只能连接到 SSL/TLS 服务器,并且不会被欺骗接受错误的证书,那么您将无法拦截通信。这就是使用 SSL/TLS 并正确检查证书的全部意义所在。
如果您可以让客户端连接到普通的 HTTP 端口(这听起来不太可能,但如果您可以更改它连接的地址,那就有可能),在这种情况下,您确实可以使用 stunnel 作为 SSL/TLS 客户端。