17.2. Configuration d'un serveur Samba

Le fichier de configuration par défaut (/etc/samba/smb.conf) permet aux utilisateurs d'afficher leurs répertoires personnels (ou home) Red Hat Linux en tant que partage Samba. Il offre en partage également toute imprimante configurée pour le système Red Hat Linux en tant qu'imprimantes partagées Samba. En d'autres termes, vous pouvez brancher une imprimante à votre système Red Hat Linux et imprimer à partir des ordinateurs Windows de votre réseau.

17.2.1. Configuration graphique

Pour configurer Samba à l'aide d'une interface graphique, utilisez l'utilitaire Outil de configuration du serveur Samba. Pour une configuration en ligne de commande, passez à la Section 17.2.2.

L'utilitaire Outil de configuration du serveur Samba est une interface graphique permettant de gérer les partages Samba, les utilisateurs et les paramètres de base du serveur. Il modifie les fichiers de configuration dans le répertoire /etc/samba/. Toutes les modifications apportées à ces fichiers sans l'utilisation de l'application sont conservées.

Afin de pouvoir utiliser cette application, le système X Window doit être en cours d'exécution, vous devez être connecté en tant que super-utilisateur et le paquetage RPM redhat-config-samba doit être installé sur votre système. Pour lancer l'utilitaire Outil de configuration du serveur Samba à partir du bureau, allez au bouton Menu principal (sur le panneau) => Paramètres de système => Paramètres de serveur => Serveur Samba ou tapez la commande redhat-config-samba à une invite du shell (par exemple, dans un terminal XTerm ou GNOME).

Figure 17-1. Outil de configuration du serveur Samba

NoteRemarque
 

L'utilitaire Outil de configuration du serveur Samba n'affiche pas les imprimantes partagées ou la strophe par défaut permettant aux utilisateurs de consulter leurs propres répertoires personnels sur le serveur Samba.

17.2.1.1. Configuration des paramètres du serveur

La première étape dans la configuration d'un serveur Samba consiste à déterminer d'une part, les paramètres de base pour le serveur et d'autre part, un certains nombres d'options de sécurité. Après le démarrage de l'application, sélectionnez Préférences => Paramètres du serveur dans le menu déroulant. L'onglet Basic (pour les paramètres de base) apparaît à l'écran comme le montre la Figure 17-2.

Figure 17-2. Configuration des paramètres de base du serveur

Sous l'onglet Basic, spécifiez le groupe de travail auquel l'ordinateur devrait appartenir ainsi qu'une brève description de l'ordinateur. Ces éléments correspondent aux options workgroup et server string de smb.conf.

Figure 17-3. Configuration des paramètres de sécurité du serveur

L'onglet Sécurité (Security) contient les options suivantes:

  • Mode d'authentification — Cet élément correspond à l'option de sécurité. Sélectionnez l'un des types d'authentification suivant:

    • Domaine — Le serveur Samba dépend d'un contrôleur primaire de domaine Windows NT ou d'un contrôleur secondaire de domaine pour vérifier l'identité de l'utilisateur. Le serveur transmet le nom d'utilisateur et le mot de passe au contrôleur et attend sa réponse. Spécifiez le nom du BIOS dédié au réseau (NetBIOS) du contrôleur primaire ou secondaire de domaine dans le champ Authentification du serveur.

      La valeur de l'option Mots de passe cryptés doit être Oui si cette dernière est sélectionnée.

    • Serveur — Le serveur Samba essaie de vérifier la combinaison nom d'utilisateur/le mot de passe en les transmettant à un autre serveur Samba. S'il ne peut le faire, le serveur essaie de vérifier ces informations en utilisant le mode d'authentification d'utilisateur. Spécifiez le nom du BIOS dédié au réseau (NetBIOS) de l'autre serveur Samba dans le champ Authentification du serveur.

    • Partage — Les utilisateurs de Samba n'ont pas à saisir une combinaison nom d'utilisateur/mot de passe sur la base d'un serveur Samba individuel. Le système leur demande leur nom d'utilisateur et mot de passe jusqu'à ce qu'ils essaient de se connecter à un répertoire partagé spécifique d'un serveur Samba.

    • Utilisateur — (Défaut) Les utilisateurs Samba doivent fournir un nom d'utilisateur et mot de passe valides sur la base d'un serveur Samba individuel. Sélectionnez cette option si vous souhaitez que l'option Utilisateur Windows fonctionne. Reportez-vous à la Section 17.2.1.2 pour de plus amples informations.

  • Crypter les mots de passe — (La valeur par défaut est Yes) Cette option doit être activée si les clients se connectent à partir de machines équipées de Windows 98, Windows NT 4.0 avec Service Pack 3 ou d'autres versions plus récentes de Microsoft Windows. Les mots de passe sont transmis entre le serveur et le client dans un format crypté au lieu d'un format texte-simple qui peut être intercepté. Ceci correspond à l'option encrypted passwords (mots de passe cryptés). Reportez-vous à la Section 17.2.3 pour obtenir de plus amples informations sur les mots de passe Samba cryptés.

  • Compte invité — Lorsque des utilisateurs normaux ou des utilisateurs invités se connectent à un serveur Samba, ils doivent être mappés à un utilisateur valide du serveur. Sélectionnez un des noms d'utilisateurs existant sur votre système pour créer un compte invité de Samba. Lorsque les invités se connectent au serveur Samba, ils possèdent les mêmes privilèges que ceux accordés à l'utilisateur ayant servi à la création du compte invité. Ceci correspond à l'option guest account.

