« Le système d'exploitation GNU-Linux/Le partage de fichiers Samba » : différence entre les versions

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
m ajout d'un exemple de smbclient
rajout verification avec smbclient
Ligne 59 : Ligne 59 :
# Nom Netbios de la machine (identification réseau)
# Nom Netbios de la machine (identification réseau)
netbios name = SERVEUR
netbios name = PC230
# Chaine de commentaire associé au serveur (voisinage réseau)
# Chaine de commentaire associé au serveur (voisinage réseau)
Ligne 191 : Ligne 191 :


Petit rappel : il est toujours utile de faire un '''testparm''' pour vérifier la cohérence du fichier de configuration, et ne pas oublier de relancer le service pour que les modifications soient prises en compte.
Petit rappel : il est toujours utile de faire un '''testparm''' pour vérifier la cohérence du fichier de configuration, et ne pas oublier de relancer le service pour que les modifications soient prises en compte.

On peut tester la configuration avec la commande '''smbclient''' :

# smbclient -L PC230
Password:
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.24]
Sharename Type Comment
--------- ---- -------
cdrom Disk Le CDROM
partage Disk Un répertoire partagé mais protégé par mot de passe
IPC$ IPC IPC Service (pc230 Serveur (Samba 3.0.24))
HP_LaserJet_1200_LPT_parport0_HPLIP Printer HP LaserJet 1200
Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.24]
Server Comment
--------- -------
PC230 pc230 Serveur (Samba 3.0.24)

Workgroup Master
--------- -------
... ...

La commande '''smbclient''' demande un mot de passe, on tape '''entrée'''.



== Le partage par utilisateur sur un réseau Workgroup ==
== Le partage par utilisateur sur un réseau Workgroup ==
Ligne 213 : Ligne 239 :
# Nom Netbios de la machine (identification réseau)
# Nom Netbios de la machine (identification réseau)
netbios name = SERVEUR
netbios name = PC230
# Chaine de commentaire associé au serveur (voisinage réseau)
# Chaine de commentaire associé au serveur (voisinage réseau)
Ligne 395 : Ligne 421 :
# Nom Netbios de la machine (identification réseau)
# Nom Netbios de la machine (identification réseau)
netbios name = SERVEUR
netbios name = PC230
# Chaine de commentaire associé au serveur (voisinage réseau)
# Chaine de commentaire associé au serveur (voisinage réseau)
Ligne 561 : Ligne 587 :
# Nom Netbios de la machine (identification réseau)
# Nom Netbios de la machine (identification réseau)
netbios name = SERVEUR
netbios name = PC230
# Chaine de commentaire associé au serveur (voisinage réseau)
# Chaine de commentaire associé au serveur (voisinage réseau)

Version du 12 février 2008 à 10:11

Introduction

Samba est l'implémentation du protocole SMB (Server Message Block) sous Unix / Linux. Il sert à partager des fichiers et des imprimantes avec les réseaux Microsoft.

Site officiel : www.samba.org

Samba lance deux services : smbd et nmbd.

Le protocole SMB est tout sauf performant : il pollue le reseau par l'utilisation intensive du broadcast.

Samba utilise les ports 137 (netbios name service, nbname, en UDP), 138 (netbios datagram service nbdatagram, en UDP), 139 (netbios session service, nbsession, en TCP), et 445 ("direct-hosted" tcp, en tcp et udp).

La méthode de connexion traditionnelle smb utilise les ports 137, 138 et 139 tandis que la nouvelle méthode (CIFS, sur windows XP) n'utilise que le port 445.

Installation

Pour installer Samba, on tape la commande suivante :

 # apt-get install samba smbclient smbfs

Configuration

Le fichier de configuration de Samba est /etc/samba/smb.conf.

Le programme testparm analyse le fichier smb.conf et signale les erreurs éventuelles.

Après avoir modifié la configuration, il faut relancer le service :

 # /etc/init.d/samba restart


