Logo English Web Page
Accueil Association BSD Linux Dev Reseau Infologisme Mac OSX
tl tr
Sujet Configurer Date 20-12-2010
Titre Samba - Description du fichier smb.conf Section BSD Linux
Article

Installation

L‘utilisation de base de Samba que nous allons décrire, ne nécessite pas d‘opérations particulières et s‘installera donc en utlisant le paquetage correspondant de votre distribution préférée.

Tous les paramètres décrits ci-dessous sont accessibles avec Webmin. La syntaxe du fichier smb.conf générée par Webmin est juste. Voir l‘article sur la configuration de Samba : Samba - Une petite danse pas très Brazil

Remarque : Attention, si vous installez Samba à partir de Sources puis compilées, la structure des fichiers est différente de celle des Packages d‘une distribution Linux.

Structure de Samba

Les demons, ils sont au nombre de deux :

nmbd (chargé de la gestion et de l‘exploration des noms de machine)
smbd (partage de fichiers et d‘imprimantes)

Sur les systèmes type RedHat ou Fedora, comme la plupart des services, ils sont géré par :
[root@hostname ~]# /etc/rc.d/init.d/smb { start | stop | restart | status | condrestart }

Les fichiers de configuration :

smb.conf
/etc/smb.conf (version 2.0.x de samba)
/etc/samba/smb.conf (version 2.2.x de samba)
C‘est le fichier de configuration principal de Samba.

smbpasswd
/etc/smbpasswd (version 2.0.x de samba)
/etc/samba/smbpasswd (version 2.2.x de samba)

C‘est le fichier de mots de passe, qui contient les versions cryptées Lanman et NT du mot de passe, divers flags et des informations sur la durée de validité du mot de passe.

Exemple d‘entrée dans smbpasswd :
administrateur:600:552902031BEDE9EFAAD3B435B51404EE:878D8014606CDA29677A44EFA1353FC7:[U  ]::LCT-3BB63843:
smbusers
/etc/smbusers (version 2.0.x de samba)
/etc/samba/smbusers (version 2.2.x de samba)

Contient une sorte de base d‘alias, qui permet de translater des noms d‘utlisateur Windows en login Unix

Exemple d‘entrée dans smbusers

# Unix_name = SMB_name1 SMB_name2.
root = administrator
nobody = guest pcguest smbguest

Configuration de Samba – Fichier smb.conf

La section [global]
Les variables de Samba
Le partage de fichiers
Les partages spéciaux
Le partage d‘imprimantes

La section [global]

Dans cette section nous allons trouver tous les paramètres généraux de samba, en voici les principaux.

Identité de la machine

workgroup = MONDOMAINE
netbios name = SERVEURSMB
server string = Serveur %L (Samba %v)


workgroup
Nom du groupe de travail (workgroup) ou du domaine.
Valeur par défaut : workgroup = WORKGROUP

netbios name
Nom Netbios de la machine (le nom Windows).
Valeur par défaut : Nom loal du poste serveur ou hostname de la machine.

netbios aliases
Autres noms par lesquels la machine est connue.
Valeur par défaut : Rien

server string
Description de la machine.
Valeur par défaut : server string = Samba %v

Authentification

security = user
domain logons = yes
username map = /etc/samba/smbusers


security
Ce paramètre est l‘un des plus importants de Samba. Il peut prendre les valeurs : share, user, server et domain

Le mode share correspond à la possibilité offerte par Win9x d‘effectuer un « contrôle d‘accès au niveau ressource », c‘est à dire par exemple de définir un mot de passe pour le partage quel que soit l‘utilisateur.

Le mode user est le mode le plus interressant : il émule presque parfaitement la majeure partie des fonctionnalités de Windows NT en matière d‘authentification, de partage de fichiers et d‘imprimantes, en proposant un « contrôle d‘accès au niveau utilisateur ».

Les modes server et domain se comportent comme le mode user d‘un point de vue du client, mais permettent de relayer l‘authentification sur un autre serveur Samba, sur un PDC ou un BDC NT.
Valeur par défaut : security = user

domain logons
Active la fonction contrôleur de domaine de Samba, ce qui permet aux clients Windows de se loguer dans un domaine NT.
Le nom du domaine est celui définit par la variable workgroup.
Valeur par défaut : domain logons = yes

username map
Permet d‘établir une correspondance entre les noms d‘utlisateurs Samba et les nom d‘utilisateur Unix.
Valeur par défaut : username map = /etc/samba/smbusers

Gestion des mots de passe

encrypt passwords = yes
smb passwd file = /etc/samba/smbpasswd


encrypt passwords
Valide la négociation des mots de passe cryptés. Par défaut les versions non préhistoriques de Windows (à part les premières versions de Win95 et de WinNT < SP3 ) effectuent les négociations d‘authentification en utilisant un mot de passe crypté.

Il possible de supprimer la négociation des mots de passe cryptés de Windows en modifiant une clef dans la base de registre (voir les fichiers .reg livrés avec la doc de Samba).
Valeur par défaut : encrypt passwords = no

smb passwd file
Emplacement de la version Samba du fichier des mots de passe. Ce fichier contient le login Samba, l‘uid , la version cryptée LanMan du mot de passe, la version cryptée NT, et d‘autres information sur le type de compte , sa validité, la date du dernier changement de mot de passe, etc.
Valeur par défaut : smb passwd file = /etc/samba/smbpasswd sur une Distribution Linux

