![同一服务器上有 2 个 LDAP 实例](https://linux22.com/image/554963/%E5%90%8C%E4%B8%80%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E6%9C%89%202%20%E4%B8%AA%20LDAP%20%E5%AE%9E%E4%BE%8B.png)
我需要在同一台 ubuntu 服务器上运行 2 个 LDAP 实例,它们具有相同的结构(ou=People,dc=example,dc=org
例如,两者都写入),但具有应保持独立的数据。 2 个 LDAP 实例不需要不同的权限,因此我可以使用相同的根 DN,并且我不需要有 2 个单独的端口用于跟踪/防火墙目的。
是否值得运行 2 个 LDAP 实例,或者我是否只可以运行带有 2 个独立数据库的 1 个 LDAP 实例?
您是否恰好知道与该主题相关的公开文献?
答案1
您不能在为同一基本 DN ( ou=People,dc=example,dc=org
) 配置的单个 LDAP 实例中有两个数据库。实现此目的的唯一方法是在系统上运行两个单独的 LDAP 实例 - 这当然需要 (a) 在两个单独的端口上运行它们或 (b) 绑定到两个不同的 IP 地址。您的用例有点奇怪,如果您能够向我们提供一些基本要求,我们可能会为您提供更好的答案。
您可以在两个实例之间共享大部分配置,尽管您显然需要为每个实例设置不同的数据库目录。通过将常用配置选项放在一个文件中并使用指令include
将其导入到每个实例的配置中,您可能会让事情变得更轻松。
答案2
我很确定不可能有两个具有相同基本 DN 的不同数据库。
因此你唯一的选择就是使用两个实例。
就文档而言,我推荐“火箭科学家的 LDAP”http://www.zytrax.com/books/ldap/
答案3
根据你如何区分这两个实例,你也可以使用http://myvd.sourceforge.net/向全世界仅呈现一个服务器。
答案4
您可以在同一系统上配置具有相同基本 DN 的两个实例。它们将在不同的端口号上运行。尝试使用 389 目录服务器并在同一台机器上安装两个实例。
我能想到的另一种可能的解决方案是在 OpenLDAP 2.4 中使用两个不同名称 dc=example,dc=com 和 dc=example1,dc=com 的数据库,并使用 slapo-rwm 将 dc=example1,dc=com 的条目显示为 dc=example,dc=com,对于客户端来说它将是透明的。相同的 basedn、相同的 IP 和相同的端口。
希望有所帮助。