smbpasswd

Autres langues

Langue: fr

Autres versions - même langue

Version: 93949 (fedora - 25/11/07)

Autres sections - même nom

Section: 8 (Commandes administrateur)

NOM

smbpasswd - change le mot de passe d'un utilisateur SMB

SYNOPSIS

smbpasswd [ -a ] [ -x ] [ -d ] [ -e ] [ -D niveau_de_déboggage ] [ -n ] [ -r <nom_de_machine_distante> ] [ -R <ordre_de_résolution_des_noms> ] [ -m ] [ -j DOMAINE ] [ -U utilisateur[%mot_de_passe] ] [ -h ] [ -s ] [ -w mot_de_passe_ldap ] [ utilisateur ]

DESCRIPTION

Ce programme fait partie de la suite logicielle Samba.

Le programme smbpasswd a plusieurs fonctions différentes selon qu'il est exécuté par l'utilisateur root ou non. Quand il est exécuté par un utilisateur normal, il permet à l'utilisateur de changer le mot de passe utilisé pour sa session SMB sur toute machine qui enregistre les mots de passe SMB.

Par défaut (quand exécuté sans arguments), il essaiera de changer le mot de passe de la machine locale à la manière du programme passwd(1). Cependant, smbpasswd est différent dans son mode de fonctionnement du programme passwd car il n'est pas setuid root mais fonctionne selon un modèle client-serveur et communique avec le programme local smbd(8). De fait, le démon smbd doit fonctionner sur la machine locale pour pouvoir changer les mots de passe, mots de passe habituellement enregistrés dans le fichier smbpasswd(5).

Quand il est exécuté par un utilisateur normal, smbpasswd demandera l'ancien mot de passe SMB puis le nouveau mot de passe à répéter deux fois pour éviter les erreurs de frappe. Le mot de passe ne sera pas visible à l'écran pendant la frappe. Si vous avez un mot de passe SMB vide (indiqué par la chaîne de caractères "NO PASSWORD" dans le fichier smbpasswd(5)), pressez simplement la touche <ENTRÉE> lorsque l'on vous demande votre ancien mot de passe.

smbpasswd peut aussi être utilisé par un utilisateur pour changer ses mots de passe sur des machines distantes, tels que des contrôleurs primaires de domaine Windows NT. Consultez les options -U et -r ci-dessous.

Quand exécuté par root, smbpasswd permet d'ajouter et de supprimer de utilisateurs dans le fichier smbpasswd(5), mais aussi de changer des attributs d'utilisateurs existants dans ce fichier. Quand exécuté par root, smbpasswd accède directement au fichier local smbpasswd(5), ainsi, les changement prennent effet même si le démon smbd ne fonctionne pas sur la machine.

OPTIONS

-a
Cette option indique que le nom d'utilisateur suivant doit être ajouté au fichier smbpasswd(5) avec le nouveau mot de passe entré (tapez simplement <ENTRÉE> pour l'ancien mot de passe). Cette option est ignorée si l'utilisateur suivant existe dans le fichier smbpasswd(5) et est considérée comme un changement simple de mot de passe. Notez que les utilisateurs à ajouter doivent exister dans le fichier de mots de passe du système (habituellement /etc/passwd(5)), dans le cas contraire, la requête pour ajouter l'utilisateur échouera.

Cette option n'est disponible que lorsque smbpasswd est exécuté en tant que root.

-x
Cette option indique que le nom d'utilisateur suivant doit être supprimé du fichier local smbpasswd(5).

Cette option n'est disponible que lorsque smbpasswd est exécuté en tant que root.

-d
Cette option indique que le nom d'utilisateur suivant doit être désactivé dans le fichier local smbpasswd(5). Cela est réalisé en utilisant l'option « D » dans le paramètre de contrôle de comptes du fichier smbpasswd. Une fois cette opération réalisée, toutes les tentatives d'authentification par SMB en utilisant ce nom d'utilisateur échoueront

Si le fichier smbpasswd(5) est dans l'ancien format (format des versions de Samba antérieures à la 2.0), il n'y a pas de champ prévu pour contrôler le compte, en conséquence de quoi l'utilisateur sera désactivé en écrivant des caractères « X » dans le mot de passe de l'utilisateur du fichier smbpasswd. Consultez smbpasswd(5) pour plus de détails sur les formats anciens et récents de ce fichier.

Cette option n'est disponible que lorsque smbpasswd est exécuté en tant que root.

-e
Cette option indique que le nom d'utilisateur suivant doit être activé dans le fichier local smbpasswd(5) si le compte avait été au préalable désactivé, dans le cas contraire, cette option n'a pas d'effet. Une fois que le compte a été activé, l'utilisateur sera à nouveau à même de s'authentifier à nouveau par SMB.

Si le fichier smbpasswd(5) est dans l'« ancien » format, alors, smbpasswd demandera un nouveau mot de passe pour cet utilisateur, sinon, le compte sera activé en supprimant l'option « D » dans le fichier smbpasswd(5). Consultez smbpasswd(5) pour obtenir des détails sur les anciens et nouveaux formats du fichier de mot de passe.

