Samba Active Directory : guide complet pour déployer un contrôleur de domaine libre

active directory samba

Payer une licence Windows Server pour faire tourner un contrôleur de domaine sur cinq machines Linux – ça ressemble au boss fight le plus inutile de votre infrastructure. Samba 4 AD DC existe depuis 2012 et répond exactement à ce problème, pourtant beaucoup d’administrateurs l’ignorent encore ou en ont une image datée de l’époque Samba 3.

Origines et histoire de Samba Active Directory

Andrew Tridgell a écrit la première version de Samba en décembre 1991 et janvier 1992, alors qu’il était doctorant à l’Australian National University. Son objectif initial était simple : faire communiquer son PC sous DOS avec un serveur Unix via le protocole propriétaire SMB de Microsoft. Ce petit projet personnel allait devenir l’une des pierres angulaires du logiciel libre en entreprise.

Samba 3 a longtemps été limité au partage de fichiers et d’imprimantes. Le projet Samba 4, lui, démarre en 2003 avec une ambition autrement plus grande : implémenter un vrai contrôleur de domaine Active Directory. Un chantier titanesque, qui prend près de dix ans.

Le 20 décembre 2007, un jugement antitrust européen oblige Microsoft à publier la documentation technique de ses protocoles réseau clés – LDAP, Kerberos, RPC et SMB notamment. Cette décision judiciaire donne à l’équipe Samba l’accès aux spécifications qu’elle cherchait à rétroingénierer depuis des années. Le développement s’accélère. Samba 4.0.0 est publié le 11 décembre 2012, selon samba.org. La licence GPLv3, adoptée à partir de la version 3.2.0, garantit que le code reste libre pour toujours.

Qu’est-ce que Samba Active Directory?

Samba AD est une implémentation libre d’un contrôleur de domaine Active Directory, capable de remplacer Windows Server dans ce rôle précis. Il fonctionne sous Linux ou BSD, distribué sous licence GPLv3, et intègre nativement les protocoles DNS, LDAP, Kerberos, RPC et SMB 3.0 – les mêmes briques que Windows Server utilise pour gérer l’authentification et les ressources d’un domaine.

La différence fondamentale avec Samba 3 mérite d’être posée clairement :

  • Samba 3 : partage de fichiers et d’imprimantes, jonction de domaine NT4 basique, pas de vrai AD
  • Samba 4 AD DC : contrôleur de domaine Active Directory complet, gestion des GPO, Kerberos, réplication multi-DC, compatibilité Windows 10/11

La version 4.24.0 a été publiée le 18 mars 2026. Le projet est maintenu activement, avec des sorties régulières qui corrigent des failles de sécurité et étendent la compatibilité. Ce n’est pas un projet abandonné que vous maintenez sous survie artificielle.

Active Directory natif vs Samba : quelles différences concrètes?

La question revient souvent dans les forums d’administration système : active directory vs samba, lequel choisir? La réponse dépend de votre environnement, pas d’une préférence théorique.

Critère Windows Server AD Samba 4 AD DC
Coût de licence Plusieurs milliers d’euros Gratuit (GPLv3)
Niveau fonctionnel max 2022 et au-delà 2012 R2 (depuis Samba 4.19)
GPMC graphique native Oui Non (ligne de commande via samba-tool)
Active Directory Certificate Services Complet Partiel (Auto Enrollment depuis 4.16)
Clients Windows 10/11 Complet Complet au niveau 2008 R2+
Environnement full-Linux Surdimensionné Adapté

Samba couvre l’essentiel de ce dont une PME ou un laboratoire a besoin. Ce qu’il ne remplace pas encore : ADFS (Federation Services), ADCS complet, Azure AD Connect natif, et les niveaux fonctionnels 2016/2019/2022. Si votre environnement dépend fortement de ces fonctionnalités, Windows Server reste le bon choix.

Comment installer Samba Active Directory sur Linux (Debian/Ubuntu)?

active directory samba 4