Après avoir cliqué sur OK, les modifications sont enregistrées dans le fichier de configuration et le démon est redémarré; les modifications prennent donc effet immédiatement.

17.2.1.2. Gestion des utilisateurs Samba

Avant de pouvoir ajouter un utilisateur Samba, l'utilitaire Outil de configuration du serveur Samba nécessite qu'un compte utilisateur existant soit actif sur le système Red Hat Linux agissant en tant que serveur Samba. L'utilisateur Samba est associé au compte utilisateur Red Hat Linux existant.

Figure 17-4. Gestion des utilisateurs Samba

Pour ajouter un utilisateur Samba, sélectionnez Préférences => Utilisateurs Samba dans le menu déroulant et cliquez sur le bouton Ajouter utilisateur. Dans la fenêtre Créer un nouvel utilisateur Samba sélectionnez Nom d'utilisateur Unix parmi la liste des utilisateurs existant sur le système local.

Si l'utilisateur disposant d'un nom d'utilisateur différent sur un ordinateur Windows souhaite se connecter au serveur Samba à partir de son système Windows, spécifiez ce nom d'utilisateur Windows dans le champ Nom d'utilisateur Windows. Le Mode d'authentification de l'onglet Sécurité dans les préférences relatives aux Paramètres du serveur doit être réglé sur Utilisateur pour que cette option fonctionne.

Configurez également un Mot de passe Samba pour l'utilisateur Samba et confirmez ce mot de passe en le saisissant une deuxième fois. Même si vous choisissez d'utiliser des mots de passe cryptés pour Samba, il est fortement recommandé que les mots de passe Samba pour tous les utilisateurs soient différents des mots de passe système de Red Hat Linux.

Pour modifier un utilisateur existant, sélectionnez ce dernier parmi la liste et cliquez sur Éditer un utilisateur. Pour effacer un utilisateur Samba existant, sélectionnez cet utilisateur et cliquez sur le bouton Supprimer un utilisateur. La suppression d'un utilisateur Samba ne supprime pas le compte utilisateur Red Hat Linux auquel il est associé.

Les utilisateurs sont modifiés immédiatement après avoir cliqué sur le bouton OK.

17.2.1.3. Ajout d'un partage

Figure 17-5. Ajout d'un partage

Pour ajouter un partage, cliquez sur le bouton Ajouter. L'onglet Basic configure les options suivantes:

  • Répertoire — Spécifie le répertoire à partager via Samba. Ce répertoire doit exister.

  • Descriptions — Une brève description du partage.

  • Autorisations de base — Spécifie si les utilisateurs devraient avoir accès aux fichiers du répertoire partagé en lecture-seule ou si au contraire il devraient avoir accès au répertoire partagé en lecture et écriture.

Sur l'onglet Accès, sélectionnez entre l'autorisation d'accès au partage réservée seulement à certains utilisateurs spécifiques ou l'autorisation d'accès au partage attribuée à tous les utilisateurs Samba. Si vous choisissez de permettre l'accès seulement à un des utilisateurs spécifiques, sélectionnez ces derniers parmi la liste des utilisateurs Samba disponibles.

Le partage est ajouté immédiatement après avoir appuyé sur OK.

17.2.2. Configuration en ligne de commande

Le fichier de configuration de Samba est /etc/samba/smb.conf. Si vous modifiez ce dernier, les changements ne prennent effet qu'une fois le démon Samba redémarré à l'aide de la commande service smb restart.

Pour spécifier le groupe de travail Windows et une brève description du serveur Samba, modifiez les lignes suivantes dans votre fichier smb.conf file:

workgroup=NOM-DU-GROUPE-DE-TRAVAIL
serverstring=BREF-COMMENTAIRE-SUR-LE-SERVEUR

Remplacez NOM-DU-GROUPE-DE-TRAVAIL par le nom du groupe de travail Windows auquel cet ordinateur devrait appartenir. Le champ facultatif BREF-COMMENTAIRE-SUR-LE-SERVEUR est utilisé comme commentaire de Windows sur le système Samba.