Cette option n'est disponible que lorsque smbpasswd est exécuté en tant que root.

-D niveau_de_déboggage
Un nombre compris entre 0 et 10, ou bien la lettre « A ».

La valeur par défaut de ce paramètre est 0.

Plus haute est la valeur de ce paramètre, plus les fichiers de logs seront détaillés sur les actions du client. Au niveau 0, seuls les erreurs et avertissements critiques seront reportés dans le fichier de log. Le niveau 1 est un niveau raisonnable pour une utilisation quotidienne car il génère un niveau informatif raisonnable sur les actions effectuées.

Les niveaux de déboggage supérieurs à 1 généreront une quantité importante de données de log et ne devraient être utilisés que lors de la recherche d'un problème. Les niveaux supérieurs à 3 ne devraient être utilisés que par les développeurs car ils génèrent un énorme flux de données imperméables au non-initié. Si niveau_de_déboggage a pour valeur « A » (N.d.T. : « All », c'est à dire « tout » en anglais), alors tous les messages de déboggage seront reportés. Ce réglage n'est utile qu'aux développeurs ainsi qu'aux personnes souhaitant vraiment savoir comment fonctionne le code en interne.

Préciser ici cette valeur masquera le réglage du paramètre « log level » dans le fichier smb.conf (5).

-n
Cette option indique que le nom d'utilisateur suivant doit avoir un mot de passe vide (par exemple un mot de passe blanc) dans le fichier smbpasswd. Cela est réalisé en écrivant la chaîne « NO PASSWORD » (N.d.T : pas de mot de passe) dans le mot de passe enregistré dans le fichier smbpasswd(5).

Notez que pour permettre aux utilisateurs de se connecter au serveur Samba une fois que le mot de passe ait été fixé à « NO PASSWORD » dans le fichier smbpasswd(5), l'administrateur doit fixer le paramètre suivant dans le fichier smb.conf(5) :

null passwords = yes

Cette option n'est disponible que lorsque smbpasswd est exécuté en tant que root.

-r nom_de_machine_distante
Cette option permet à l'utilisateur d'indiquer sur quelle machine il souhaite changer son mot de passe. Sans ce paramètre, smbpasswd utilise par défaut la machine locale. le nom_de_machine_distante est le nom NetBIOS du serveur SMB/CIFS à contacter pour tenter de modifier le mot de passe. Ce nom est converti en une adresse IP en utilisant l'ordre de résolution des noms standard de tous les programmes de la suite Samba. Consultez le paramètre -R ordre_de_résolution_des_noms pour obtenir des détails sur le changement de l'ordre de ce mécanisme de résolution de noms.

Le nom d'utilisateur dans le mot de passe est modifié est le nom d'utilisateur UNIX connecté. Consultez le paramètre -U utilisateur pour obtenir des détails sur comment changer le mot de passe pour un nom d'utilisateur différent.

Notez que si vous changez un mot de passe de domaine NT, la machine distante doit être le contrôleur primaire de domaine pour le domaine concerné (les contrôleurs de domaine de sauvegarde ont une copie en lecture seule de la base de données des comptes utilisateurs et ne seront pas à même de modifier le mot de passe).

Notez que Windows 95/98 n'ont pas de réelle base de données, il n'est donc pas possible de changer les mots de passe en indiquant une machine sous Win95/98 comme machine distante cible.

-R <ordre_de_résolution_des_noms>
Cette option est utilisée par les programmes de la suite logicielle Samba pour déterminer quels services utiliser et dans quel ordre, ceci afin de résoudre le nom d'une machine et de lui faire correspondre une adresse IP. Cette option prend une chaîne de caractères dont les éléments sont séparés par des espaces. Les options disponibles sont  : « lmhosts », « host », « wins », « bcast » et correspondent à ces différentes actions :
lmhosts : Recherche une adresse IP dans le fichier lmhosts de Samba. Si la ligne dans le fichier lmhosts n'a pas de type attaché au nom NetBIOS (consultez lmhosts(5) pour plus de détails) alors, n'importe quel type correspondra à la requête ;
host : Effectue une résolution de l'adresse IP standard en utilisant le fichier système /etc/hosts (N.d.T. : consultez hosts(5) pour plus de détails), NIS (N.d.T. : Network Information Service, un service utilisé entre autres dans les intranets pour partager des informations sur les différentes machines), ou DNS (N.d.T. : « Domain Name Service », un service utilisé sur Internet pour faire correspondre à un nom de machine une IP) pour effectuer la résolution de noms. Cette méthode de résolution dépend du système d'exploitation, par exemple, sous IRIX ou Solaris, cela peut être contrôlé par le fichier /etc/nsswitch.conf. Notez que cette méthode n'est utilisée que dans le cas où le type du nom de machine demandé est 0x20 (un serveur), dans le cas contraire, elle est ignorée.
wins : Demande un nom à partir des adresses IP enregistrées dans le paramètre serveur_wins. Si aucun serveur WINS n'a été spécifié, cette méthode sera ignorée.
bcast : Effectue un « broadcast » (N.d.T. : une diffusion sur tout le réseau) sur chacune des interfaces locales connues spécifiées dans le paramètre interfaces. C'est la méthode de résolution la plus disponible mais elle dépend de la présence de l'hôte recherché sur le sous-réseau local.

