23.10. Serveur de fichiers et d'impression pour clients Microsoft® Windows® (Samba)

Contribution de Murray Stokely.

23.10.1. Généralités

Samba est un logiciel libre très populaire qui offre des services de partage de fichiers et d'imprimantes pour les clients Microsoft® Windows®. De tels clients peuvent se connecter et utiliser l'espace de fichiers d'une machine FreeBSD comme si c'était un disque local, ou utiliser des imprimantes FreeBSD comme si elles étaient des imprimantes locales.

Samba devrait se trouver sur votre support d'installation. Si vous n'avez pas installé Samba à l'installation de FreeBSD, vous pouvez alors l'installer à partir de la version pré-compilée ou portée net/samba3.

23.10.2. Configuration

Le fichier de configuration par défaut de Samba est installé sous le nom /usr/local/etc/smb.conf.default. Ce fichier doit être copié vers /usr/local/etc/smb.conf et personnalisé avant que Samba ne puisse être utilisé.

Le fichier smb.conf contient la configuration nécessaire à l'exécution de Samba, comme la définition des imprimantes et des ``systèmes de fichiers partagés'' que vous désirez partager avec les clients Windows. Le logiciel Samba comprend une interface Web appelé swat qui offre une méthode simple de configuration du fichier smb.conf.

23.10.2.1. Utilisation de l'interface web d'administration de Samba (SWAT)

L'interface web d'administration de Samba (SWAT) est exécutée sous la forme d'un ``daemon'' à partir d'inetd. Par conséquent, la ligne suivante dans le fichier /etc/inetd.conf doit être décommentée avant que swat ne puisse être utilisé pour configurer Samba:

swat   stream  tcp     nowait/400      root    /usr/local/sbin/swat

Comme expliqué dans la Exemple 23-1, un signal ``HangUP'' doit être envoyé à inetd après modification de son fichier de configuration.

Une fois que swat a été activé dans inetd.conf, vous pouvez utiliser un navigateur pour vous connecter à l'adresse http://localhost:901. Vous devez ouvrir tout d'abord une session sous le compte système root.

Une fois que vous avez ouvert une session sur la page principale de configuration de Samba, vous pouvez naviguer dans la documentation du système, ou commencer par cliquer sur l'onglet Globals. Le menu Globals correspond aux variables situées dans la section [global] du fichier /usr/local/etc/smb.conf.

23.10.2.2. Paramétrages généraux

Que vous utilisiez swat ou éditiez directement le fichier /usr/local/etc/smb.conf, les premières directives que vous allez sûrement rencontrer en configurant Samba seront:

workgroup

Le nom de domaine NT ou le groupe de travail pour les ordinateurs qui accèderont à ce serveur.

netbios name

Fixe le nom NetBIOS sous lequel est connu le serveur Samba. Par défaut c'est le même que la première composante du nom de la machine pour le DNS.

server string

Cette directive définie la chaîne de caractères qui sera affichée lors de l'utilisation de la commande net view et par d'autres outils réseau recherchant à afficher une description du serveur.

23.10.2.3. Paramètres de sécurité

Deux des plus importants paramétrages de /usr/local/etc/smb.conf sont le mode de sécurité choisi, et le format de mot de passe pour les utilisateurs. Les directives suivantes contrôlent ces options:

security

Les deux options les plus courantes sont security = share et security = user. Si vos clients utilisent des noms d'utilisateur identiques à ceux sur votre machine FreeBSD, alors vous voudrez utiliser un niveau de sécurité utilisateur. C'est le mode de sécurité par défaut et qui demande aux clients de d'ouvrir une session avant de pouvoir accéder aux ressources partagées.

Dans le niveau de sécurité partage (``share''), le client n'a pas besoin d'ouvrir de session avant de pouvoir se connecter à une ressource partagée. C'était le mode de sécurité par défaut d'anciennes versions de Samba.

passdb backend

Samba possède plusieurs modèles de support d'authentification. Vous pouvez authentifier des clients avec LDAP, NIS+, une base de données SQL ou un fichier de mot de passe modifié. La méthode d'authentification par défaut est appelée smbpasswd, et c'est celle qui sera présentée ici.

En supposant que le modèle smbpasswd par défaut est utilisé, le fichier /usr/local/private/smbpasswd doit être créé pour permettre à Samba d'identifier les clients. Si vous désirez donner accès à tous vos comptes utilisateur UNIX® à partir de clients Windows, utilisez la commande suivante:

# grep -v "^#" /etc/passwd | make_smbpasswd > /usr/local/private/smbpasswd
# chmod 600 /usr/local/private/smbpasswd

Veuillez consulter la documentation de Samba pour des informations supplémentaires sur les options de configuration. Avec les bases présentées ici, vous devriez disposer de tous les éléments nécéssaires au démarrage de Samba.

23.10.3. Démarrage de Samba

Pour activer Samba au démarrage du système, ajoutez la ligne suivante au fichier /etc/rc.conf:

samba_enable="YES"

Vous pouvez alors démarrer Samba en tapant:

# /usr/local/etc/rc.d/samba.sh start
Starting SAMBA: removing stale tdbs :
Starting nmbd.
Starting smbd.

Samba consiste essentiellement en trois ``daemon''s séparés. Vous devriez vous rendre compte que les ``daemon''s nmbd et smbd sont lancés par la procédure samba.sh. Si vous avez activé la résolution de noms winbind dans le fichier smb.conf, alors le ``daemon'' winbindd sera également lancé.

Vous pouvez arrêter Samba à tout moment en tapant:

# /usr/local/etc/rc.d/samba.sh stop

Samba est une suite logiciels complexes avec des fonctionnalités permettant une large intégration avec les réseaux Microsoft Windows. Pour plus d'information sur les fonctionnalités non-abordées dans ce document, veuillez consulter http://www.samba.org.

Ce document, ainsi que d'autres peut être téléchargé sur ftp.FreeBSD.org/pub/FreeBSD/doc/.

Pour toutes questions à propos de FreeBSD, lisez la documentation avant de contacter <questions@FreeBSD.org>.
Pour les questions sur cette documentation, contactez <doc@FreeBSD.org>.

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:13