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

Active Directory Samba

Remplacer Microsoft Active Directory par une solution open source sans perdre en compatibilité ni en fonctionnalités – c’est exactement ce que promet Samba 4.

Un projet né dans une chambre d’étudiant australien, devenu la colonne vertébrale de milliers d’infrastructures Linux en production. Voici comment l’exploiter.

Qu’est-ce que Samba Active Directory et pourquoi l’utiliser?

Andrew Tridgell a écrit les premières lignes de Samba en décembre 1991, alors doctorant à l’Australian National University. L’objectif initial était modeste : faire communiquer un PC sous DOS avec une imprimante réseau.

Trente ans plus tard, ce projet open source sous licence GNU General Public License est devenu un contrôleur de domaine capable de remplacer Microsoft Active Directory dans des environnements d’entreprise complets.

Samba AD répond à un besoin très concret. Vous gérez une infrastructure Linux et vous avez besoin d’authentification centralisée, de gestion de politiques et d’intégration avec des postes Windows – sans payer les licences Microsoft. Samba couvre exactement ce périmètre.

Les cas d’usage principaux en entreprise sont les suivants :

  • Remplacement complet d’un contrôleur de domaine Windows dans un environnement mixte Linux/Windows
  • Authentification centralisée pour des parcs de machines Linux via Winbind ou SSSD
  • Infrastructure de test ou de développement à coût zéro
  • Conformité réglementaire (NIST 800-171) sans dépendance propriétaire

Quelles sont les fonctionnalités clés de Samba 4 Active Directory?

Active Directory Samba

Le 11 décembre 2012 marque un tournant : Samba 4.0.0 est publié, première version stable de la série 4.

Ce n’est pas une mise à jour – c’est une réécriture fonctionnelle qui transforme Samba en Domain Controller à part entière. Kerberos, DNS intégré, Group Policy Objects, réplication LDAP : tout ce qui définit un AD Microsoft est là.

Depuis la version 4.0, Samba peut opérer au niveau fonctionnel Windows Server 2008 R2. Concrètement, cela signifie que vos postes Windows 10 et Windows 11 rejoignent le domaine sans friction.

Depuis Samba 4.19, l’option ad dc functional level dans smb.conf permet de monter jusqu’au niveau 2012 R2.

Les fonctionnalités majeures de Samba 4 Active Directory :

  • Domain Controller complet : gestion des comptes, groupes, unités d’organisation
  • Authentification Kerberos native
  • DNS intégré (backend interne ou BIND9)
  • Group Policy Objects (GPO) appliqués aux clients Linux depuis la version 4.14
  • Compatibilité avec les niveaux fonctionnels Windows Server 2008 R2 à 2012 R2

La version 4.24.0, publiée le 18 mars 2026, confirme que le projet est activement maintenu. Ce n’est pas un logiciel en fin de vie qu’on tolère – c’est une plateforme en développement continu.

Quelle est la différence entre Active Directory natif et Samba AD?

La comparaison Active Directory vs Samba mérite une réponse honnête, pas une liste de cases cochées.

Microsoft AD reste supérieur sur certains points précis : les niveaux fonctionnels au-delà de 2012 R2 ne sont pas supportés par Samba, certaines extensions propriétaires comme AD CS (Certificate Services) ou AD RMS sont absentes, et la gestion avancée des GPO Windows reste plus complète côté Microsoft.

Samba AD supporte les niveaux fonctionnels de domaine allant de Windows Server 2008 à Windows Server 2016. Cette plage couvre la grande majorité des environnements réels.

Pour les entreprises soumises au NIST 800-171, le niveau 2008 R2 est suffisant – et c’est disponible depuis 2012.

CritèreMicrosoft Active DirectorySamba AD
LicencePropriétaireGNU GPL
Niveau fonctionnel maxWindows Server 2022Windows Server 2012 R2 (depuis 4.19)
Clients Windows 10/11OuiOui
GPO sur LinuxPartielOui (depuis 4.14)
CoûtLicences obligatoiresGratuit

Samba est pertinent quand votre priorité est l’indépendance vis-à-vis de Microsoft et que votre environnement n’exige pas les derniers niveaux fonctionnels. Pour une PME homogène sous Linux, c’est souvent le meilleur choix.

Comment installer Samba Active Directory sur Debian Linux?

Active Directory Samba installation

Sur Debian, Samba est disponible en version 4.21.3 via le dépôt backports. Avant de commencer, vérifiez que votre système tourne avec Python 3.6 minimum – exigence introduite à partir de Samba 4.13, rendue obligatoire à la compilation dès la version 4.14.

Les prérequis avant l’installation :

  • Un nom d’hôte FQDN résolvable (ex : dc1.mondomaine.local)
  • Une adresse IP statique configurée
  • Python 3.6 ou supérieur
  • Les paquets samba, krb5-config, winbind installés

L’installation et le provisioning du domaine se font avec ces commandes :

