我们有一个应用程序(用PHP编写),可从多个远程Progress数据库中获取数据。 它现在的工作方式,我们要求我们的客户在防火墙中打开一个端口到我们的IP,然后我们就可以使用PHP代码中的ODBC连接来运行查询。
问题是通过互联网传输的数据是未加密的。
我们考虑了两种解决方案,但我们都遇到了两个问题:
更新Progress DB以使用SSL。问题:这要求我们的客户改变他们与其他供应商的联系方式,使他们全部使用SSL。
在我们和客户之间创建VPN连接。问题:我们有很多客户端,IP /子网可能重叠。
我们还能做些什么来将数据传输给我们加密?
感谢。
答案 0 :(得分:2)
在您的系统之间创建一个SSH隧道 - 只要客户端系统支持SSH连接,这将允许它们按原样运行,通信将被加密。
https://en.wikipedia.org/wiki/Tunneling_protocol
本文档看起来相当完整: https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-tunneling-on-a-vps
您可以在此处找到Windows版本的Open SSH: http://www.mls-software.com/opensshd.html