Pour déployer samba ad debian, vous devez d’abord préparer votre environnement. Le serveur doit avoir un nom d’hôte fixe, une adresse IP statique, et un DNS pointant vers lui-même. Voici les étapes dans l’ordre :

  • Prérequis : Debian 11/12, nom d’hôte FQDN défini (ex : dc1.mondomaine.lan), IP statique, package samba installé via apt install samba krb5-user winbind
  • Arrêter les services existants : systemctl stop smbd nmbd winbind puis désactiver Samba en mode classique
  • Provisionnement du domaine : lancer samba-tool domain provision --use-rfc2307 --interactive et renseigner le realm (MONDOMAINE.LAN), le domaine NetBIOS, le niveau fonctionnel et le mot de passe administrateur
  • Configuration de Kerberos : copier le fichier généré vers /etc/krb5.conf
  • Activation du service AD DC : systemctl start samba-ad-dc puis systemctl enable samba-ad-dc

Pour la question « comment activer Samba ? » sur Debian, la réponse est précisément là : on n’active pas smbd mais samba-ad-dc, un service distinct. Les deux ne doivent jamais tourner simultanément sur le même serveur.

Pour vérifier l’installation, lancez samba-tool domain info 127.0.0.1 et kinit administrator@MONDOMAINE.LAN. Si Kerberos répond avec un ticket valide, votre DC fonctionne. Pour les environnements conteneurisés, active directory samba docker est une option viable avec l’image ghcr.io/servercontainers/samba, qui monte un AD DC dans un conteneur avec les volumes persistants pour la base LDAP et Sysvol.

Niveaux fonctionnels et compatibilité Windows : ce que Samba 4 supporte vraiment

Par défaut depuis Samba 4.0, le niveau fonctionnel est Windows Server 2008 R2. C’est suffisant pour gérer des postes Windows 10 et 11, et pour répondre aux exigences du framework NIST 800-171, selon la documentation SambaWiki. Depuis Samba 4.19, l’option ad dc functional level = 2012_R2 dans smb.conf permet de monter jusqu’au niveau 2012 R2, ce qui débloque quelques fonctionnalités supplémentaires de réplication et de gestion des comptes.

Depuis Samba 4.20, MIT Kerberos 1.21 minimum est obligatoire lorsque Samba fonctionne comme AD DC. Cette exigence est directement liée à la correction de la CVE-2022-37967, une vulnérabilité critique affectant la délégation Kerberos contrainte basée sur les ressources. Vérifiez votre version avec krb5-config --version avant toute mise à jour vers Samba 4.20+.

Les niveaux fonctionnels 2016, 2019 et 2022 ne sont pas encore supportés. Pour des domaines purement internes sans dépendance à ces niveaux, ce gap ne pose aucun problème opérationnel concret.

Comment configurer l’authentification Samba Active Directory sur Linux?

La samba active directory authentication sur les clients Linux repose sur deux approches selon votre distribution et vos préférences :

  • Winbind : intégré directement à Samba, fonctionne sur toutes les distributions, configure PAM et NSS pour résoudre les utilisateurs AD comme des utilisateurs Unix locaux
  • SSSD (System Security Services Daemon) : préféré sur Red Hat, Fedora et leurs dérivés, gestion plus fine du cache offline, meilleure intégration avec sudo et SELinux

Pour joindre un client Linux au domaine avec Winbind, la commande est : net ads join -U administrator. Avec SSSD, vous passez par realm join MONDOMAINE.LAN -U administrator après avoir installé realmd. Testez ensuite la jonction avec wbinfo -u (liste les utilisateurs AD) et getent passwd DOMAINE\\utilisateur pour confirmer la résolution NSS.

Côté sécurité, limitez l’accès SSH aux membres d’un groupe AD spécifique via AllowGroups "DOMAINE\\admins-linux" dans /etc/ssh/sshd_config. C’est une pratique que beaucoup oublient lors de la première configuration et qui laisse le domaine entier avec un accès SSH potentiel.

