Comment installer et configurer Samba sur Ubuntu : un guide complet étape par étape
Samba est une puissante suite logicielle open-source qui permet le partage transparent de fichiers et d’imprimantes entre les ordinateurs exécutant Windows et les systèmes d’exploitation de type Unix tels qu’Ubuntu. En installant et en configurant correctement Samba, vous pouvez combler le fossé entre les environnements Linux et Windows, permettant aux utilisateurs des deux plates-formes de partager des fichiers, des répertoires et même des imprimantes sur un réseau local ou étendu.
Que vous gériez un laboratoire domestique, un réseau de petite entreprise ou un environnement de serveur de production, ce guide complet vous guide à travers chaque étape de l’installation, de la configuration et de la sécurisation de Samba sur Ubuntu — y compris les options avancées que la plupart des tutoriels ignorent.
Prérequis
Avant de commencer, assurez-vous que vous disposez de :
- Un serveur ou une machine exécutant Ubuntu 20.04, 22.04, ou 24.04
- Un accès Sudo ou root au système
- Une compréhension de base de la ligne de commande Linux
- Une connectivité réseau entre les machines que vous souhaitez connecter
Si vous exécutez Samba sur un serveur distant, un environnement d’hébergement fiable et performant est essentiel. VPS Hosting d’AlexHost vous donne un accès root complet, des ressources dédiées et la flexibilité de configurer votre serveur exactement comme vous le souhaitez.
Étape 1 : Mettre à jour les paquets système
Avant d’installer un nouveau logiciel, il est essentiel de mettre à jour l’index des paquets de votre système et de mettre à niveau les paquets existants vers leurs dernières versions. Cela garantit la compatibilité et protège contre les vulnérabilités connues.
sudo apt update && sudo apt upgrade -yAttendez que le processus se termine avant de continuer.
Étape 2 : Installer Samba
Installez le package Samba en utilisant le gestionnaire de packages APT :
sudo apt install samba -yUne fois l’installation terminée, vérifiez qu’elle a réussi en vérifiant la version de Samba :
smbd --versionVous devriez voir une sortie similaire à :
Version 4.15.13-UbuntuVous pouvez également vérifier que le service Samba est en cours d’exécution :
sudo systemctl status smbdLa sortie devrait afficher le service comme active (running).
Étape 3 : Sauvegarder le fichier de configuration Samba par défaut
Avant d’apporter des modifications, sauvegardez toujours le fichier de configuration d’origine. Cela vous permet de restaurer les paramètres par défaut en cas de problème :
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bakC’est une bonne pratique que de nombreux guides oublient mais que les administrateurs système expérimentés suivent toujours.
Étape 4 : Créer et configurer un répertoire partagé
4.1 Créer le répertoire
Décidez quel répertoire vous souhaitez partager sur le réseau. Pour ce guide, nous allons créer un dossier dédié nommé shared dans le répertoire personnel :
mkdir ~/shared4.2 Définir les permissions du répertoire
Définissez les permissions appropriées sur le répertoire. Pour un environnement partagé où plusieurs utilisateurs ont besoin d’un accès en lecture et en écriture :
chmod 777 ~/shared> Note de sécurité : Le paramètre chmod 777 accorde des permissions complètes de lecture, d’écriture et d’exécution à tous les utilisateurs. Bien que pratique pour les tests, cela n’est pas recommandé pour les environnements de production. Dans une configuration de production, utilisez des permissions plus restrictives telles que chmod 770 et gérez l’accès via l’appartenance à un groupe.
Étape 5 : Configurer Samba — Modifier smb.conf
Ouvrez le fichier de configuration principal de Samba à l’aide d’un éditeur de texte :
sudo nano /etc/samba/smb.confFaites défiler jusqu’à la fin du fichier et ajoutez le bloc de configuration suivant :
[SharedFolder]
path = /home/username/shared
available = yes
valid users = username
read only = no
browsable = yes
public = yes
writable = yesRemplacez username par votre nom d’utilisateur réel du système Ubuntu.
Comprendre chaque directive
| Directive | Description |
|---|---|
path | Le chemin absolu du répertoire partagé |
available | Si le partage est disponible pour les utilisateurs |
valid users | Restreint l’accès aux utilisateur(s) répertorié(s) |
read only | Défini sur no pour autoriser l’accès en écriture |
browsable | Si le partage apparaît lors de la navigation sur le réseau |
public | Permet l’accès sans authentification (à utiliser avec prudence) |
writable | Permet aux utilisateurs d’écrire des fichiers sur le partage |
Après avoir apporté vos modifications, enregistrez le fichier en appuyant sur CTRL + O, puis Enter, et quittez avec CTRL + X.
Valider la configuration
Avant de redémarrer Samba, testez votre fichier de configuration pour les erreurs de syntaxe :
testparmCette commande analyse le fichier smb.conf et signale tout problème. Corrigez les erreurs avant de continuer.
Étape 6 : Créer un compte utilisateur Samba
Samba maintient sa propre base de données de mots de passe séparée des mots de passe système Linux standard. Vous devez ajouter un mot de passe spécifique à Samba pour tout utilisateur qui doit accéder au partage.
sudo smbpasswd -a usernameVous serez invité à entrer et confirmer un mot de passe. Ce mot de passe sera requis lors de la connexion au dossier partagé à partir d’une machine Windows ou Linux distante.
> Conseil : Utilisez un mot de passe fort et unique pour chaque utilisateur Samba. Évitez de réutiliser les mots de passe système.
Pour activer le compte utilisateur dans Samba (s’il a été précédemment désactivé) :
sudo smbpasswd -e usernameÉtape 7 : Configurer le Pare-feu
Si vous avez UFW (Uncomplicated Firewall) activé sur votre serveur Ubuntu, vous devez autoriser le trafic Samba à travers le pare-feu :
sudo ufw allow sambaVérifiez que la règle a été ajoutée :
sudo ufw statusSamba utilise les ports suivants :
- TCP 445 — SMB over TCP (principal)
- TCP 139 — Service de session NetBIOS
- UDP 137 & 138 — Services de nom et datagramme NetBIOS
Étape 8 : Redémarrer et activer les services Samba
Appliquez vos modifications de configuration en redémarrant les services Samba :
sudo systemctl restart smbd
sudo systemctl restart nmbdActivez les deux services pour qu’ils démarrent automatiquement au démarrage du système :
sudo systemctl enable smbd
sudo systemctl enable nmbdLe service nmbd gère la résolution des noms NetBIOS, ce qui est important pour que les clients Windows découvrent votre serveur Samba par nom sur le réseau local.
Étape 9 : Accéder au dossier partagé à partir d’un système Windows
À partir de n’importe quel ordinateur Windows sur le même réseau, vous pouvez maintenant vous connecter à votre partage Samba Ubuntu :
- Ouvrez l’Explorateur de fichiers
- Dans la barre d’adresse, tapez le chemin réseau de votre machine Ubuntu :
ubuntu_ip_addressSharedFolderRemplacez ubuntu_ip_address par l’adresse IP réelle de votre serveur Ubuntu (par exemple, 192.168.1.100SharedFolder)
- Lorsque vous y êtes invité, entrez le nom d’utilisateur Samba et le mot de passe que vous avez configurés à l’étape 6
- Le dossier partagé apparaîtra maintenant dans l’Explorateur de fichiers, et vous pouvez lire, écrire, copier et supprimer des fichiers comme vous le feriez avec n’importe quel dossier local
Mapper le partage en tant que lecteur réseau (Facultatif)
Pour un accès persistant, vous pouvez mapper le partage Samba en tant que lecteur réseau dans Windows :
- Cliquez avec le bouton droit sur Ce PC dans l’Explorateur de fichiers
- Sélectionnez Mapper un lecteur réseau
- Choisissez une lettre de lecteur et entrez le chemin réseau
- Cochez Reconnecter à la connexion pour un montage automatique
Étape 10 : Accéder au partage Samba depuis un autre système Linux
Sur une autre machine Linux, vous pouvez vous connecter au partage Samba en utilisant l’outil en ligne de commande smbclient.
Tout d’abord, installez smbclient s’il n’est pas déjà présent :
sudo apt install smbclient -yEnsuite, connectez-vous au partage :
smbclient //ubuntu_ip_address/SharedFolder -U usernameEntrez le mot de passe Samba lorsque vous y êtes invité. Vous accéderez à un shell interactif de type FTP où vous pouvez utiliser des commandes telles que ls, get, put et cd pour naviguer et transférer des fichiers.
Monter le partage Samba sur Linux
Pour une expérience plus transparente, vous pouvez monter le partage Samba en tant que système de fichiers local en utilisant cifs-utils :
sudo apt install cifs-utils -y
sudo mkdir /mnt/samba_share
sudo mount -t cifs //ubuntu_ip_address/SharedFolder /mnt/samba_share -o username=username,password=yourpasswordPour rendre le montage persistant après les redémarrages, ajoutez une entrée à /etc/fstab :
//ubuntu_ip_address/SharedFolder /mnt/samba_share cifs username=username,password=yourpassword,_netdev 0 0> Conseil de sécurité : Au lieu de stocker les identifiants dans /etc/fstab, utilisez un fichier d’identifiants avec des permissions restreintes.
Étape 11 : Options avancées de configuration de Samba
Le smb.conf de Samba supporte une large gamme de directives qui vous donnent un contrôle granulaire sur votre environnement de partage de fichiers. Voici les options avancées les plus utiles :
Accès en lecture seule
Pour empêcher les utilisateurs de modifier les fichiers dans un partage, définissez :
read only = yesAccès invité (partages anonymes)
Pour permettre aux utilisateurs de se connecter sans mot de passe :
guest ok = yes
public = yes> Utilisez l’accès invité uniquement sur des réseaux de confiance et isolés. Ne l’activez jamais sur un serveur accessible au public.
Restreindre l’accès par adresse IP
Pour limiter les machines qui peuvent se connecter à un partage :
hosts allow = 192.168.1.0/24
hosts deny = ALLCela restreint l’accès aux machines du sous-réseau 192.168.1.x uniquement.
Plusieurs dossiers partagés
Vous pouvez définir autant de partages que nécessaire en ajoutant des blocs supplémentaires à smb.conf :
[Documents]
path = /home/username/documents
valid users = username
read only = no
writable = yes
[Backups]
path = /srv/backups
valid users = admin
read only = yes
browsable = noDéfinir le nombre maximal de connexions
Pour limiter le nombre de connexions simultanées à un partage :
max connections = 10Forcer un utilisateur ou groupe spécifique
Pour garantir que tous les fichiers sont créés avec une propriété utilisateur ou groupe spécifique :
force user = samba_user
force group = samba_groupÉtape 12 : Sécuriser votre installation Samba
La sécurité est primordiale, surtout si votre serveur Samba est accessible au-delà de votre réseau local. Suivez ces meilleures pratiques de renforcement :
1. Désactiver l’accès invité
Sauf si explicitement requis, désactivez toujours l’accès anonyme :
map to guest = Never2. Utiliser des mots de passe forts
Appliquez des mots de passe forts et uniques pour tous les utilisateurs Samba. Évitez les mots du dictionnaire et utilisez une combinaison de majuscules, minuscules, chiffres et symboles.
3. Restreindre la visibilité des partages
Définissez browsable = no sur les partages sensibles afin qu’ils n’apparaissent pas lors de la navigation sur le réseau. Les utilisateurs qui connaissent le chemin exact peuvent toujours se connecter.
4. Limiter les permissions sur les répertoires partagés
Appliquez le principe du moindre privilège — accordez uniquement les permissions dont les utilisateurs ont réellement besoin. Évitez chmod 777 en production.
5. Lier Samba à une interface spécifique
Si votre serveur dispose de plusieurs interfaces réseau, liez Samba uniquement à l’interface interne :
[global]
interfaces = eth0 lo
bind interfaces only = yes6. Activer la journalisation
Activez la journalisation Samba pour surveiller l’accès et détecter les activités suspectes :
[global]
log file = /var/log/samba/log.%m
max log size = 1000
log level = 17. Maintenir Samba à jour
Mettez à jour régulièrement Samba pour corriger les vulnérabilités de sécurité connues :
sudo apt update && sudo apt upgrade samba -yChoisir le bon environnement d’hébergement pour votre serveur Samba
Les performances et la fiabilité de votre serveur de fichiers Samba dépendent fortement de l’infrastructure sous-jacente. Voici quelques options d’hébergement à considérer en fonction de votre cas d’usage :
- Petites équipes et projets personnels : L’hébergement web partagé offre un point d’entrée abordable pour les charges de travail légères.
- Entreprises en croissance et équipes de développement : L’hébergement VPS offre des ressources dédiées, un accès root complet et l’évolutivité nécessaire pour exécuter Samba aux côtés d’autres services.
- Charges de travail haute performance ou d’entreprise : Les serveurs dédiés offrent des performances maximales, une capacité de stockage et un débit réseau — idéaux pour les environnements de partage de fichiers à grande échelle.
- Applications d’IA et gourmandes en données : Si vous exécutez Samba aux côtés de charges de travail d’apprentissage automatique ou de traitement de données, L’hébergement GPU offre la puissance de calcul dont vous avez besoin.
Pour les équipes qui ont également besoin d’une expérience de panneau de contrôle géré, VPS avec cPanel simplifie la gestion du serveur tout en vous donnant la flexibilité d’installer et de configurer Samba.
Dépannage des problèmes Samba courants
Impossible de se connecter depuis Windows
- Vérifiez que le service Samba est en cours d’exécution :
sudo systemctl status smbd - Vérifiez les règles du pare-feu :
sudo ufw status - Confirmez que l’adresse IP est correcte et accessible :
ping ubuntu_ip_address - Assurez-vous que le nom d’utilisateur et le mot de passe correspondent à ce qui a été défini avec
smbpasswd
Accès refusé lors de l’accès au partage
- Vérifiez les permissions du répertoire :
ls -la ~/shared - Vérifiez que la directive
valid usersdanssmb.confcorrespond au nom d’utilisateur Samba - Confirmez que l’utilisateur a été ajouté avec
smbpasswd -a username
Partage Samba non visible sur le réseau
- Assurez-vous que
nmbdest en cours d’exécution :sudo systemctl status nmbd - Définissez
browsable = yesdans la configuration du partage - Vérifiez que la machine Windows et le serveur Ubuntu sont sur le même sous-réseau
Erreurs de configuration après modification de smb.conf
- Exécutez
testparmpour identifier les erreurs de syntaxe - Restaurez la sauvegarde si nécessaire :
sudo cp /etc/samba/smb.conf.bak /etc/samba/smb.conf
Conclusion
L’installation et la configuration de Samba sur Ubuntu est l’un des moyens les plus efficaces pour activer le partage de fichiers multiplateforme entre les systèmes Linux et Windows. En suivant ce guide, vous avez appris comment :
- Installer Samba et vérifier l’installation
- Créer et configurer des répertoires partagés avec les autorisations appropriées
- Ajouter des utilisateurs Samba et gérer l’authentification
- Configurer le pare-feu pour autoriser le trafic Samba
- Accéder aux partages à partir des clients Windows et Linux
- Appliquer des options de configuration avancées pour le contrôle d’accès et les performances
- Renforcer votre installation Samba contre les menaces de sécurité courantes
Avec la bonne infrastructure serveur et une configuration Samba correctement configurée, vous pouvez construire un environnement de partage de fichiers fiable, sécurisé et haute performance qui sert les utilisateurs Linux et Windows de manière transparente. Que vous exécutiez Samba sur une machine locale ou dans un environnement VPS Hosting basé sur le cloud, les principes de ce guide vous aideront à tirer le meilleur parti de votre déploiement.
sur tous les services d'hébergement