Pour créer un répertoire de partage Samba sur votre système Linux, ajoutez la section suivante à votre fichier smb.conf (après l'avoir modifié en fonction de vos besoins et de votre système):

[Nom-du-partage]
comment=Insérez-un-commentaire-ici
path=/home/share/
validusers=tfoxcarole
public=no
writable=yes
printable=no
createmask=0765

Dans l'exemple ci-dessus, les utilisateurs tfox et carole peuvent lire et écrire dans le répertoire /home/share sur le serveur Samba, à partir d'un client Samba.

17.2.3. Mots de passes cryptés

Dans Red Hat Linux 9, les mots de passe cryptés sont activés par défaut pour des raisons de sécurité. Si les mots de passe cryptés ne sont pas utilisés, ils sont remplacés par des mots de passe en clair; ces derniers peuvent toutefois être interceptés par quelqu'un utilisant un programme renifleur de paquets. Nous vous recommandons donc d'utiliser des mots de passe cryptés.

Le protocole SMB de Microsoft utilisait à l'origine des mots de passe en clair. Cependant, Windows 2000 et Windows NT 4.0 avec le Service Pack 3 ou supérieur, Windows 98, Windows 2000, Windows ME et Windows XP requièrent des mots de passe Samba cryptés. Pour utiliser Samba entre un système Red Hat Linux et un systèmes exécutant une des systèmes d'exploitation Windows mentionnés ci-dessus, vous pouvez modifier le registre Windows afin qu'il utilise des mots de passe en texte clair ou vous pouvez configurer Samba sur votre système Linux pour qu'il utilise des mots de passe cryptés. Si vous choisissez de modifier le registre, vous devez le faire sur tous vos ordinateurs Windows — il s'agit d'une procédure risquée pouvant générer des conflits. Il est fortement recommandé d'utiliser des mots de passe cryptés afin d'accroître la sécurité de votre système.

Pour configurer Samba sur votre système Red Hat Linux pour l'utilisation de mots de passe cryptés, suivez la procédure ci-dessous:

  1. Créez un fichier de mots de passe séparé pour Samba. Pour en créer un sur la base de votre fichier /etc/passwd existant, tapez la commande suivante à l'invite du shell:

    cat/etc/passwd|mksmbpasswd.sh>/etc/samba/smbpasswd

    Si le système utilise NIS, tapez la commande suivante:

    ypcatpasswd|mksmbpasswd.sh>/etc/samba/smbpasswd

    Le script mksmbpasswd.sh est placé dans votre répertoire /usr/bin avec le paquetage samba.

  2. Modifiez les autorisations du fichier de mots de passe Samba afin que seul le super-utilisateur (ou root) ait des autorisations en lecture et en écriture:

    chmod600/etc/samba/smbpasswd
  3. Le script ne copie pas les mots de passe utilisateur dans le nouveau fichier. De plus, un compte utilisateur Samba n'est pas actif tant qu'un mot de passe ne lui a pas été attribué. Pour une sécurité accrue, il est recommandé d'utiliser un mot de passe utilisateur différent pour Samba et pour Red Hat Linux. Pour établir le mot de passe de chacun des utilisateurs Samba, utilisez la commande suivante (remplacez nom-d'utilisateur par le nom d'utilisateur de chacun des utilisateurs):

    smbpasswdnom-d'utilisateur
  4. Les mots de passe cryptés doivent être activés dans le fichier de configuration Samba. Dans le fichier smb.conf, vérifiez que les lignes suivantes ne sont pas désactivées:

    encryptpasswords=yes
    smbpasswdfile=/etc/samba/smbpasswd
  5. Assurez-vous que le service smb est bien lancé en tapant la commande service smb restart à l'invite du shell.

  6. Si vous voulez que le service smb démarre automatiquement, utilisez ntsysv, chkconfig ou l'Outil de configuration des services pour l'activer lors de l'exécution. Consultez le Chapitre 14 pour plus d'informations.

TuyauAstuce
 

Pour en savoir plus sur les mots de passe cryptés, consultez /usr/share/doc/samba-<version>/docs/htmldocs/ENCRYPTION.html (remplacez <version> par le numéro de la version de Samba que vous avez installée).

Le module PAM pam_smbpass peut être utilisé pour synchroniser les mots de passe Samba des utilisateurs avec leurs mots de passe système lorsque la commande passwd est utilisée. Si un utilisateur invoque la commande passwd, le mot de passe qu'il utilise pour se connecter au système Red Hat Linux et le mot de passe qu'il doit fournir pour se connecter à un fichier partagé Samba sont modifiés.

Pour activer cette fonction, ajoutez la ligne suivante à /etc/pam.d/system-auth sous l'invocation pam_cracklib.so:

passwordrequired/lib/security/pam_smbpass.sonullokuse_authtoktry_first_pass

17.2.4. Démarrage et arrêt du serveur

Le service smb doit être en cours d'exécution sur le serveur partageant les répertoires via Samba.

Affichez le statut du démon Samba à l'aide de la commande suivante:

/sbin/servicesmbstatus

Démarrez le démon à l'aide de la commande suivante:

/sbin/servicesmbstart

Arrêtez le démon à l'aide de la commande suivante:

/sbin/servicesmbstop

Pour lancer le service smb au démarrage, utilisez la commande:

/sbin/chkconfig--level345smbon

Vous pouvez également utiliser chkconfig, ntsysv ou l'utilitaire Outil de configuration des services pour configurer les services spécifiques qui seront lancés lors du démarrage. Reportez-vous au Chapitre 14 pour de plus amples informations.