Installer Samba 4 sur Debian: partage SMB propre et sécurisé

16 février 2026 · 15 min de lecture

Installer Samba 4 sur Debian peut vouloir dire deux choses très différentes: monter un partage SMB fiable pour des clients Windows, macOS ou Linux, ou construire un contrôleur de domaine Active Directory. Ne mélangez pas les deux au départ. Dans la majorité des homes labs, petits bureaux et installations domotiques, le besoin réel est beaucoup plus simple: un serveur Debian qui expose un dossier proprement, avec des utilisateurs nommés, des droits cohérents et une configuration vérifiable.

Le bon objectif est donc clair: un partage accessible sur le réseau local, sans accès invité, avec une configuration Samba lisible et des permissions Linux qui ne se contredisent pas. C’est aussi ce qui évite les articles cassés par des commandes empilées sans contexte. Ici, chaque bloc est une commande ou un fichier à copier, et chaque étape a un test de validation.

En pratique
  • Pour un simple partage de fichiers, configurez Samba en serveur autonome, pas en contrôleur Active Directory.
  • Les droits Samba et les droits Linux doivent viser le même groupe, sinon l’authentification réussit mais l’écriture échoue.
  • Sauvegardez toujours smb.conf, validez avec testparm, puis redémarrez smbd seulement après validation.
  • Désactivez l’accès invité sauf cas volontairement isolé et contrôlé.
  • Pour un vrai AD DC, il faut suivre une procédure différente: DNS, Kerberos, provisioning et rôle de domaine.

Choisir le bon mode Samba avant l’installation

Le piège classique consiste à lire “Samba 4” et à partir directement sur Active Directory. C’est inutile pour un partage de fichiers domestique, un serveur de sauvegarde local ou un dossier commun entre machines. Dans ce cas, Samba tourne comme serveur autonome: les utilisateurs sont gérés localement, les partages sont décrits dans /etc/samba/smb.conf, et le service principal est smbd.

Le mode Active Directory Domain Controller est un autre chantier. Il implique DNS, Kerberos, base d’annuaire, provisioning du domaine, stratégie de nommage et clients joints au domaine. Si vous voulez juste accéder à \\serveur\partage depuis Windows ou monter un partage depuis Linux, commencez par le mode autonome. Vous aurez moins de pièces mobiles et beaucoup moins de diagnostics inutiles.

Comparatif

Quel scénario choisir ?

Le choix du mode détermine les paquets, les services et la méthode de dépannage.

Partage SMB autonome

Le cas recommandé ici

Dossier partagé, utilisateurs locaux, droits UNIX, configuration smb.conf et service smbd.

Contrôleur AD DC

Projet d’infrastructure

Domaine complet, DNS/Kerberos, comptes centralisés, clients joints et procédure Samba dédiée.

Accès invité

À éviter par défaut

Pratique en test, mais rarement défendable sur un réseau où transitent sauvegardes ou documents.

Préparer Debian proprement

Partez d’un serveur Debian à jour, avec une adresse IP stable. Une réservation DHCP suffit si vous maîtrisez votre routeur; une IP statique convient aussi. Le point important est que les clients retrouvent toujours le même serveur. Samba n’aime pas les environnements où l’adresse change sans prévenir.

Je préfère une réservation DHCP documentée à une IP statique posée dans l’urgence. Le résultat est le même pour les clients, mais vous gardez une source de vérité réseau côté routeur.

Avant d’installer quoi que ce soit, mettez à jour les dépôts et le système. Sur une machine de production, lancez cette étape dans une fenêtre où un redémarrage éventuel ne pose pas problème.

sudo apt update
sudo apt upgrade

Installez ensuite Samba et les outils clients. Le paquet smbclient n’est pas strictement obligatoire pour servir un partage, mais il simplifie les tests depuis le serveur lui-même.

sudo apt install samba smbclient

Vérifiez la version et l’état du service. Le nom du service à contrôler pour un partage classique est smbd. Le service nmbd peut être utile selon les besoins de découverte NetBIOS, mais il n’est pas le cœur d’un accès SMB moderne.

smbd --version
systemctl status smbd --no-pager
Point de vigilance
N’installez pas un contrôleur AD DC “au cas où”. Si votre besoin est un partage de fichiers, un serveur autonome est plus simple à sauvegarder, à comprendre et à réparer.

Créer le dossier partagé et les droits Linux

Un partage Samba fiable commence côté système de fichiers. Si Linux refuse l’écriture, Samba ne pourra pas la rendre magique. Créez donc un groupe dédié, un dossier propre et des permissions cohérentes. Dans cet exemple, le groupe s’appelle sambashare et le dossier partagé est /srv/samba/domotique.

sudo groupadd --force sambashare
sudo mkdir -p /srv/samba/domotique
sudo chgrp sambashare /srv/samba/domotique
sudo chmod 2770 /srv/samba/domotique

