我被要求使用 Fedora Directory Server 建立一个 HA LDAP 架构——该公司目前使用 Sun DS,但希望远离 Sun。
我想使用网络硬件负载平衡器(Cisco),以便客户端可以使用“ldap.business.com”作为 LDAP 服务器名称,隐藏其背后 4 个服务器的真实 IP。
对于普通 LDAP,这很好用,但现在我想使用 TLS 添加 LDAPS。证书设置过程在 Fedora 网站上似乎有很好的记录,但我不确定如何将 LDAPS 设置为高可用性,因为我认为不允许使用星级证书。
循环 DNS 不够健壮,因为它依赖于 TTL - 仍然可能出现 LDAP 中断。
我们在 Novell eDirectory 上处理 HA LDAPS,但问题类似。我们已经设法解决了证书上的主题备用名称问题。简单地说,Subject-alternate-names 是可以放在证书上的备用主题,以便给它多个名称。这就是您如何(理论上)拥有对 pop3.organisation.org、imap.organisation.org 和 webmail.organisation.org 有效的单一证书的方式。它们是相当新的,但不如扩展验证证书那么新。
大多数现代 LDAP 客户端都足够聪明,可以正确处理 SAN。此外,我们管理生成证书的证书颁发机构,因此获得 SAN 对我们来说很简单。如果您最终要为证书付费,这并不是那么简单,CA 宁愿您购买多个证书。不幸的是,对于很多人来说,一些软件包只能加载一个证书。这就是 SAN 的用武之地。
我们使用一个硬件负载平衡器 (F5 BiP) 和三个 LDAPS 服务器。当我们第一次设置它时,我们只使用负载平衡器 IP/DNS 的网络名称创建了证书。直接连接到 LDAP 服务器的客户端遇到证书错误,这被证明是促使人们使用负载平衡器 IP 地址的动机,就像他们一直以来应该做的那样。
从那以后,我们开始使用主题备用名称,因为它会对在这些服务器上运行的 Novell 软件产生一些负面影响。但是我们确实让它在没有 SAN 的情况下运行了一段时间。每个证书上都有三个名称:
这确实会将后端主机名暴露给窥探者,但我们不认为这是一个漏洞。其他人可能。
这就是我们所做的,它对我们有用。
您可以在负载均衡器上执行 SSL-off 加载。您可以使用硬件,但通常您必须为卸载许可证付费。或者你可以试试 haproxy,它是一个免费的负载均衡器,支持 SSL 卸载(开发版)>。另一种选择确实是在 de certs 中使用主题 alt 名称,但是如果您想扩大规模,则需要重新颁发所有证书。
所以我会选择负载平衡的 SSL 卸载选项。要么是硬件(您应该调查许可证成本),要么是软件。然后确保LB通过正常的HTTP连接,并将其放在用户无法连接的网段中。也许 haproxy 不支持 ldap ssl 卸载,您需要另一种解决方案。您还可以使用 corosync/pacemaker 并使用证书。