Gestion des GPO avec Samba Active Directory

active directory samba linux

Le support des samba active directory gpo pour les clients Linux est arrivé avec la version 4.14. Avant ça, les GPO étaient appliquées aux clients Windows mais les machines Linux du domaine restaient en dehors du périmètre. Depuis 4.14, un démon samba-gpupdate applique les politiques sur les clients Linux joints au domaine.

Samba 4.15 a introduit la commande samba-tool gpo manage, qui permet de créer, modifier et lier des GPO en ligne de commande sans avoir besoin d’un poste Windows avec la console GPMC. Vous pouvez par exemple créer une GPO de script de démarrage avec samba-tool gpo manage scripts startup add. Le cycle de rafraîchissement est de 90 à 120 minutes, identique au comportement natif de Windows Group Policy.

Le Certificate Auto Enrollment est disponible depuis Samba 4.16, ce qui permet de distribuer automatiquement des certificats aux machines membres du domaine. Depuis Samba 4.19, la fonction libgpo.get_gpo_list est dépréciée : si vous avez des scripts Python qui l’utilisent, migrez vers import samba.gp avant votre prochaine montée de version.

Samba Active Directory en production : limites et points de vigilance

Les limites de Samba AD en production méritent d’être posées sans détour. La montée de version entre releases majeures reste le point le plus délicat : Samba ne propose pas de migration en place aussi lisible que Windows Server, et des bugs de réplication SYSVOL ont causé des incidents sur des domaines multi-DC lors de certaines mises à jour.

La gestion de plusieurs contrôleurs de domaine demande de la rigueur. La réplication DRS fonctionne, mais elle est moins tolérante aux erreurs de configuration réseau que son équivalent Microsoft. Un DNS mal configuré entre deux DC peut silencieusement casser la réplication sans déclencher d’alerte évidente.

Voici ce que Samba AD ne couvre pas encore de façon production-ready :

  • Active Directory Federation Services (ADFS)
  • Azure AD Connect et synchronisation hybride
  • Niveaux fonctionnels 2016, 2019 et 2022
  • ADCS complet avec autorité de certification d’entreprise hiérarchique
  • Support téléphonique commercial (dépendance à la communauté ou à des prestataires spécialisés)

Pour des environnements avec 500 postes Windows, plusieurs sites géographiques et une équipe IT habituée aux outils Microsoft, Windows Server reste plus adapté. Le choix de Samba AD n’est pas une question d’idéologie open source, c’est une question d’adéquation avec vos contraintes réelles.

Samba 4 AD DC s’impose comme une alternative sérieuse pour les infrastructures Linux

En 2025-2026, Samba 4 AD DC est un choix pertinent pour des profils précis. Les TPE avec un parc majoritairement Linux, les laboratoires de recherche, les environnements de développement et les organisations qui doivent justifier leur conformité NIST 800-171 sans budget Windows Server – tous ces cas trouvent dans Samba AD une réponse technique solide et maintenue, à condition de ne pas avoir besoin des fonctionnalités avancées listées ci-dessus.

La version 4.24.0 publiée en mars 2026 montre que le projet reste actif. Le SambaWiki documente chaque fonctionnalité en détail, et samba-tool couvre la quasi-totalité des opérations d’administration courantes : création d’utilisateurs et groupes, gestion des GPO, diagnostic DNS, réplication DC. Pour un administrateur à l’aise avec la ligne de commande, c’est un terrain connu.

Vous n’avez pas à choisir entre « tout Microsoft » et « tout Samba » : de nombreuses infrastructures hybrides font coexister un DC Samba avec des serveurs Windows membres du domaine, ou l’inverse. C’est précisément cette flexibilité qui fait de Samba active directory 4 une pièce crédible dans une infrastructure hétérogène.

Un contrôleur de domaine libre qui tient sa promesse depuis plus de dix ans – c’est rare enough pour mériter qu’on lui donne une vraie chance.