Le fichier /etc/samba/smb.conf se divise en différentes sections :

  • La section [global] : configuration globale de samba
  • La section [homes] : cette section particulière permet de remonter une ressource qui correspond au répertoire de travail (home directory) de l'utilisateur qui s'est authentifié.

On peut ensuite créer différentes sections, une par partage voulu.

Samba peut fonctionner de différentes manières. Voici quelques cas de figures courants.


Le partage par ressource sur un réseau Workgroup

Voici un fichier /etc/samba/smb.conf permettant de partager une ressource (répertoire ou imprimante) sur un réseau Workgroup :

 # PARTAGE PAR RESSOURCES (share)
 
 # Il y a 2 cas possibles :
 #
 # CAS n°1 : on partage une ressource totalement anonyme
 # CAS n°2 : on partage une ressource avec un mot de passe associé à la ressource
  
 # Section GLOBAL
 # Configuration globale de Samba
 [global]
       # Nom du groupe de travail
       workgroup = WORKGROUP
       
       # Nom Netbios de la machine (identification réseau)
       netbios name = PC230
       
       # Chaine de commentaire associé au serveur (voisinage réseau)
       server string = %h Serveur (Samba %v)
       
       # Utilisateurs interdits
       invalid users = root
       
       # Enregistre un fichier de log par machine cliente du réseau MS
       log file = /var/log/samba/log.%m
       
       # Taille maximale des logs : 1 Mo
       max log size = 1000
       
       # On n'utilise pas Syslog pour enregistrer les logs
       syslog = 0
       
       # On fait un partage par ressources
       security = share
       
       # On utilise les mots de passe encryptés
       # (attention, W95 et W98a fonctionnent avec les mdp en clair)
       encrypt passwords = true
       
       # Accélère les transferts réseaux
       socket options = TCP_NODELAY
       
       # Empeche nmbd de chercher à résoudre le nom netbios via le DNS
       dns proxy = no
       
       # Nom du compte invité qui va permettre de créer une
       # ressource partagée par mot de passe (celui du compte invite)
       guest account = invite
       
       # Emplacement du fichier contenant les logins et mdp samba
       smb passwd file = /etc/samba/smbpasswd
       
       # Pour récupérer les imprimantes définies dans CUPS
       printing = cups  
       
       
 # Section HOMES
 # Cette section est inutile ici car on utilise le mode share
 
 
 # Section PRINTERS
 # Cette section permet de partager les imprimantes définies sur le serveur
 [printers]
       # Le commentaire associé à l'imprimante
       comment = Les imprimantes
       
       # Affiche les imprimantes dans la liste des partages du serveur
       browseable = yes
       
       # Dans le cas d'une imprimante, c'est l'emplacement 
       # des fichiers temporaires
       path = /tmp
 
       # Spécifie qu'il s'agit d'une imprimante et non un répertoire
       printable = yes
       
       # Partage l'imprimante de manière anonyme
       public = yes
       
       # Logique
       writable = no
       
       # Empeche d'autres utilisateurs de supprimer mes impressions
       create mode = 0700
 
 
 # Sections REPERTOIRES PARTAGES
 
 # CAS n°1: un CDROM partagé anonymement
 [cdrom]
       # Le commentaire associé au CDROM
       comment = Le CDROM
       
       # Point de montage du CDROM
       # synonyme de directory =
       path = /cdrom
       
       # Empeche le bloquage d'un fichier par un utilisateur
       locking = no
        
       # Logique
       writable = no
       
       # Partage le CDROM de manière anonyme
       public = yes
 
 
 # CAS n°2 : un répertoire partagé mais protégé par mot de passe
 [partage]
       # Le commentaire associé au répertoire
       comment = Un répertoire partagé mais protégé par mot de passe
       
       # Emplacement du répertoire partagé
       path = /home/partage
       
       # Support en lecture / écriture
       # synonyme de read only = no
       writable = yes
       
       # Partage anonyme désactivé (cas par défaut)
       # synonyme de guest ok = no
       public = no
       
       # Voir explication ci-dessous
       valid users = invite
       
       # Masque de création des fichiers et répertoires
       create mask = 0644
       directory mask = 0755
        

