Un des bons défis que j'ai eu en entreprise était de déployer un controleur de domaine. J'ai commencé par penser à SLES, mais c'était vraiment cher. Microsoft a été assez simple à éliminer: administrativement il était trop cher et personellement je ne voulais absolument pas encourager une solution douteuse et peu flexible.
Il me restait donc une seule solution: Samba.
Croyez-le ou non, mais Samba peut-faire un controlleur de domaine avec pas mal tous les features de Microsoft Active Directory.
Pour rendre le projet un peu plus flexible, j'ai configuré le controlleur de domaine avec un service d'annuaire OpenLDAP. J'en suis très content car les besoins de l'entreprise ont tranquillement grandits et nous sommes maintenant à l'aube d'une architecture multi-sites.
Premièrement, qu'est-ce qu'une configuration "multi-master"? C'est une configuration où chaque serveur peut envoyer des mises à jours aux autres serveurs. La modification la plus récente gagne. Cela permet majoritairement de tolérer les pannes et assurer de meilleures performances. Chaque client communique avec son serveur OpenLDAP le plus près. Avec cette architecture, il est simple d'avoir un gros arbre pour un nombre illimité (n-way) de serveurs OpenLDAP.
Ensuite, pourquoi TLS? C'est assez simple. Lorsque nous faison des mises à jour entre les sites, il serait très peu sécuritaire d'envoyer l'informations de tous les usagers en claire dans Internet.
Voici un exemple de configurations avec Ubuntu.
1. Générons les certificats
sudo mkdir /etc/ldap/ssl
cd /etc/ldap/ssl
sudo openssl req -newkey rsa:1024 -x509 -nodes -out server.pem -keyout server.pem -days 3650