TUTO – SAMBA : Installation et Configuration

L’application serveur Samba, qui s’exécute sous un système Linux, présente l’avantage principal de pouvoir faire du partage de fichiers (ou même d’imprimantes) avec différents systèmes d’exploitation tel que Windows, Mac ou Linux par exemple. Il permet ainsi d’avoir une interaction entre ces réseaux.

Nous allons voir à travers ce tutoriel, comment configurer un partage de fichiers de manière très simple et rapide grâce à Samba (sur un serveur Debian 8). Puis, on accèdera dans un second temps à ce partage par l’intermédiaire d’un ordinateur Windows 10.

On imagine ici qu’on souhaite créer sous Samba un utilisateur ainsi que son répertoire personnel (le dossier partagé donc) ; libre à vous d’adapter selon votre cas, les manipulations restent les mêmes !

Sachez également que je vous fournis un script bash en fin d’article qui couvre l’ensemble des manipulations réalisées, et qui vous permettra donc de créer l’utilisateur et de configurer son partage automatiquement et en quelques secondes.

Préparation

On commence par mettre à jour le serveur :

On installe ensuite samba :

On créé le groupe « dupont » :

On créé l’utilisateur « dupont » dans le système, en l’ajoutant au groupe « dupont » :

Puis, on le créé pour samba et on définit son mot de passe lorsqu’il est demandé :

On créé ensuite le dossier partagé, avec les droits adéquates :


Configuration de Samba

On peut maintenant s’attaquer à la configuration de samba. Le fichier de configuration principal de samba se situe à cet emplacement : /etc/samba/smb.conf

On va faire un fichier plus synthétique que l’original, mais on préserve tout de même ce dernier :

Il faut distinguer 2 parties fondamentales dans ce fichier :

  • global : qui va définir la configuration principale de samba
  • partages : qui contiendra, par sections, tous les partages que vous souhaitez faire

On créé maintenant le nouveau fichier smb.conf :

Pour revenir aux différentes options utilisées :

[global]

  • workgroup : le groupe de travail, je vous conseille WORKGROUP (valeur par défaut sur Windows)
  • server string (ou netbios name) : le nom du serveur, on utilise ici la variable d’environnement « %h » qui définit le hostname
  • public : la valeur « yes » permet de rendre les partages visibles
  • security : l’option « user » permet de forcer l’authentification par login + mot de passe
  • encrypt passwords : à « yes », valide la négociation des mots de passe cryptés

[dupont]

  • path : chemin du répertoire partagé
  • comment : un commentaire sur le partage
  • valid users : qui a le droit d’accéder au partage
    • les utilisateurs sont déclarés comme ceci : « user1, user2 »
    • les groupes avec des « @ », exemple : « @groupe1, @groupe2 »
  • writable : on met à « yes » pour le droit en écriture sur le dossier
  • directory mask : droits appliqués sur le répertoire (identique à Linux, avec un « 0 » devant)
  • create mask : droits appliqués pour la création de fichiers (identique à Linux, avec un « 0 » devant)

On peut ensuite vérifier que la conf est bonne grâce à testparm :

Enfin, on redémarre le service samba :


Montage sous Windows

Maintenant que notre partage samba a été configuré sur le serveur, on va monter ce dernier sur un poste Windows 10. Les manipulations restent quasi-identiques sur les autres versions.

Pour ce faire, on procède comme suit :

  • Accéder à l’explorateur de fichiers (Windows + E)
  • Aller dans l’onglet « Ordinateur »
  • Cliquer sur l’icône du lecteur réseau

Dans la fenêtre qui s’ouvre, on doit renseigner l’adresse du dossier à monté.
Pour le montage Samba, l’adresse prend la forme suivante : \\SERVEUR\NOM_DE_LA_SECTION

  • SERVEUR : c’est ce qui correspond au champ « server string » ou encore « netbios name » que vous avez mis dans le fichier smb.conf (généralement le hostname, ici « srv-samba »)
  • NOM_DE_LA_SECTION : ce qui a été déclaré entre crochets dans le fichier « smb.conf » dans la partie « partages » (ici ce sera « dupont » car on a mis [dupont])

Si vous n’avez pas de résolutions DNS sur votre Windows, plutôt que d’utiliser le hostname, utilisez l’IP du serveur.

En cliquant sur Terminer, on renseigne ensuite les identifiants de l’utilisateur :

Et voilà, nous avons accès au dossier :

On peut s’assurer que tout fonctionne en créant un fichier :

Si on retourne sur le serveur, on retrouve bien le-dit fichier :


Script Samba

Vous retrouverez ci-dessous un script bash qui reprend l’ensemble des manipulations effectuées sous Linux. Il permet donc de créé l’utilisateur, le groupe, le dossier et de pousser la configuration du partage dans le smb.conf.

Le script est très simple et ne présente pas de vérifications, sauf pour l’entrée du login. N’hésitez pas à l’adapter à vos besoins !

Si on souhaite déployer un partage pour l’utilisateur « thomas » par exemple :

Rendant le montage directement disponible sur Windows 🙂 :

 

Vous aimerez aussi...

3 réponses

  1. jd dit :

    Bonjour, merci pour ce tuto. Le problème, c’est que le fichier coucou.txt à les droits 760, hors l’option « create mask » dans smb.conf est à 770. J’ignore pourquoi, mais on obtient les droits mentionnés en faisant précéder l’option de ‘force’, exemple force create mask = 770 (Samba 4 sous Ubuntu 18.04)

    • VaL dit :

      Salut jd, merci pour cette précision en effet ! Je suis parvenu à résoudre ce problème en ajoutant le paramètre « force create mode = 0770 » dans le smb.conf. J’ai mis à jour l’article en conséquence 😉

  2. Tuxshake dit :

    Pour éviter de chercher 40 ans dans les entrailles de windows 10.
    J’ai rajouté ces 4 lignes à mon smb.conf pour forcer le protocol v2/v3 de samba.

    server min protocol = SMB2_10
    client min protocol = SMB2
    client max protocol = SMB3
    ntlm auth = yes

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.