Scroll to navigation

SMBPASSWD(5) File Formats Manual SMBPASSWD(5)

NOM

smbpasswd - Le fichier de mots de passe encryptés de Samba

SYNOPSIS

smbpasswd

DESCRIPTION

Ce fichier fait partie de la suite logicielle Samba.

smbpasswd est le fichier de mots de passe encryptés de Samba. Il contient le nom d'utilisateur, le numéro lui correspondant d'utilisateur Unix (N.d.T : user id), le mot de passe « hashé » (N.d.T : on fait correspondre à une chaîne de caractères une séquence difficilement réversible qui identifie la chaîne) de l'utilisateur, une lettre d'identification du type de compte, ainsi que la dernière date de modification du mot de passe. Notez que le format de ce fichier a évolué au cours des différentes versions de Samba.

FORMAT DU FICHIER

Le format du fichier utilisé par Samba 2.2 est très proche de celui utilisé par Unix dans le fichier passwd(5). C'est un fichier texte ASCII contenant un utilisateur par ligne. Chaque champ à l'intérieur de la ligne est séparé du suivant par un « deux points ». Toute entrée commençant par # est ignorée et constitue de fait un commentaire. Pour chaque utilisateur, la ligne contient les informations suivantes :

C'est le nom d'utilisateur. Ce nom doit exister également dans le fichier standard Unix.
C'est le numéro d'utilisateur Unix (N.d.T : uid) qui doit correspondre avec celui contenu dans le fichier passwd(5). Si la correspondance n'est pas faite, Samba refusera de reconnaître cette entrée du fichier comme valide pour l'utilisateur.
C'est le mot de passe de l'utilisateur hashé avec l'algorithme de Lanman encodé comme une chaîne hexadécimale de 32 chiffres. Cet algorithme utilise un cryptage DES avec le mot de passe de l'utilisateur comme clef. C'est le mot de passe utilisé par les machines sous Windows 95 et 98, très vulnérable aux attaques basées sur des dictionnaires. Par ailleurs, si deux personnes choisissent le même mot de passe, les deux mots de passe cryptés seront identiques (contrairement aux mots de passe Unix). Enfin, si l'utilisateur a un mot de passe vide, ce champ contiendra les caractères "NO PASSWORD" au début de la chaîne hexadécimale. Si le champ n'est constitué que de 32 caractères X, le compte sera considéré comme désactivé et l'utilisateur ne sera pas capable de se connecter au serveur Samba.

ATTENTION ! Prenez bien garde au fait que toute personne connaissant ce champ hashé pourra prendre la place de l'utilisateur en raison de la nature de l'authentification basée sur SMB/CIFS. Pour cette raison, le fichier de mots de passe Samba ne doit être accessible qu'au super-utilisateur root en lecture et écriture, de même pour le répertoire le contenant, sans aucun autre accès.

C'est le mot de passe de l'utilisateur hashé sur 32 chiffres hexadécimaux. Ce hash NT est créé en prenant le mot de passe utilisateur encodé avec unicode 16 bits « little-endian » (N.d.T : octet de poids fort à la fin), puis en appliquant l'algorithme de hashage MD4 (c.f. rfc1321).

Cette manière d'encoder est considérée comme plus sécurisée que l'algorithme Lanman car il préserve la casse du mot de passe et utilise un algorithme de meilleure qualité. Par contre, le problème subsiste toujours lorsque deux utilisateurs choisissent le même mot de passe, dans ce cas, ce champ sera identique pour les deux utilisateurs.

ATTENTION ! Prenez bien garde au fait que toute personne connaissant ce champ hashé pourra prendre la place de l'utilisateur en raison de la nature de l'authentification basée sur SMB/CIFS. Pour cette raison, le fichier de mots de passe Samba ne doit être accessible qu'au super-utilisateur root en lecture et écriture, de même pour le répertoire le contenant, sans aucun autre accès.

Cette section décrit les lettres définissant les attributs du compte utilisateur. Dans la version 2.2 de Samba, ce champ est entouré des caractères «[» et «]» et a une longueur de 13 caractères en comptant les crochets. Le contenu de ce champ peut être l'un de ces caractères :
U - Cela signifie que c'est un compte utilisateur, par exemple, un utilisateur normal. Notez que pour l'instant, seuls les utilisateur des machines de confiance sont supportés dans ce fichier.
N - Cela signifie que ce compte n'a pas de mot de passe (le mot de passe dans le champ de Lanman et le hash NT sont ignorés). Notez que cela permettra aux utilisateurs de le connecter sans mots de passe uniquement si cette fonctionnalité est activée dans le fichier de configuration smb.conf(5).
D - Cela signifie que le compte est désactivé et que l'utilisateur ne pourra se connecter d'aucune manière.
W - Cela signifie que ce compte est un compte de machine de confiance. Cela permet aux postes de travails et aux serveur NT de joindre un domaine gouverné par un serveur PDC Samba.

D'autres correspondances pourraient être ajoutées dans le futur aux cours des évolutions de Samba. La fin de ce champ est rempli avec des espaces.

Ce champ indique la date à laquelle le compte a été modifié pour la dernière fois et est constitué des caractères LCT- (pour « Last Change Time ») suivis par le temps en secondes depuis 1970 (à la manière Unix) de la date de modification.

Tous les autres champs séparés par des « deux points » sont pour l'instant ignorés.

VERSION

Cette page de manuel est correcte pour la version 2.2 de Samba.

VOIR AUSSI

smbpasswd(8), samba(7), ainsi que les RFC1321 internet à propos des algorithmes MD4.

AUTEUR

Le logiciel Samba originel a été conçu par Andrew Tridgell. Samba est dorénavant développé par l'équipe Samba comme un projet « Open Source » à la manière de Linux.

Les pages de manuel de Samba ont été écrites originellement par Karl Auer. Les pages de manuel ont été converties en format YODL (un autre très bon logiciel « Open Source », disponible sur ftp://ftp.icce.rug.nl/pub/unix/) et mises à jour pour la version 2.0 par Jeremy Allison. La conversion en DocBook pour Samba 2.2 a été réalisée par Gerald Carter.

TRADUCTION

Pierre SOUCHAY <pierre.souchay@free.fr>, 2001. "lmhosts.5" 87L, 3040C

9 juillet 2001