Dans le cas du mode share, pour pouvoir positionner un mot de passe sur une ressource, il faut créer un compte UNIX 'invite' :

 # adduser --shell /bin/false --disabled-login invite

On Crée ensuite une entrée dans le fichier /etc/samba/smbpasswd :

 # smbpasswd -a invite

Le mot de passe saisi correspondra à celui du répertoire partagé.

Il faut ensuite créer le répertoire partagé et donner l'arborescence partagée à l'utilisateur invite du groupe invite :

 # mkdir /home/partage
 # chown invite.invite /home/partage


Petit rappel : il est toujours utile de faire un testparm pour vérifier la cohérence du fichier de configuration, et ne pas oublier de relancer le service pour que les modifications soient prises en compte.

On peut tester la configuration avec la commande smbclient :

 # smbclient -L PC230
 Password:
 Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.24]
 
       Sharename       Type      Comment
       ---------       ----      -------
       cdrom           Disk      Le CDROM
       partage         Disk      Un répertoire partagé mais protégé par mot de passe
       IPC$            IPC       IPC Service (pc230 Serveur (Samba 3.0.24))
       HP_LaserJet_1200_LPT_parport0_HPLIP Printer   HP LaserJet 1200
 
 Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.24]
 
       Server               Comment
       ---------            -------
       PC230                pc230 Serveur (Samba 3.0.24)
       Workgroup            Master
       ---------            -------
       ...                  ...
       

La commande smbclient demande un mot de passe, on tape entrée.


Le partage par utilisateur sur un réseau Workgroup

