我们的系统pipe理员已经build立了一个负载均衡器来处理所有的HTTPS请求,并以HTTP的forms代理它们到服务器。 服务器没有HTTPS,所以LB和服务器之间的连接是不安全的,但连接到LB。 我从来没有见过这样的事情,我不确定这是做到这一点的正确方法。 实际的服务器不可公开使用,只能通过负载平衡器。
这足以让它安全吗? 可以绕过负载平衡器吗?
这是一个标准的技术?
这通常被称为“SSL卸载”,在较大的设置中很常见。 它减less了后端服务器的负载,因为许多硬件负载平衡器都有特殊的encryption芯片,可以高速处理大量的SSLstream量。 另一个好处是,你只需要将SSL证书和私钥存储在一个地方,只需要在证书即将到期时将其replace掉。
要保证安全的一个要求是负载均衡的节点不能以任何其他方式到达。 通常情况下,这些节点只连接到私有IP地址,即使在networking内部也不会路由,所以服务器和负载均衡器之间只有一个二层(以太网)networking,没有其他方式连接到服务器。
在某些情况下(例如托pipePCI兼容设置),这是不够的,因此经常使用SSL重新encryption。 在这种情况下,负载平衡器和服务器之间的连接也是通过SSL进行的。 负载平衡器解密来自客户端的stream量,做它的魔术(例如,select正确的节点来代理stream量,做一些重写技巧等),然后在连接到后端服务器时再次encryption它。
如果负载均衡器和内部服务器之间的networking是安全的,那么它们之间使用http或https就没有区别。