password server
Définit quel est le serveur principal lorsque l‘on fonctionne en mode : security = server ou security = domain
Le nom du domaine est celui défini par la variable workgroup.
Valeur par défaut : Rien

unix password sync
Permet d‘éxécuter un programme externe défini par passwd program lors d‘un changement de mot passe Samba, afin par exemple de synchroniser le mot de passe Unix.
Valeur par défaut : unix password sync = no

passwd program
Si le paramètre unix password sync est à Yes, exécute le programme externe lors d‘un changement de mot passe Samba.

Si le programme externe échoue, alors le changement de mot passe Samba échouera également.

Le programme est éxécuté en root, il est donc impératif d‘utiliser des chemins absolus et de faire attention aux aspects de sécurité. (Voir le paramètre unix password sync)

Exemple :

passwd program = /usr/bin/passwd %u

passwd chat
Définit un dialogue à utiliser avec le paramètre passwd program.
(Voir le paramètre unix password sync)

Exemple :

passwd chat = *New*UNIX*password* %n\n *ReType*new*UNIX*password* %n\n
*passwd:*all*authentication*tokens*updated*successfully*


Explorateur de machine

local master = yes
os level = 33
domain master = yes


local master
Définit si Samba doit participer à l‘élection du « Maître explorateur local » (sur son réseau local, son sous-réseau) pour son domaine.
Valeur par défaut : local master = yes

os level
Cette valeur va influer sur les chances de Samba de remporter les élections de maître explorateur.
Valeur par défaut : os level = 20

domain master
Définit si Samba est le « Maître explorateur de domaine » pour son domaine. Ceci permet rassembler les listes de machines fournies par les maîtres explorateur locaux et de leur redistribuer ensuite une liste complète des machines du domaine.

A ne pas utiliser si un PDC Windows NT existe dans le domaine.
Valeur par défaut : Dépend de domain logons

remote announce
Permet d‘annoncer un netbios name dans un réseau déterminé, avec éventuellement un workgroup différent.

Exemple :

remote announce = 192.168.1.1

Paramètre de connection utilisateur
Les paramètres de cette section n‘ont de sens que si l‘on utlise Samba en PDC (voir domain logons).

Exemple :

logon script = script.bat
logon path = \\%L\Profiles\%U
logon drive = p:
logon home = \\%L\%U\Profile


logon script
Définit le script qui sera exécuté sur le client, lorsque celui viendra se loguer dans le domaine.

logon path
Utilisé par Windows NT pour le stockage du profil utilisateur (NTUSER.DAT, menus, etc.).

logon home
Chemin réseau du répertoire personnel (type Netbios).

Le chemin prend la syntaxe suivante : logon home=\\SERVEUR\PARTAGE\CHEMIN\VERS\LE\PROFILE. La partie \\SERVEUR\PARTAGE est utilisée par Win9x comme chemin pour le répertoire personnel et le reste (\CHEMIN\VERS\LE\PROFILE) est utilisé pour le stockage du profile (User.dat, menus, etc.).

logon drive
Ce paramètre, valable uniquement pour des clients NT, définit le lecteur qui sera utlilisé pour la connection au répertoire personnel. (voir logon home)

Résolution de nom

wins support = no
wins server = 192.168.1.1
wins proxy = yes
dns proxy = no


Casse des noms de fichier

preserve case = yes # NOTE: These can be set on a per share basis
short preserve case = no
default case = lower
case sensitive = no


preserve case
Maintient la casse (distribution minuscule / majuscule) des noms de fichiers.

Réseau
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
interfaces = 192.168.1.1/255.255.255.0

Variable de Samba

La plupart des paramètres du fichier smb.conf supportent les substitutions de variable suivantes :

Exemple d‘utilisation de variables de substitution.

[home]
comment = Répertoire personnel de %u sur %L


%u  Nom d‘utilisateur pour le service courant

%g  Nom du groupe primaire de l‘utilisateur %u

%U  Nom d‘utilisateur pour le service courant. Ceci est le nom demandé par l‘utilisateur, pas forcement le nom utilisé par Samba. (cf. mappage sur autre utilisateur)

%G  Nom du groupe primaire de l‘utilisateur %U

%H  Répertoire personnel (home) de %u

%v  Version de Samba

%S  Le nom du service courant (par exemple le nom du partage).

%P  Le répertoire principal du service courant.

%h  Nom loal du poste serveur ou hostname de la machine sur laquelle tourne Samba.

%m  Le nom Netbios de la machine cliente.

%L  Le nom Netbios du serveur Samba.
C‘est le nom utilisé par le client, peut être utile pour différencier le comportement de Samba avec plusieurs noms Netbios.

%R  Niveau de protocole utilisé (CORE, COREPLUS, LANMAN1, LANMAN2 ou NT1).

%d  Numéro de process du processus serveur courant.

%a  Architecture du système client. Reconnait actuellement Samba, WfWg, WinNT et Win95. Le reste renvoie UNKOWN.

%I  Adresse IP de la machine cliente.

%T  La date et l‘heure courante.

%$  (envar) La valeur de la variable d‘environnement envar.

%N  (???) Nom du serveur hébergeant le répertoire personnel (home) NIS.

%p  (???) Chemin du répertoire personnel NIS, obtenu à partir de l‘entrée NIS auto.map.


Article connexe du sujet

Samba - Une petite danse pas très Brazil
Webmin - Administration Serveur & Système

Auteur
Eric Douzet
Début de page
bl br
C-extra.com v. 1.2.2 © 2000-2014, tous droits réservés  –  Mise à jour le 12 Avril 2014 Infologisme.com