Si ce paramètre n'a pas été précisé, alors l'ordre de résolution utilisé sera celui indiqué dans le fichier de configuration smb.conf (avec « name resolve order », c'est à dire « ordre pour la résolution des noms » comme nom de paramètre).

-m
Cette option indique à smbpasswd que le compte à modifier est un compte MACHINE. Habituellement, cela est utilisé lorsque Samba est utilisé comme un contrôleur primaire NT.

Cette option n'est disponible que lorsque smbpasswd est exécuté en tant que root.

-j DOMAINE
Cette option est utilisée pour ajouter un serveur Samba dans un domaine Windows NT, serveur qui sera capable d'authentifier les comptes de tout auprès des contrôleurs de domaine de la même manière que le fait le serveur Windows NT. Consultez l'option security = domain dans la page de manuel smb.conf(5).

Pour fonctionner de cette manière, l'administrateur de domaine NT doit utiliser le programme « Server Manager for Domains » pour ajouter les nom NetBIOS primaire du serveur NT comme membre du domaine.

Après que cela a été fait, pour joindre le domaine, utilisez smbpasswd(5) avec ce paramètre. smbpasswd regardera alors le contrôleur primaire du domaine (trouvé dans le fichier smb.conf(5) dans le paramètre password server) et changera le mot de passe de compte utilisé pour les communications sécurisées dans le domaine. Ce mot de passe est ensuite enregistré par smbpasswd dans un TBB (N.d.T. : base de données) inscriptible par root appelée secrets.tdb.

Cette opération achevée, le fichier smb.conf(5) peut être mis à jour pour fixer l'option security = domain. Ainsi, toutes les futures connexions aux serveur Samba seront authentifiées auprès du serveur NT PDC (N.d.T. : « Primary Domain Controler », c'est à dire contrôleur de domaine primaire).

Notez cependant que bien que l'authentification est effectuée par le PDC, les utilisateurs doivent tout de même posséder un compte UNIX valable sur serveur Samba.

Cette option n'est disponible que lorsque smbpasswd est exécuté en tant que root.

-U utilisateur
Cette option ne peut être utilisée qu'en conjonction avec l'option -r. Lorsque le mot de passe est changé sur une machine distante, cela permet à l'utilisateur de spécifier le nom d'utilisateur dont le mot de passe est modifié sur cette machine. Cela permet aux utilisateurs d'avoir des noms d'utilisateur différents selon les systèmes pour changer leurs mots de passe.
-h
Cette option affiche l'aide pour smbpasswd, en sélectionnant la bonne selon que l'utilisateur est root ou non.
-s
Cette option force smbpasswd à être silencieux (par exemple, pas de message avant les invites) et lit l'ancien et les nouveaux mots de passe depuis l'entrée standard au lieu de les lire depuis /dev/tty (comme le fait le programme passwd(1)). Cette option permet aux gens d'utiliser des scripts pour piloter smbpasswd.
-w mot_de_passe
Ce paramètre n'est disponible que si Samba a été configuré pour utiliser l'option expérimentale --with-ldapsam. Le paramètre -w est utilisé pour indiquer le mot de passe à utiliser pour ldap admin dn, c'est à dire l'administrateur ldap. Notez que ce mot de passe est enregistré dans le fichier private/secrets.tdb et est lié au DN de l'administrateur. Cela signifie que si la valeur de ldap admin dn change, le mot de passe devra être mis à jour manuellement.
utilisateur
Cela indique le nom d'utilisateur pour toutes les options spécifiques à root. Seul root peut préciser ce paramètre car seul root a les permissions demandées pour modifier les attributs directement dans le fichier local smbpasswd(5).

NOTES

Comme smbpasswd fonctionne selon un modèle client-serveur communiquant avec un démon smbd local pour un utilisateur non root, le démon smbd doit fonctionner pour que le programme fonctionne dans ce cas. Un problème récurrent est d'ajouter une restriction aux hôtes qui peuvent accéder au programme smbd exécuté sur la machine locale en mettant une ligne allow hosts ou deny hosts dans le fichier smb.conf(5) et oubliant de permettre à « localhost » d'accéder à smbd.

Par ailleurs, la commande smbpasswd n'est utile que si Samba a été configuré pour utiliser des mots de passe cryptés. Consultez le fichier ENCRYPTION.txt dans le répertoire docs pour obtenir des détails sur comment utiliser ceci.

VERSION

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

VOIR AUSSI

smbpasswd(5), samba(7)

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>, 2002.