Le bit 2 dans 2770 n’est pas décoratif: il force les nouveaux fichiers créés dans le dossier à conserver le groupe du répertoire. C’est la ligne qui évite beaucoup de tickets “je peux écrire mais mon collègue ne peut plus modifier”.

Ajoutez ensuite un utilisateur au groupe. Exemple avec un compte nommé nicolas. Si le compte n’existe pas encore sur Debian, créez-le d’abord. Si vous utilisez déjà un utilisateur système, gardez-le et ajoutez-le seulement au groupe.

sudo adduser nicolas
sudo usermod -aG sambashare nicolas

Créez maintenant le mot de passe Samba. Ce mot de passe peut être différent du mot de passe Linux. Il sera utilisé par les clients SMB.

sudo smbpasswd -a nicolas
sudo smbpasswd -e nicolas

Écrire une configuration smb.conf minimale

Avant de modifier smb.conf, sauvegardez le fichier. C’est non négociable. Une erreur de syntaxe se répare vite quand le fichier original existe encore.

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
sudo nano /etc/samba/smb.conf

Dans la section [global], gardez une configuration simple. Le nom de groupe de travail peut rester WORKGROUP si vous êtes sur un réseau domestique classique. Le paramètre server role = standalone server rend l’intention explicite.

[global]
   workgroup = WORKGROUP
   server role = standalone server
   map to guest = never
   usershare allow guests = no
   log file = /var/log/samba/log.%m
   max log size = 1000

Ajoutez ensuite le partage. Le nom entre crochets est celui que les clients verront sur le réseau. Les lignes importantes sont valid users, force group, create mask et directory mask. Elles évitent le grand classique: un fichier créé par un utilisateur mais inutilisable par le groupe.

[domotique]
   comment = Partage domotique local
   path = /srv/samba/domotique
   browseable = yes
   read only = no
   guest ok = no
   valid users = @sambashare
   force group = sambashare
   create mask = 0660
   directory mask = 2770
Poste de diagnostic réseau avec terminal flouté et switch Ethernet
Une configuration Samba se valide en trois couches: syntaxe smb.conf, service smbd, puis accès réel depuis un client.

Valider la configuration avant de redémarrer

Ne redémarrez pas Samba à l’aveugle. Lancez testparm pour vérifier la syntaxe et afficher la configuration chargée. Si cette commande échoue, corrigez smb.conf avant d’aller plus loin.

testparm /etc/samba/smb.conf

Si testparm ne signale pas d’erreur, redémarrez le service et vérifiez son état. Là encore, ne passez pas à l’étape suivante tant que le service n’est pas stable.

sudo systemctl restart smbd
systemctl status smbd --no-pager

Depuis le serveur Debian, testez la liste des partages avec smbclient. Cette commande vérifie déjà une partie de l’authentification et de la publication du partage.

smbclient -L localhost -U nicolas

Testez ensuite l’accès direct au partage. Créez un fichier simple, puis vérifiez sur le système de fichiers que le groupe et les droits sont corrects.

smbclient //localhost/domotique -U nicolas
smb: \> put /etc/hostname test-hostname.txt
smb: \> ls
smb: \> quit

ls -l /srv/samba/domotique
Grille de décision

Les trois validations qui comptent

Si une couche échoue, ne cherchez pas encore côté Windows ou macOS.

testparm

Configuration

Le fichier smb.conf se charge-t-il sans erreur ?

Impact décision : Si non, corrigez la syntaxe avant tout redémarrage.

systemd

Service

Le service smbd est-il actif après redémarrage ?

Impact décision : Si non, regardez les journaux Samba et systemd.

Linux

Droits

Le fichier créé a-t-il le bon groupe et les bons masques ?

Impact décision : Si non, revoyez chgrp, chmod, force group et masks.

Ouvrir le pare-feu sans exposer le serveur

Si un pare-feu local est actif, ouvrez Samba uniquement sur le réseau de confiance. Avec ufw, la règle applicative Samba peut suffire dans un réseau domestique simple. Dans un environnement plus strict, limitez la règle à votre sous-réseau.

sudo ufw allow from 192.168.1.0/24 to any app Samba
sudo ufw status verbose

Adaptez évidemment 192.168.1.0/24 à votre LAN. N’exposez pas SMB directement sur Internet. Si vous avez besoin d’un accès distant, passez par un VPN. SMB est fait pour un réseau de confiance, pas pour devenir un service public.

Se connecter depuis Windows, macOS et Linux

Depuis Windows, utilisez l’explorateur avec le chemin UNC du serveur. Remplacez l’adresse par celle de votre Debian. Si l’authentification échoue alors que smbclient fonctionne en local, vérifiez le nom d’utilisateur transmis par Windows: il peut préfixer le compte avec le nom de la machine.

\\192.168.1.20\domotique

Depuis macOS, le Finder accepte une URL SMB. Le raccourci “Se connecter au serveur” permet d’entrer l’adresse suivante.

