Winbind unifie la gestion des comptes UNIX et Windows NT en permettant à une machine UNIX de devenir un membre à part entière d'un domaine NT. Le service fourni par winbind démon, s'appelle winbind et peut être utilisé pour résoudre les informations d'utilisateur et de groupe à partir d'un serveur Windows NT, ce qui le rend compréhensible par les plates-formes UNIX. Le service peut également fournir des services d'authentification via un module PAM associé. Le module pam_winbind prend en charge les types de module auth, account et password.
Le service winbind est fourni par samba-common package, en tant que composant de samba.
Contrôle des services
Pour contrôler immédiatement le service winbind, utilisez l'utilitaire "service" ou "systemctl" :
# service winbind Usage: /etc/init.d/winbind {start|stop|restart|reload|status|condrestart}
Configuration
1. Configurer /etc/nsswitch
Le fichier /etc/nsswitch indique au système où rechercher les mots de passe et les groupes, entre autres. La définition présentée ici l'obligera d'abord à rechercher dans les fichiers locaux /etc/passwd et /etc/group, puis à utiliser winbind pour interroger le serveur Windows :
# /etc/nsswitch.conf ... passwd: files winbind shadow: files winbind group: files winbind ...
2. Mettre à jour le fichier de configuration PAM
Dans le /etc/pam.d/system-auth , le fichier de configuration d'authentification PAM principal, remplacez les lignes auth :
auth required /lib/security/pam_securetty.so auth required /lib/security/pam_nologin.so auth sufficient /lib/security/pam_winbind.so auth required /lib/security/pam_unix.so use_first_pass shadow nullok
avec la ligne ci-dessous :
account required /lib/security/pam_winbind.so
3. Rejoindre le domaine
Pour rejoindre le domaine, utilisez le programme net comme ceci :
# net join -S PDC -U Administrator
Le nom d'utilisateur après le -U peut être n'importe quel utilisateur de domaine disposant de privilèges d'administrateur sur la machine. Remplacez le nom ou l'IP de votre serveur PDC/fenêtre par "PDC"
4. Modifier /etc/samba/smb.conf
Modifiez /etc/samba/smb.conf afin qu'il contienne des directives comme celles-ci :
# vi /etc/samba/smb.conf [global] winbind separator = + winbind cache time = 10 template shell = /bin/bash template homedir = /home/%D/%U idmap uid = 10000-20000 idmap gid = 10000-20000 workgroup = DOMAIN security = domain password server = *
5. Démarrez le service winbind.
Démarrez winbind et vous devriez constater que votre base de données d'utilisateurs et de groupes est étendue pour inclure vos utilisateurs et groupes NT, et que vous pouvez vous connecter à votre machine unix en tant qu'utilisateur de domaine, en utilisant la syntaxe DOMAIN+user pour le nom d'utilisateur.
# service winbind start
Après le démarrage du service winbind, vous pouvez vérifier/obtenir des informations du démon winbind en utilisant wbinfo outil.
# wbinfo Usage: wbinfo [OPTION...] -u, --domain-users Lists all domain users -g, --domain-groups Lists all domain groups -N, --WINS-by-name=NETBIOS-NAME Converts NetBIOS name to IP -I, --WINS-by-ip=IP Converts IP address to NetBIOS name -n, --name-to-sid=NAME Converts name to sid -s, --sid-to-name=SID Converts sid to name -U, --uid-to-sid=UID Converts uid to sid -G, --gid-to-sid=GID Converts gid to sid -S, --sid-to-uid=SID Converts sid to uid -Y, --sid-to-gid=SID Converts sid to gid -A, --allocate-rid Get a new RID out of idmap -c, --create-user=name Create a local user account -x, --delete-user=name Delete a local user account -C, --create-group=name Create a local group -X, --delete-group=name Delete a local group -o, --add-to-group=user:group Add user to group -O, --del-from-group=user:group Remove user from group -t, --check-secret Check shared secret -m, --trusted-domains List trusted domains --sequence Show sequence numbers of all domains -D, --domain-info=STRING Show most of the info we have about the domain -r, --user-groups=USER Get user groups --user-sids=SID Get user group sids for user SID -a, --authenticate=user%password authenticate user --set-auth-user=user%password Store user and password used by winbindd (root only) --get-auth-user Retrieve user and password used by winbindd (root only) -p, --ping Ping winbindd to see if it is alive --domain=domain Define to the domain to restrict operation