我有一个在OSX服务器机器上运行的OpenDirectory服务器,我想通过一个从服务器来提高服务的可靠性。 问题是,我只有1个OSX服务器,但我有大量的Linux服务器可用。 我对苹果与OpenDirectory集成的工具感到满意,但鉴于苹果最近停止使用XServe,我对继续使用苹果硬件并不感兴趣。
我记得听说OpenDirectory是基于OpenLDAP代码库(现在远程)。 有什么办法可以从OpenDirectory复制到OpenLDAP,而不必购买另一台OSX服务器?
有点。 Open Directory域实际上是3个半集成的服务:大多数数据的LDAPv3(由相当标准的OpenLDAP服务器提供),用于单点loginauthentication的Kerberosv5 KDC(由MIT的Kerberos实现提供,有一些调整)和SASL-用于其他types的authentication(至less部分基于CMU SASL项目提供)。
复制LDAP组件不应该太困难 – 像其他OpenLDAP实现一样configurationsyncrepl,然后将额外的服务器URL添加为cn = ldapreplicas,cn的apple-ldap-replica属性的值= config,whateveryoursearchbaseislogging在LDAP(这告诉客户关于复制品)。
密码服务和Kerberos更难。 据我所知,苹果公司把CMU的SASL代码大大扩展了,所以我认为没有很大的努力就不可能复制它。 Kerberos很容易…除了它依赖密码服务器进行复制(复制networking中的密码服务器相互更新新密码,然后每个人负责在同一台服务器上更新Kerberos KDC)。 请注意,在cn = config下面还有LDAPlogging,告诉客户端所有可用的密码服务器和KDC在哪里; Kerberos一个是相当明显的,但密码服务器是一个更难以发现。
所以你可以做LDAP复制,但我不认为密码服务器和KDC副本是实用的。 如果您没有备份这些服务,则复制LDAP没有太大的好处。
如果只是正常运行时间,那么您担心如何将其中一台Mac Mini服务器添加为副本? 他们不以任何方式为高吞吐量服务,但作为紧急备份,我认为他们只是事情。