rss logo

Joindre un serveur Debian à un domaine Windows en utilisant winbind

logo samba

Nous allons voir ici comment configurer un serveur de partage de fichiers Samba avec Winbind sous GNU/Linux afin de l'intégrer à un Active Directory. L'objectif est de permettre à des postes clients de s'authentifier sur le partage avec leur compte d'utilisateur de domaine.

Pour cela, j'ai utilisé la version Debian 12.

Architecture Réseau

Diagramme de réseau montrant un serveur Active Directory, un serveur Samba avec Debian et un PC client Windows connecté par un commutateur, illustrant l'intégration de Winbind.
Architecture Winbind.

Installer et configurer

⚠️Prérequis : Assurez-vous que l'horloge des serveurs Windows et Debian soient synchronisées.⚠️

  • Paramétrer le nom de la machine :
root@SAMBA:~# echo "SAMBA" > /etc/hostname root@SAMBA:~# hostname SAMBA
  • Éditer et paramétrer le fichier /etc/hosts :
127.0.0.1 localhost 127.0.1.1 samba.std.local samba
  • Éditer et paramétrer le fichier /etc/resolv.conf :
domain std.local search std.local nameserver 192.168.1.200
  • Installer les paquets nécessaires :
root@SAMBA:~# apt update && apt install samba winbind libnss-winbind libpam-winbind krb5-user
  • Éditer et paramétrer le fichier /etc/krb5.conf :
[libdefaults] default_realm = STD.LOCAL ticket_lifetime = 1d renew_lifetime = 7d dns_lookup_realm = false dns_lookup_kdc = true [realms] STD.LOCAL = { kdc = 192.168.1.200 admin_server = 192.168.1.200 }
  • Créer le dossier de partage :
root@SAMBA:~# mkdir /data
  • Éditer et paramétrer le fichier /etc/samba/smb.conf :
[global] workgroup = std security = ads realm = std.local idmap config *:backend = tdb idmap config *:range = 700001-800000 idmap config STD:backend = rid idmap config STD:range = 10000-700000 winbind use default domain = yes template homedir = /home/%U map acl inherit = yes template shell = /bin/bash winbind enum users = yes winbind enum groups = yes vfs objects = acl_xattr ; improve security : ntlm auth = no ; improve security, Windows > 8 only : server min protocol = SMB3_00 [share] path = /data writable = yes guest ok = no create mask = 660 directory mask = 770
  • Vérifier le fichier de configuration /etc/samba/smb.conf :
root@SAMBA:~# testparm
  • Éditer et paramétrer le fichier /etc/nsswitch.conf :
# /etc/nsswitch.conf # # Example configuration of GNU Name Service Switch functionality. # If you have the `glibc-doc-reference' and `info' packages installed, try: # `info libc "Name Service Switch"' for information about this file. passwd: files systemd winbind group: files systemd winbind shadow: files systemd gshadow: files systemd hosts: files dns networks: files protocols: db files services: db files ethers: db files rpc: db files netgroup: nis
  • Ajouter le serveur à l'Active Directory :
root@SAMBA:~# net ads join -U administrateur@std.local
  • Redémarrer les services :
root@SAMBA:~# systemctl restart smbd.service nmbd.service winbind.service
  • Vérifier la connexion au domaine :
root@SAMBA:~# wbinfo --ping-dc checking the NETLOGON for domain[STD] dc connection to "ad.std.local" succeeded
  • Vérifier que l'on peut lister les utilisateurs et les groupes avec l'outil wbinfo :
root@SAMBA:~# wbinfo -u administrateur invité krbtgt e.cartman s.marsh […] root@SAMBA:~# wbinfo -g ordinateurs du domaine contrôleurs de domaine administrateurs du schéma admins du domaine enterprise admins utilisateurs du domaine invités du domaine […]
  • Vérifier que l'on peut lister les utilisateurs et les groupes avec l'outil getent :
root@SAMBA:~# getent passwd […] administrator:*:10500:10513::/home/administrator:/bin/bash s.marsh:*:11115:10513::/home/s.marsh:/bin/bash k.brofloski:*:11116:10513::/home/k.brofloski:/bin/bash b.stotch:*:11117:10513::/home/b.stotch:/bin/bash […] root@SAMBA:~# getent group […] domain admins:x:10512: domain users:x:10513: […]
  • Paramétrer les droits :
root@SAMBA:~# chown -R "administrateur:utilisateurs du domaine" /data/
  • On peut aussi paramétrer les droits avec les uid et les gid :
root@SAMBA:~# chown -R "10500:10513" /data/
  • Depuis le serveur Active Directory, définir les permissions :
Capture d'écran montrant les propriétés et les autorisations d'un partage Samba sous Windows, mettant en évidence les paramètres de sécurité pour les groupes d'utilisateurs et les administrateurs.
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Contact :

contact mail address