apt install -t bookworm-backports samba krb5-config winbind
samba-tool domain provision --use-rfc2307 --interactive

La commande samba-tool domain provision génère automatiquement le fichier /etc/samba/smb.conf. Ne modifiez pas ce fichier manuellement avant d’avoir validé que le provisioning s’est terminé sans erreur. Une fois Samba démarré, vérifiez le bon fonctionnement DNS avec host -t SRV _ldap._tcp.mondomaine.local.

Comment configurer l’authentification Active Directory avec Samba?

La samba active directory authentication repose sur deux approches selon votre distribution : Winbind ou SSSD. Sur RHEL et ses dérivés, Red Hat recommande SSSD comme solution principale.

Sur Debian, Winbind est plus couramment utilisé et mieux intégré dans la documentation officielle Samba.

Pour joindre une machine Linux au domaine via Winbind, ajoutez ces paramètres dans smb.conf :

[global]
   workgroup = MONDOMAINE
   security = ADS
   realm = MONDOMAINE.LOCAL
   winbind use default domain = yes
   winbind offline logon = yes

La jonction au domaine s’effectue ensuite avec net ads join -U administrator. Winbind gère ensuite la résolution des identités Windows (SID vers UID/GID) et l’authentification PAM.

L’intégration a été validée sur des niveaux fonctionnels allant de Windows Server 2008 à Windows Server 2016.

Comment déployer Samba Active Directory dans Docker?

Active Directory Samba microsoft

Déployer un active directory samba docker est techniquement faisable, mais les contraintes sont réelles et documentées.

Le conteneur nécessite un accès root complet : les ACLs étendues de fichiers utilisent le namespace security.*, qui n’est accessible qu’en mode privilégié. Sans cela, la gestion des permissions AD est bancale dès le départ.

Deux points critiques à configurer impérativement :

  • Adresse IP statique sur le réseau hôte : Samba AD ne fonctionne pas derrière du NAT Docker standard – le DNS et Kerberos exigent une IP prévisible et joignable depuis les clients
  • Ports RPC dynamiques ouverts : Samba utilise par défaut la plage 49152-65535 pour les appels RPC. Sur Docker, cette plage doit être explicitement exposée

En production, ce déploiement conviendra mieux à un environnement de test ou à une architecture avec un réseau overlay maîtrisé. Pour de la haute disponibilité, deux contrôleurs de domaine Samba en réplication restent plus fiables que du Docker seul.

Comment gérer les GPO avec Samba Active Directory?

La gestion des samba active directory gpo sur clients Linux est arrivée avec la version 4.14. Ce n’est pas anecdotique : cela signifie que vous pouvez appliquer des politiques de configuration à vos machines Linux exactement comme à vos postes Windows, depuis la même interface.

Pour activer l’application des GPO sur une machine jointe via Winbind, une seule ligne suffit dans smb.conf :

apply group policies = yes

Les politiques sont appliquées automatiquement toutes les 90 à 120 minutes, sans intervention manuelle. Ce cycle correspond au comportement natif de Windows – les administrateurs qui migrent depuis un AD Microsoft retrouvent leurs repères.

Samba 4.15 a introduit la commande samba-tool gpo manage, qui implémente les fonctionnalités d’une Server Side Extension du GPMC. Concrètement, vous pouvez créer, modifier et lier des GPO directement en ligne de commande, sans dépendre d’un poste Windows avec la console GPMC installée.

Comment suivre un tutoriel complet pour configurer Samba Active Directory?

Active Directory Samba avis

Un samba active directory tutorial efficace suit toujours le même enchaînement logique. Voici les étapes dans l’ordre opérationnel :

  • 1. Préparer l’environnement : hostname FQDN, IP statique, résolution DNS locale fonctionnelle
  • 2. Installer les paquets : samba, krb5-config, winbind (via backports sur Debian pour obtenir la 4.21.3)
  • 3. Provisionner le domaine : samba-tool domain provision --use-rfc2307 --interactive
  • 4. Configurer le DNS : vérifier les enregistrements SRV avec host -t SRV _kerberos._tcp.mondomaine.local
  • 5. Démarrer Samba : systemctl enable --now samba-ad-dc
  • 6. Joindre les clients Windows : via les paramètres réseau Windows classiques – le domaine est reconnu nativement
  • 7. Joindre les clients Linux : net ads join -U administrator puis démarrage de Winbind
  • 8. Vérifier le bon fonctionnement : samba-tool domain info 127.0.0.1 et wbinfo -u pour lister les utilisateurs

La vérification finale avec wbinfo -u est le test qui ne ment pas. Si les utilisateurs du domaine remontent correctement sur votre machine Linux, votre contrôleur de domaine Samba est opérationnel. Tout ce qui vient ensuite – GPO, partages, politiques de mot de passe – repose sur cette fondation.

Un projet né pour faire parler un PC avec une imprimante réseau gère aujourd’hui des infrastructures entières. Tridgell ne le savait pas en 1991. Vous, vous avez le choix de l’exploiter.