我是一名软件工程师,除了做过开发人员处理部署问题的工作外,我不一定是一个操作人员。
我正在开发的web应用程序的各个组件将通过不同的基于云的‘m进行分发。什么是最好的或至少一个良好的做法去加密通信,例如,基于node.js的http-服务和数据库-每个人生活在各自的实例中?
我在想盒子之间的SSH-tunnels ..。你的服务器故障专家怎么说?
发布于 2012-11-05 13:10:17
这似乎是危险的接近购物问题,这是禁止在SF (和其他SE网站,显然)的常见问题。您也没有提到什么操作系统将运行在云服务器上;但我将继续假设它是Linux。
尽管如此,我的首选是IPSec,因为它内置在Linux中,它非常健壮,并且在网络级别上集成得很好(所以您不必处理路由表)。身份验证不会有任何问题,因为所有这些都是通过预先共享的密钥或证书完成的。它与iptables防火墙集成得很好。在延长网络中断后,它恢复得很好。它通过标准的/etc/rcN.d脚本在启动时自动出现。在IPSec隧道就位后,应用程序只需要在IP地址上抛出数据包;加密从那里一直持续到堆栈下。
失败了,OpenVPN。它比IPSec更复杂,但也有许多相同的优点。
如果不行的话,ssh隧道,如果你必须的话--但是一旦网络中断使它们掉下来,你就会一直到处跑,把它们放回去。我宁愿让(更多的)根管工作,也不愿用ssh隧道做这件事。
发布于 2012-11-05 13:30:43
眩晕也可能是一个有趣的选择。如果您有几个VM(而不仅仅是两个),为它们设置一个VPN并在节点之间路由所有流量在某种程度上也是明智的--这将永远保护“一切”--如果您添加了另一个互连,它将在默认情况下加密,而不需要设置额外的ssh/stunnel转发。实施IPSec可能是另一种选择。
https://serverfault.com/questions/445526
复制相似问题