Voici un fichier /etc/samba/smb.conf permettant de partager une ressource (répertoire ou imprimante) avec une authentification Utilisateur / Mot de passe sur un réseau Workgroup :

 # PARTAGE PAR UTILISATEUR (user) - Groupe de travail
 
 # Il y a 2 cas possibles :
 #
 # CAS n°1 : on partage une ressource totalement anonyme
 # CAS n°2 : cas normal du mode user, on fait une authentification 
 #           par login et mot de passe
 
 
 # Section GLOBAL
 # Configuration globale de Samba
 [global]
       # Nom du groupe de travail
       workgroup = WORKGROUP
       
       # Nom Netbios de la machine (identification réseau)
       netbios name = PC230
       
       # Chaine de commentaire associé au serveur (voisinage réseau)
       server string = %h Serveur (Samba %v)
       
       # Utilisateurs interdits
       invalid users = root
       
       # Enregistre un fichier de log par machine cliente du réseau MS
       log file = /var/log/samba/log.%m
       
       # Taille maximale des logs : 1 Mo
       max log size = 1000
       
       # On n'utilise pas Syslog pour enregistrer les logs
       syslog = 0
       
       # On fait un partage par utilisateur
       security = user
       
       # On utilise les mots de passe encryptés
       # (attention, W95 et W98a fonctionnent avec les mdp en clair)
       encrypt passwords = true
       
       # Accélère les transferts réseaux
       socket options = TCP_NODELAY
       
       # Empeche nmbd de chercher à résoudre le nom netbios via le DNS
       dns proxy = no
       
       # Nom du compte invité qui va permettre de créer une
       # ressource partagée par mot de passe (celui du compte invite)
       # POUR LE CAS n°3
       guest account = invite
       
       # Emplacement du fichier contenant les logins et mdp samba
       # concerne le CAS n°1 et n°3
       smb passwd file = /etc/samba/smbpasswd
       
       
 # Section HOMES
 # Cette section particulière permet de remonter une ressource
 # qui correspond au répertoire de travail (home directory)
 # de l'utilisateur qui s'est authentifié
 [homes]
       # Correspond au home directory de l'utilisateur authentifié
       # %U sera remplacé par le nom d'utilisateur (login)
       comment = Le répertoire personnel de %U
       
       # Si on active cette option, on dispose d'une ressource 'homes'
       # redondante avec la ressource 'login'
       browseable = no
       
       # Il faut que l'utilisateur soit authentifié pour accéder
       # à la ressource (son home directory sur le serveur)
       public = no
       
       # Autorise l'écriture dans le répertoire personnel
       writable = yes
       
       # Droits d'accés des fichiers et répertoires crées
       create mask = 0644
       directory mask = 0755
       
       
 # Section PRINTERS
 # Cette section permet de partager les imprimantes définies sur le serveur
 [printers]
       # Le commentaire associé à l'imprimante
       comment = Les imprimantes
       
       # Affiche les imprimantes dans la liste des partages du serveur
       browseable = yes
       
       # Dans le cas d'une imprimante, c'est l'emplacement 
       # des fichiers temporaires
       path = /tmp
       
       # Spécifie qu'il s'agit d'une imprimante et non un répertoire
       printable = yes
       
       # Partage l'imprimante de manière anonyme
       public = yes
       
       # Logique
       writable = no
       
       # Empeche d'autres utilisateurs de supprimer mes impressions
       create mode = 0700
       
       
 # Sections REPERTOIRES PARTAGES
 
 # CAS n° 1 : une ressource anonyme sans mot de passe
 # Un CDROM
 [cdrom]
       # Le commentaire associé au CDROM
       comment = Le CDROM
       
       # Point de montage du CDROM
       # synonyme de directory =
       path = /cdrom
       
       # Empeche le bloquage d'un fichier par un utilisateur
       locking = no
       
       # Logique
       writable = no
       
       # Partage le CDROM de manière anonyme
       public = yes
       
       
 # CAS n°2 : un répertoire partagé qu'à certains utilisateurs
 [prive]
       # Le commentaire associé au répertoire
       comment = Un répertoire partagé qu'a certains utilisateurs (CAS n°1) 
       
       # Emplacement du répertoire partagé
       path = /home/prive
       
       # Support en lecture / écriture
       # synonyme de read only = no
       writable = yes
       
       # Partage anonyme désactivé (cas par défaut)
       # synonyme de guest ok = no
       public = no
       
       # Voir explication ci-dessous
       # le @prive désigne le groupe Unix 'prive'
       valid users = @prive
       
       # Masque de création des fichiers et répertoires
       create mask = 0644
       directory mask = 0755
       

Dans le cas du mode user, pour ne partager une ressource partagée qu'a certains utilisateurs, il faut tout d'abord créer un compte UNIX pour chacun d'eux :

 # adduser --shell /bin/false --disabled-login paul
 # adduser --shell /bin/false --disabled-login pierre

On crée ensuite une entrée dans le fichier /etc/samba/smbpasswd :

 # smbpasswd -a paul
 # smbpasswd -a pierre

Coté Linux, les utilisateurs doivent avoir le droit d'écriture sur le répertoire partagé. La meilleure méthode consiste à créer un groupe Unix contenant les utilisateurs autorisés, et d'attribuer le repertoire partagé au groupe en question :

 # addgroup prive
 # adduser paul prive
 # adduser pierre prive
 # mkdir /home/prive
 # chgrp prive /home/prive
 # chmod 770 /home/prive
 # chmod g+s /home/prive

