使用 Fedora Directory Server 实现高可用性 LDAPS

使用 Fedora Directory Server 实现高可用性 LDAPS

我被要求使用 Fedora Directory Server 设置 HA LDAP 架构 - 该公司目前使用 Sun DS,但想摆脱 Sun。

我想使用网络硬件负载均衡器(Cisco),以便客户端可以仅使用“ldap.business.com”作为 LDAP 服务器名称,而隐藏其后面 4 个服务器的真实 IP。

对于普通 LDAP,这很好用,但现在我想使用 TLS 添加 LDAPS。证书设置过程似乎在 Fedora 网站上有很好的记录,但我不确定如何设置 LDAPS 以实现高可用性,因为我认为不允许使用星型证书。

循环 DNS 不够强大,因为它依赖于 TTL - 仍然有可能发生 LDAP 中断。

答案1

我们在 Novell eDirectory 上处理 HA LDAPS,但问题类似。我们已设法通过证书上的主题备用名称解决该问题。主题备用名称简单地说就是您可以放在证书上的备用主题,以便为其赋予多个名称。这就是您(理论上)可以拥有一个对 pop3.organisation.org、imap.organisation.org 和 webmail.organisation.org 有效的证书的方式。它们相当新,但不如扩展验证证书新。

大多数现代 LDAP 客户端都足够智能,能够正确处理 SAN。此外,我们管理颁发证书的证书颁发机构,因此获取 SAN 对我们来说很简单。如果您最终要为证书付费,那么事情就没那么简单了,CA 宁愿您购买多个证书。不幸的是,对于很多人来说,一些软件包只能加载一个证书。这就是 SAN 的作用所在。

我们使用硬件负载均衡器 (F5 BiP) 和三台 LDAPS 服务器。首次设置时,我们仅使用负载均衡器 IP/DNS 的网络名称创建证书。直接连接到 LDAP 服务器的客户端出现证书错误,事实证明这是促使人们使用负载均衡器 IP 地址(他们本应一直这样做)的诱因。

从那时起,我们就转而使用主题替代名称,因为它对运行在这些服务器上的 Novell 软件有一些负面影响。但我们确实让它在没有 SAN 的情况下运行了一段时间。每个证书上都有三个名称:

  • 负载均衡器 IP 的 IP 地址
  • 负载均衡器 IP 的 DNS 名称
  • 直接主机的 DNS 名称

这确实会将后端主机名暴露给那些窥探者,但我们不认为这是一个漏洞。其他人可能认为如此。

这就是我们所做的,并且它对我们很有效。

答案2

您可以在负载均衡器上进行 SSL 卸载。您可以使用硬件,但通常您必须为卸载付费。或者您可以尝试 haproxy,这是一个免费的负载均​​衡器,支持 SSL 卸载(开发版)>。另一个选择确实是在 de 证书中使用主题 alt 名称,但如果您想要扩大规模,则需要重新颁发所有证书。

因此,我会选择负载平衡 SSL 卸载选项。要么是硬件选项(您应该调查许可证成本),要么是软件选项。然后确保 LB 通过普通 HTTP 连接,并将其放在用户无法连接的网段中。也许 haproxy 不支持 ldap ssl 卸载,您需要另一种解决方案。您还可以使用 corosync/pacemaker 并使用证书。

相关内容