Bem, a solução padrão para diretórios é LDAP . Isso é mais uma API padrão e um back-end de armazenamento do que um aplicativo completo.
Na prática, você configura um servidor LDAP ( OpenLDAP como uma opção popular) e, em seguida, instala aplicativos que usam o LDAP internamente para lidar com necessidades do usuário.
Por exemplo, você pode:
- autenticar em relação ao LDAP, por exemplo : Logins do Linux , Autenticação Apache
- use o LDAP como um diretório de e-mail de, por exemplo, Thunderbird: link
- use um catálogo de endereços baseado na Web como este: link
Os detalhes dependem, é claro, das suas necessidades reais, mas o LDAP é uma boa base para um diretório unificado.