Avantage : pour partager cette ressource à de nouveaux utilisateurs, il suffit de leur créer le compte unix, une entrée dans smbpasswd et de les ajouter au groupe prive (il n'est plus nécessaire de modifier le fichier smb.conf).


Le partage sur un domaine Microsoft

Voici un fichier /etc/samba/smb.conf permettant de rejoindre un domaine existant afin de partager des ressources :

 # PARTAGE PAR UTILISATEUR (server) - Domaine avec authentification
 # déléguée à un controleur de domaine (PDC : Primary Domain Controller)
 
 # Il y a 2 cas possibles :
 #
 # CAS n°1 : on partage une ressource totalement anonyme
 # CAS n°2 : cas normal du mode user, on fait une authentification 
 #           par login et mot de passe
 
 
 # Section GLOBAL
 # Configuration globale de Samba
 [global]
       # Nom du groupe de travail
       workgroup = DOMAINE
        
       # Nom Netbios de la machine (identification réseau)
       netbios name = PC230
       
       # Chaine de commentaire associé au serveur (voisinage réseau)
       server string = %h Serveur (Samba %v)
       
       # Utilisateurs interdits
       invalid users = root
       
       # Enregistre un fichier de log par machine cliente du réseau MS
       log file = /var/log/samba/log.%m
       
       # Taille maximale des logs : 1 Mo
       max log size = 1000
       
       # On n'utilise pas Syslog pour enregistrer les logs
       syslog = 0
       
       # On fait un partage par utilisateur, l'authentification est
       # déléguée au controleur de domaine (PDC)
       security = server
       password server = COMPAQ
       
       # On utilise les mots de passe encryptés
       # (attention, W95 et W98a fonctionnent avec les mdp en clair)
       encrypt passwords = true
       
       # Accélère les transferts réseaux
       socket options = TCP_NODELAY
       
       # Empeche nmbd de chercher à résoudre le nom netbios via le DNS
       dns proxy = no
       
       # Nom du compte invité qui va permettre de créer une
       # ressource partagée par mot de passe (celui du compte invite)
       # POUR LE CAS n°3
       guest account = invite
       
       # Emplacement du fichier contenant les logins et mdp samba
       # concerne le CAS n°1 et n°3
       smb passwd file = /etc/samba/smbpasswd
 
 
 # Section HOMES
 # Cette section particulière permet de remonter une ressource
 # qui correspond au répertoire de travail (home directory)
 # de l'utilisateur qui s'est authentifié
 [homes]
       # Correspond au home directory de l'utilisateur authentifié
       # %U sera remplacé par le nom d'utilisateur (login)
       comment = Le répertoire personnel de %U
 
       # Si on active cette option, on dispose d'une ressource 'homes'
       # redondante avec la ressource 'login'
       browseable = no
 
       # Il faut que l'utilisateur soit authentifié pour accéder
       # à la ressource (son home directory sur le serveur)
       public = no
 
       # Autorise l'écriture dans le répertoire personnel
       writable = yes
 
       # Droits d'accés des fichiers et répertoires crées
       create mask = 0644
       directory mask = 0755
       
 
 # Section PRINTERS
 # Cette section permet de partager les imprimantes définies sur le serveur
 [printers]
       # Le commentaire associé à l'imprimante
       comment = Les imprimantes
 
       # Affiche les imprimantes dans la liste des partages du serveur
       browseable = yes
 
       # Dans le cas d'une imprimante, c'est l'emplacement 
       # des fichiers temporaires
       path = /tmp
 
       # Spécifie qu'il s'agit d'une imprimante et non un répertoire
       printable = yes
 
       # Partage l'imprimante de manière anonyme
       public = yes
 
       # Logique
       writable = no
 
       # Empeche d'autres utilisateurs de supprimer mes impressions
       create mode = 0700
 
 
 # Sections REPERTOIRES PARTAGES
 
 # CAS n° 1 : une ressource anonyme sans mot de passe
 # Un CDROM
 [cdrom]
       # Le commentaire associé au CDROM
       comment = Le CDROM
 
       # Point de montage du CDROM
       # synonyme de directory =
       path = /cdrom
 
       # Empeche le bloquage d'un fichier par un utilisateur
       locking = no
       
       # Logique
       writable = no
 
       # Partage le CDROM de manière anonyme
       public = yes
 
 
 # CAS n°2 : un répertoire partagé qu'à certains utilisateurs
 [prive]
       # Le commentaire associé au répertoire
       comment = Un répertoire partagé qu'a certains utilisateurs (CAS n°1) 
 
       # Emplacement du répertoire partagé
       path = /home/prive
 
       # Support en lecture / écriture
       # synonyme de read only = no
       writable = yes
 
       # Partage anonyme désactivé (cas par défaut)
       # synonyme de guest ok = no
       public = no
       
       # Voir explication ci-dessous
       # le @prive désigne le groupe Unix 'prive'
       valid users = @prive
 
       # Masque de création des fichiers et répertoires
       create mask = 0644
       directory mask = 0755
 

Remarque : Pour que le serveur Linux puisse rejoindre le domaine existant, il faut se connecter au moins une fois avec le compte Administrateur définit sur le contrôleur de domaine, afin que ce dernier crée un compte machine :

 # net join -W DOMAINE -U Administrateur -P
 
 ... à tester et à coller le résultat ....

Dans le cas du mode server, les utilisateurs (login et mot de passe) sont définit sur un serveur existant.

Coté Linux, les utilisateurs doivent avoir le droit d'écriture sur le répertoire partagé. Cependant, les utilisateurs ne sont pas définit sur le serveur Linux mais sur le contrôleur de domaine. La solution consiste à permettre à tout le monde d'écrire dans ce répertoire, Samba se chargeant de n'autoriser que les utilisateurs autorisés sur le contrôleur de domaine.

 # mkdir /home/prive
 # chmod 777 /home/prive


Samba en contrôleur de domaine Microsoft

Voici un fichier /etc/samba/smb.conf permettant de faire un contrôleur de domaine Microsoft :

 # Controleur de domaine PDC (Primary Domain Controller)
 
 # Section GLOBAL
 # Configuration globale de Samba
 [global]
       # Nom du groupe de travail
       workgroup = DOMAINE
        
       # Nom Netbios de la machine (identification réseau)
       netbios name = PC230
 
       # Chaine de commentaire associé au serveur (voisinage réseau)
       server string = %h Serveur (Samba %v)
 
       # Utilisateurs interdits
       invalid users = root
 
       # Enregistre un fichier de log par machine cliente du réseau MS
       log file = /var/log/samba/log.%m
 
       # Taille maximale des logs : 1 Mo
       max log size = 1000
 
       # On n'utilise pas Syslog pour enregistrer les logs
       syslog = 0
 
       # On est PDC, on fait l'authentification par utilisateur
       security = user
 
       # On utilise les mots de passe encryptés
       # (attention, W95 et W98a fonctionnent avec les mdp en clair)
       encrypt passwords = true
         
       # Accélère les transferts réseaux
       socket options = TCP_NODELAY
 
       # Empeche nmbd de chercher à résoudre le nom netbios via le DNS
       dns proxy = no
 
       # Nom du compte invité qui va permettre de créer une
       # ressource partagée par mot de passe (celui du compte invite)
       # POUR LE CAS n°3
       guest account = invite
 
       # Emplacement du fichier contenant les logins et mdp samba
       # concerne le CAS n°1 et n°3
       smb passwd file = /etc/samba/smbpasswd
 
       # Permet de devenir le master browser du réseau
       # Le master browser est responsable de l'état du réseau
       # C'est en général le PDC qui effectue cette tache
       local master = yes
 
       # Permet de devenir le DOMAIN master browser du réseau
       domain master = yes
 
       # Cette option permet de déclencher une election sur le réseau 
       # afin de déterminer qui sera le master browser
       # Le fait de déclencher cette election me donne le plus de chance
       # devenir ce master browser
       preferred master = yes
 
       # Si ce chiffre est le plus grand du réseau, je deviens le PDC
       os level = 255
 
       # Permet aux utilisateurs de changer leur mot de passe sur ce serveur
       # depuis leur poste
       update encrypted = yes
 
       # Définit que le daemon nmbd doit agir en tant que serveur WINS
       wins support = yes
 
       # Winbind permet de placer des machines dans un domaine controlé 
       # par un PDC et d'autoriser les utilisateurs a accéder
       # à ces machines en utilisant les informations du PDC
       winbind separator = +
       winbind enum users = no
       winbind enum groups = no
       winbind uid = 10000-20000
       winbind gid = 10000-20000
 
       # désactive le support des ACL (Access Control List)
       # fonctionnalité utilisée par Active Directory
       nt acl support = no
 
       # Logins autorisés à se connecter aux ressources administratives
       # comme C$, ADMIN$ et IPC$
       admin users = admin
 
       # PRIMORDIAL !, sinon ca marche pas :
       # il faut que la ressource [netlogon] existe, meme si on n'utilise
       # pas un script logon
       domain logons = yes
 
       # Pour autoriser les utilisateurs a changer leurs mots de passe
       passwd program = /usr/bin/passwd %u
       passwd chat = *Enter\snew\sUnix\spassword:* %n\n *Retype\snew\sUnix\spassword:* %n\n
       
       # Nom du fichier netlogon
       logon script = logon.bat
 
 # Section NETLOGON
 # Permet de faire exécuter un script d'initialisation réseau par le poste 
 # client du domaine. Ceci permet par exemple connecter un lecteur réseau (Z:) ou de synchroniser l'heure
 [netlogon]
       # Il n'apparaitra pas dans la liste des ressources partagées
       browsable = no
       # Répertoire contenant le netlogon
       path = /etc/samba/netlogon
 
       # Cette ressource doit impérativement exister et etre
       # accessible en accés anonyme
       public = no
 
       # Pour la sécurité, cette ressource est exportée en read only
       writable = no
 
       # Permet à plusieurs utilisateurs d'utiliser le meme fichier
       # en meme temps
       locking = no
 
 ### Ce serveur effectuant la mission cruciale de PDC, il n'est pas
 ### recommandé de partager des ressources, bien que cela soit possible
 
 [homes]
       path = %H
       browsable = no

Pour chaque membre du domaine, il faut créer un compte unix correspondant à la machine et rajouter une entrée de type machine dans smbpasswd.

Attention : ce login doit porter le nom netbios de la machine et se terminer par un dollar (d'ou le --force-badname) :

 # adduser --shell /bin/false --disabled-login --force-badname nompc$ 
 # smbpasswd -a -m nompc$

Il faut aussi créer le répertoire pouvant acceillir le netlogon :

 # mkdir /etc/samba/netlogon

Le netlogon peut servir par exemple à créer automatiquement un volume réseau (ex: Z:), ou ajuster l'heure de l'ordinateur avec celle du contrôleur de domaine.

On peut optionnellement créer un fichier logon.bat :

 # echo "echo @off" > /etc/samba/netlogon/logon.bat
 # echo "echo Bienvenue sur le domaine" >> /etc/samba/netlogon/logon.bat
 # echo "pause" >> /etc/samba/netlogon/logon.bat

Utilisation de smbclient

smbclient est un client pour les réseaux samba.

Exemple :

 >smbclient -L PC230
 Password:
 Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.24]
 
       Sharename       Type      Comment
       ---------       ----      -------
       cdrom           Disk      Le CDROM
       partage         Disk      Un répertoire partagé mais protégé par mot de passe
       IPC$            IPC       IPC Service (pc230 Serveur (Samba 3.0.24))
       HP_LaserJet_1200_LPT_parport0_HPLIP Printer   HP LaserJet 1200
 
 Domain=[WORKGROUP] OS=[Unix] Server=[Samba 3.0.24]
 
       Server               Comment
       ---------            -------
       BLACKPEARL
       CHRIS-B48CAF99F
       D
       DEBIANTOINE          Debiantoine server
       PC230                pc230 Serveur (Samba 3.0.24)
       PCPROF-LDKBQYFP
       Workgroup            Master
       ---------            -------
       ATELIER              BOOWISS-MOBIL
       CIS                  KALMIYA
       HOUCINE              ORDI-PARIS02
       KOOKYOO.LAN          KOOKYNUX
       LECHAT               CREUFOP12
       NONOLEROBOT          SERVERPARIS01
       PC237'S DOMAIN       PC237
       WORKGROUP            DEBIANTOINE