smb://192.168.1.20/domotique

Depuis un autre poste Linux, installez les outils clients si nécessaire, puis testez avec smbclient avant de monter le partage en dur. Ce test isole les problèmes d’identifiants avant de toucher à /etc/fstab.

smbclient //192.168.1.20/domotique -U nicolas

Pour un montage temporaire côté Linux, créez un point de montage et utilisez mount.cifs. Évitez de laisser le mot de passe en clair dans l’historique shell sur une machine partagée.

sudo apt install cifs-utils
sudo mkdir -p /mnt/domotique
sudo mount -t cifs //192.168.1.20/domotique /mnt/domotique -o username=nicolas

Dépanner les erreurs les plus fréquentes

Le dépannage Samba devient pénible quand on saute les couches. Commencez toujours par le serveur, puis seulement ensuite le client. Un accès Windows qui échoue ne prouve pas que Windows est en cause; il peut simplement révéler un groupe Linux oublié.

SymptômeCause probableCommande utile
Le partage n’apparaît pasService arrêté, pare-feu ou découverte réseausystemctl status smbd --no-pager
Mot de passe refuséCompte Samba absent ou désactivésudo pdbedit -L
Lecture OK, écriture refuséeDroits Linux ou masques incohérentsls -ld /srv/samba/domotique
Configuration ignoréeErreur dans smb.conf ou mauvais partagetestparm /etc/samba/smb.conf
Accès lent ou instableDNS, Wi-Fi, switch, stockage ou logs à vérifierjournalctl -u smbd -n 80

Pour lire les journaux récents du service, utilisez journalctl. C’est souvent plus direct que de chercher dans tous les fichiers de logs.

journalctl -u smbd -n 80 --no-pager

Si un utilisateur existe côté Linux mais pas côté Samba, ajoutez-le avec smbpasswd. Si le groupe est mauvais, corrigez-le côté Linux. Si testparm affiche un autre chemin que celui attendu, vous avez probablement modifié la mauvaise section ou oublié un crochet de partage.

Checklist

Checklist avant de considérer Samba “en production”

Ne passez pas à l’usage réel tant que ces points ne sont pas vérifiés.

  • Adresse IP du serveur stable ou réservée dans le routeur.
  • Partage sans accès invité et limité à un groupe identifié.
  • testparm sans erreur après chaque modification de smb.conf.
  • Écriture testée depuis smbclient et depuis au moins un vrai client du réseau.
  • Sauvegarde prévue pour le dossier partagé, pas seulement pour la configuration.

Et si vous voulez vraiment un contrôleur Active Directory ?

Un contrôleur de domaine Samba 4 ne se résume pas à ajouter deux lignes dans smb.conf. Il faut préparer le nom de domaine, le realm Kerberos, le DNS, le provisioning, la résolution de noms et les clients qui rejoindront le domaine. Dans ce scénario, ne partez pas du fichier de configuration minimal ci-dessus: suivez la procédure AD DC officielle.

Le bon réflexe est de décider avant l’installation. Pour un partage de fichiers, vous gardez Debian simple et robuste. Pour un domaine, vous concevez un service d’identité. Ce n’est pas le même niveau de responsabilité, ni le même plan de sauvegarde. Un AD DC mal sauvegardé ou mal nommé devient vite un point de panne central.

Si vous hésitez encore entre les deux, c’est probablement que vous n’avez pas besoin d’AD DC aujourd’hui. Montez le partage, documentez les utilisateurs, testez la restauration, puis seulement ensuite décidez si la gestion centralisée des identités vaut cette complexité.

Ma recommandation est nette: commencez par le serveur autonome si vous voulez partager des dossiers. Passez à l’AD DC seulement si vous avez un vrai besoin de comptes centralisés, de jonction au domaine et de gestion des postes. Dans un lab domotique, un atelier ou une petite installation familiale, le serveur autonome couvre déjà l’essentiel.

Une configuration courte, testée, réparable

Une bonne installation Samba sur Debian n’est pas la plus longue. C’est celle que vous pouvez relire trois mois plus tard sans deviner pourquoi un droit existe. Un groupe, un dossier, un partage, un test testparm, un accès smbclient, puis un essai depuis le client réel: cette séquence suffit pour construire une base solide.

Évitez les raccourcis qui coûtent cher: accès invité par défaut, droits 777, absence de sauvegarde, pare-feu trop large, confusion avec Active Directory. Prenez Samba autonome si vous voulez un partage réseau propre. Évitez de monter un AD DC si vous n’avez pas déjà un besoin clair de domaine.

Questions pratiques
Nicolas Mercier
À propos de l’auteur Nicolas Mercier

Nicolas teste, casse et répare. Ingénieur réseaux de formation reconverti en bricoleur numérique, il automatise sa maison sous Home Assistant depuis 2016.

À lire aussi

À lire ensuite