Installation et configuration de Samba  
 

 

Introduction

Le logiciel Samba est un outil qui permet aux utilisateurs de Windows de pouvoir accéder aux postes sous Linux. Il permet le partage des fichiers et des imprimantes de la même manière que sous un réseau Windows. Une brève description du réseau en place va nous permettre de comprendre le fonctionnement que l’on souhaite du poste Linux.

Supposons que le réseau de la société soit composé de postes sous Windows (9x, NT Workstation), d’un routeur pour accéder à Internet, et d’un serveur d’impression. Ce réseau est géré par Windows NT4 serveur. Le réseau est séparé en deux groupes de travail : UTILISATEURS et BUREAU. Tous les utilisateurs font partie du groupe de travail UTILISATEURS alors que les serveurs sont dans le groupe BUREAU. Le serveur Linux doit donc s’intégrer dans le groupe de travail BUREAU.

Installation du serveur

Tous les paramètres de gestion du serveur Samba sont inclus dans un fichier smb.conf. Ce fichier est lu lors du démarrage de Samba.

Le fichier /etc/smb.conf

Ce fichier décrit l’ensemble des paramètres nécessaires à la mise en réseau du poste sous Linux. Il est séparé en plusieurs parties. La première définit les paramètres globaux du serveur samba. Les autres définissent les différents accès que les utilisateurs peuvent avoir sur le serveur Linux. Le fichier suivant correspond à la configuration mise en place au sein de la société. Les lignes préfixées d’un dièse (#) correspondent aux commentaires.

# Le groupe de travail dans lequel va se situer le poste Linux s’appelle : bureau.

[global]
   workgroup = bureau
   keep alive = 30
   os level = 2
   socket options = TCP_NODELAY
   map to guest = Bad User

# Les lignes suivantes précisent que l’authentification des utilisateurs se fait au niveau du serveur, que         # l’adresse IP de ce poste est 192.98.1.1 et que les mots de passe ne sont pas cryptés.

   security = server
   password server = 192.98.1.1
   encrypt passwords = no

# Précise que le poste n’est pas le contrôleur primaire du domaine.
   local master = no

# Donne l’adresse IP du poste Linux ainsi que son masque de sous-réseau.
   interfaces = 192.98.1.68/255.255.255.0

# Désactive la résolution de nom Wins.
   wins support = no

# Le premier paramètre spécifie que lors d’une ouverture de session l’utilisateur accède à son répertoire      # home sur le disque Linux et que le nom de ce répertoire est le nom sous lequel il est connecté sur le         # réseau.
[homes]
   comment = %U
   browseable = no
   read only = no
   create mode = 0750

# Les deux zones suivantes donnent à tous les utilisateurs les accès aux répertoires spécifiés. Ce qui est     # entre crochets correspond au nom que l’utilisateur va voir de son poste windows lorsqu’il explorera le        # serveur Linux.

 [cdrom]
   comment = Linux CD-ROM
   path = /cdrom
   read only = yes
   locking = no

[disque_c]
   comment = ntserver2
   path = /disque_c
   read only = yes
   locking = no

Démarrage du service

Lorsque le fichier /etc/smb.conf est fait, il faut démarrer le service pour offrir l’accès aux utilisateurs. Les différents fichiers de lancement ou de redémarrage se trouvent dans le répertoire /etc/rc.d/init.d/. Mettez-vous dans ce répertoire en faisant cd /etc/rc.d/init.d/. Lancez le logiciel en tapant : smb start. Le serveur Samba possède son fichier de log : log.smb dans le répertoire /var/log/ ce qui permet de vérifier que le service est bien démarré et sans erreur. Chaque fois que le fichier smb.conf est modifié, il faut relancer le service. Pour ce faire, il existe deux commandes : smb restart ou smb reload.

Lorsque toutes les erreurs dans le fichier de log sont supprimées, les clients Windows peuvent alors accéder au poste Linux.

Les clients Windows

Les utilisateurs

Pour que les clients Windows puissent avoir accès au poste Linux, il faut leur créer un compte d’utilisateur. On peut utiliser les mêmes noms d’utilisateur que sur le réseau Windows. La commande à exécuter est : useradd dont voici un exemple :

useradd –m moi1

L’option –m permet de créer un répertoire au nom de l’utilisateur dans le répertoire home lorsque celui-ci n’existe pas. Le mot de passe de chaque compte est bloqué à la création. Pour le débloquer, sous root, on peut utiliser la commande :

passwd –u moi1

puis pour enregistrer le nouveau mot de passe :

 passwd moi1

Une invite de commande demande l’enregistrement du nouveau mot de passe puis la confirmation de ce dernier.

Suite à des erreurs de paramétrages, il peut être utile de supprimer un utilisateur. La commande suivante permet de supprimer l’utilisateur moi1 ainsi que son répertoire de travail /home/moi1 grâce à l’option –r.

userdel –r moi1

L’accès aux répertoires partagés

A partir du poste sous Linux, on peut souhaiter pouvoir entrer dans les différents répertoires sur le serveur. L’objectif peut être de pouvoir stocker des informations sur le disque du serveur pour pouvoir y accéder depuis les postes sous Windows. On pourrait utiliser les possibilités du serveur NFS (Network File System) mais ceci n’est pas toujours intéressant si le disque dur n’est pas suffisamment grand pour stocker les données. Il faut alors « monter » les répertoires du serveur Windows sur le serveur Linux avec la commande suivante :

smbmount //SERVERNT4/xavier /mnt/xavier –U moi1

SERVERNT4 est le nom du serveur NT de la société. xavier est un répertoire du disque partagé. /mnt/xavier est un répertoire du disque Linux. L’option –U définit le nom d’utilisateur (moi1) utilisé pour se connecter au serveur. L’exécution de cette commande retourne un prompt pour la saisie du mot de passe réseau de l’utilisateur. Une fois saisie, toutes les données sont stockées en local dans le répertoire /mnt/xavier sur le serveur Linux.

Lorsque du poste Linux, il n’y a plus de données à transférer sur le serveur NT, on peut « démonter » le répertoire utilisé pour faire les transferts. Pour supprimer l’accès au répertoire /mnt/xavier, on utilise la commande suivante :

 smbumount /mnt/xavier ou umount /mnt/xavier

Conclusion

Le logiciel Samba est indispensable à la mise en réseau d’un poste Linux dans un réseau Windows. Linneighborhood est un logiciel sous Linux qui possède le même type d’interface graphique que le Voisinage Réseau sous Windows. Il peut être très utile pour vérifier que le poste est accessible sur le réseau. Le logiciel samba permet aussi de partager des imprimantes sur le réseau.

Xavier
 

-= From guill.net =-