28.5. Samba utilisé comme serveur de login

Dans les réseaux comportant essentiellement des clients Windows, il est généralement souhaitable de permettre uniquement aux utilisateurs disposant d'un compte et d'un mot de passe valides de s'enregistrer. Dans un réseau basé sur Windows, cette tâche est traitée par un serveur Windows NT configuré en tant que contrôleur de domaine principal, mais elle peut également être traitée à l'aide d'un serveur Samba. Les lignes à ajouter à la section [global] du fichier smb.conf apparaissent dans l'Exemple 28.3, « Section Global dans smb.conf ».

Exemple 28.3. Section Global dans smb.conf

       [global]
       workgroup = TUX-NET
       domain logons = Yes
       domain master = Yes

Si vous utilisez des mots de passe codés à des fins de vérification (paramètre par défaut dans les installations MS Windows 9x, MS Windows NT 4.0 du Service Pack 3 et tous les produits plus récents correctement mis à jour), le serveur Samba doit être capable de les gérer. Il s'agit du rôle de la ligne encrypt passwords = yes dans la section [global] (option par défaut dans Samba version 3). Il est également nécessaire de préparer des comptes utilisateur et des mots de passe dans un format de codage adapté à Windows. Pour ce faire, utilisez la commande smbpasswd -a nom. Créez le compte de domaine des ordinateurs, requis par le concept de domaine Windows NT, à l'aide des commandes suivantes :

Exemple 28.4. Configuration d'un compte machine

       useradd hostname\$
       smbpasswd -a -m hostname

La commande useradd permet d'ajouter le symbole $. Si vous utilisez le paramètre -m , la commande smbpasswd insère automatiquement ce symbole. L'exemple de configuration fourni (/usr/share/doc/packages/Samba/examples/smb.conf.SuSE) contient les paramètres qui automatisent cette tâche.

Exemple 28.5. Configuration automatique d'un compte machine


       add machine script = /usr/sbin/useradd -g nogroup -c "NT Machine Account" \
       -s /bin/false %m\$
     

Pour être sûr que Samba exécute ce script correctement, choisissez un utilisateur Samba doté des autorisations administrateur requises. Pour ce faire, sélectionnez un utilisateur et ajoutez-le au groupe ntadmin. Une fois cette opération effectuée, vous pouvez assigner l'état Domain Admin à tous les utilisateurs appartenant à ce groupe Linux, à l'aide de la commande suivante :

     net groupmap add ntgroup="Domain Admins" unixgroup=ntadmin
   

Pour plus d'informations à ce sujet, reportez-vous au chapitre 12 de l'ensemble HOWTO (Guides pratiques) de Samba, que vous trouverez dans le fichier /usr/share/doc/packages/samba/Samba-HOWTO-Collection.pdf.