Documentation ubuntu SAMBA
1/9
Samba (partage de dossiers et imprimantes dans un réseau local)
Le partage de dossiers et d'imprimantes dans un réseau local est une fonctionnalité des systèmes
d'exploitation modernes permettant d'accéder à des ressources d'un ordinateur (dossiers de données et
imprimantes) à partir d'un autre ordinateur situé dans un même réseau local (réseau domestique ou d'entreprise).
Le logiciel Samba est un outil permettant de partager des dossiers et des imprimantes à travers un réseau local. Il
permet de partager et d'accéder aux ressources d'autres ordinateurs fonctionnant avec des systèmes d'exploitation
Microsoft® Windows® et Apple® Mac OS® X, ainsi que des systèmes GNU/Linux, *BSD et Solaris dans
lesquels une implémentation de Samba est installée.
Pour partager de manière simple des ressources entre plusieurs ordinateurs, l'utilisation de Samba est conseillée.
Accéder à un dossier partagé
De base, Ubuntu contient l'essentiel permettant d'accéder à
des ressources partagées par un autre ordinateur.
Accéder à un ordinateur membre d'un même groupe de
travail
Pour accéder aux dossiers partagés d'un ordinateur distant,
ouvrez le menu Raccourcis du tableau de bord supérieur et
ouvrez l'outil Réseau. Les ordinateurs de votre groupe de
travail sont listés dans cette interface. Sélectionnez
l'ordinateur distant de votre groupe de travail pour accéder à
ses dossiers partagés. Vous voyez les dossiers partagés par cet
ordinateur.
Accéder à un ordinateur membre d'un groupe de travail différent
Pour accéder à des ordinateurs d'autres groupes de travail de votre réseau local, sélectionnez le dossier spécial
Réseau Windows. Les groupes de travail de votre réseau local s'affichent ; sélectionnez le groupe de travail dans
lequel se trouve l'ordinateur auquel vous désirez accéder. Sélectionnez ensuite l'ordinateur distant pour lequel
vous souhaitez accéder à ses ressources. Vous voyez les dossiers partagés par cet ordinateur.
Documentation ubuntu SAMBA
2/9
NOTE : les dossiers samba se montent, par défaut, sous Ubuntu 11.04 sous ~/.gvfs
Partages protégés par mot de passe
Certains ordinateurs protègent l'accès à leurs ressources
partagées dans un réseau local. Dans ces cas-là, une ou
plusieurs de leurs ressources peuvent être restreintes aux
utilisateurs disposant d'un compte d'utilisateur dans
l'ordinateur distant uniquement. Si une fenêtre
d'identification apparaît lorsque vous tentez d'accéder à
ordinateur distant ou un dossier partagé, vous devez
saisir l'identifiant et le mot de passe de votre compte de
l'ordinateur distant.
Si vous n'avez pas de compte d'utilisateur dans l'ordinateur distant auquel vous voulez accéder, contactez votre
administrateur réseau afin qu'il vous en crée un.
Les Mots de passe enregistrés sont ensuite gérables dans le menu Gnome>Préférences>Mots de passe et clés de
chiffrement
Cas particulier: accéder à un dossier partagé par Windows 7
Il est possible que vous ayez de la difficulté à accéder à des dossiers partagés par un ordinateur fonctionnant avec
Windows 7, même en saisissant correctement vos informations d'identification du poste distant. Ceci est dû
apparemment à une incompatibilité entre les modes de partage de Windows 7 et ceux des précédentes versions
de Windows (sur lesquels se base Samba). Pour corriger la situation, vous devez modifier certains paramètres
concernant la gestion des partages par Windows 7.
1. Dans votre ordinateur fonctionnant sous Windows 7, ouvrez une session à l'aide d'un compte
d'administrateur;
2. Ouvrez l'éditeur de base de registre. Appuyez sur le bouton Démarrer, puis dans le champ Rechercher
les programmes ou fichiers, inscrivez regedit et appuyez sur la touche [Entrée] de votre clavier;
3. Développez l'arborescence jusqu'à la clé de registre HKEY_LOCAL_MACHINE\SYSTEM\
CurrentControlSet\Control\Lsa\ puis:
o Modifiez la valeur de la clé everyoneincludesanonymous de 0 vers 1;
o Modifiez la valeur de la clé NoLmHash de 1 vers 0;
Documentation ubuntu SAMBA
3/9
4. Développez l'arborescence jusqu'à la clé de registre HKEY_LOCAL_MACHINE\SYSTEM\
CurrentControlSet\services\LanmanServer\Parameters, puis:
o Modifiez la valeur de la clé restrictnullsessaccess de 1 vers 0;
5. Redémarrez votre ordinateur.
Accéder manuellement à un dossier partagé
Il est parfois possible qu'un ordinateur distant n'apparaisse pas dans la liste
des ordinateurs proposant des ressources partagées. Dans ces cas-là, vous
pouvez saisir manuellement les informations de connexion pour accéder au
partage distant.
1. Rendez-vous dans le menu Raccourcis du tableau de bord
supérieur, puis appuyez sur Se connecter à un serveur… ;
2. Dans le menu déroulant de la fenêtre de saisie, choisissez Partage
Windows ;
3. Dans le champ Serveur, entrez l'adresse IP de l'ordinateur du
réseau local ou son nom d'ordinateur dans le réseau local ;
4. Accessoirement, saisissez d'autres informations, comme votre
nom d'utilisateur dans le poste distant ;
5. Appuyez sur le bouton Se connecter pour afficher les dossiers partagés.
Il est possible de créer un lanceur pour monter manuellement un partage Windows. Renseigner l'option
Commande du lanceur selon la syntaxe suivante: nautilus smb://MachineDistante/DossierPartagé sous
Ubuntu. remplacer nautilus par konqueror sous Kubuntu, par thunar sous Xubuntu.
Accéder à un dossier partagé (sous Ubuntu) depuis un poste Windows (réseau local)
I. Configuration de Windows XP Aucune configuration particulière n'est à faire sur le poste équipé de Windows
(testé avec Windows XP, configuration par défaut : attribution automatique des adresses IP, réseau local
Ethernet).
En effet il suffit que ce poste dispose du protocole TCP/IP, lequel est toujours installé par défaut sous Windows.
Or donc, bien vérifier:
connexions réseau> mon interface réseau> propriétés> onglet général>
cette connexion utilise les éléments suivants:
(x) client pour les réseaux microsoft
(x) tcp/ip
...
II. Pour accéder à un dossier préalablement partagé sous Ubuntu (voir § suivant) :
Aller dans : Favoris réseau > Tout le réseau > Réseau Microsoft Windows > Workgroup
Vous devriez voir votre (vos) machine Ubuntu sous la forme suivante :
"nom_de_machine server (Samba, Ubuntu)"
Ouvrir la machine pour voir les dossiers partagés, et pouvoir y accéder.
Autre façons de procéder :
Documentation ubuntu SAMBA
4/9
1. dans Favoris réseau, choisissez l'action Ajouter un favori réseau, puis lorsque le dialogue propose
Parcourir, parcourez le chemin indiqué ci-dessus jusqu'au dossier partagé et valider.
2. [Link] de travail> connecter un lecteur réseau>
entrer
lecteur: z:\
dossier: \\[Link]\mydir
valider
le cas échéant:
entrer le nom d'utilisateur et le mot de passe:
toto
mysecretpw
et voilà !
ensuite, accéder à la ressource distante sous samba via le lecteur z:\
3. idem que (2), mais en ms script, dans une [Link]:
net use z: \\[Link]\mydir mysecretpw /user:toto /persistent:no
4. idem que (2), mais en bash script, dans une xterm (cygwin):
#!/bin/bash
ip=[Link]
pw=$2
net use z: \\\\$ip\\mydir $pw /user:toto /persistent:no
echo $?
Partager des ressources dans un réseau local
Pour partager des dossiers ou des imprimantes (devenir un serveur de partage), des composantes
supplémentaires doivent être installées.
Penser au Pare-feu
En cas de problème de connexion, si par exemple, en essayant de parcourir votre réseau, vous obtenez ce
message d'erreur: "L'obtention de la liste des partages du serveur a échoué" , regardez la configuration du pare-
feu de chaque machine. Vous pouvez consulter ses logs ou le désactiver temporairement, pour vérifier si le
problème viens bien de là, avant de le paramétrer pourquoi pas à l'aide d'ufw. Les ports à ouvrir sont indiqués
dans le paragraphe Ports liés au partage de fichiers par les protocoles SMB et CIFS
Attention à la sécurité de votre réseau local, si une seule des machines de celui-ci est compromise alors vous
n'êtes plus protégés contre une intrusion sur votre propre machine
Si l'erreur "L'obtention de la liste des partages du serveur a échoué" persiste, c'est qu'il n'y a pas de serveur
WINS sur votre réseau. Pour activer cette fonction de Samba, éditez le fichier /etc/samba/[Link] en
remplaçant
wins support = no
par
wins support = yes
puis redémarrez Samba
Documentation ubuntu SAMBA
5/9
sudo service smbd restart
Voir les miniatures sur les partages samba
Suivre ce lien pour les détails.
Partager un dossier personnel (usershares)
Vous pouvez facilement partager un répertoire dont vous
êtes le propriétaire – ce sont essentiellement les
répertoires se trouvant dans votre dossier personnel
d'Ubuntu. Ce mode de partage de dossier est appelé
partage utilisateur (ou usershare), car il est administré
par chacun des utilisateurs de votre système Ubuntu (et
non pas d'une manière centralisée). La configuration
d'un partage utilisateur se fait très simplement, et les
options de partage sont limitées. De ce fait, il est
probablement préférable de désactiver la capacité de
configurer des partages utilisateur dans une structure
complexe (ex : un réseau d'entreprise) ; toutefois, ce
mode est très pratique et pertinent pour un partage
simple (ex : dans un réseau domestique).
Pour configurer un partage utilisateur :
1. Faites un clic-droit sur le dossier que vous
souhaitez partager et sélectionnez Propriétés ;
2. Dans l'onglet Partager, cochez la case Partager ce dossier ;
3. Dans le champ Nom du partage, saisissez le nom de partage que doit avoir le dossier. Ce nom ne peut
excéder 12 caractères. Par défaut, le nom actuel du dossier est recopié ; vous devrez modifier
manuellement ce champ pour le réduire à au plus 12 caractères, si besoin est ;
4. (Optionnel) Dans le champ Commentaire, entrez la description du dossier partagé ou des limitations
imposées sur ce dossier partagé ;
5. Modification du dossier à distance : Cochez la case Permettre aux autres utilisateurs de modifier ce
dossier pour permettre aux autres utilisateurs de créer, modifier ou supprimer des fichiers dans votre
dossier partagé. Laissez cette case décochée pour n'autoriser l'accès qu'en lecture seule ;
6. Accès aux utilisateurs non authentifiés : Cochez la case Accès d'évaluation (pour les personnes sans
compte utilisateur) pour autoriser tout le monde à accéder au dossier partagé. Laissez cette case
décochée pour n'autoriser que les utilisateurs authentifiés (possédant un compte d'utilisateur dans votre
système Ubuntu) à accéder au contenu du dossier partagé. Dans ce cas le mot de passe de l'utilisateur
pour Samba doit être défini par la commande "sudo smbpasswd -a nom_utilisateur"
7. Appuyez sur le bouton Modifier le partage pour prendre en compte la modification.
Installation de la fonction serveur, lors du premier partage
La toute première fois que vous souhaitez partager un dossier personnel,
votre gestionnaire de fichiers Nautilus vous informe que le service de
partage n'est pas encore installé. Seul un administrateur du système peut
procéder à l'installation de cette composante supplémentaire.
Si vous êtes un administrateur, appuyez sur le bouton Installer le
service pour procéder à l'installation du service. Vous devrez fermer votre session, une fois l'installation
terminée, puis la rouvrir pour prendre en compte ce nouveau service ;
Si vous n'êtes pas un administrateur de l'ordinateur, demandez à un administrateur d'installer le paquet
de logiciel samba. Ce paquet correspond à la fonctionnalité serveur de Samba. Lorsqu'il sera installé,
votre session doit être close puis rouverte pour que le nouveau service soit pris en compte.
Partager un dossier du système de fichiers (shares)
Documentation ubuntu SAMBA
6/9
Les dossiers partagés, ou partages administratifs (shares), sont gérés de manière centralisée. Ils sont uniquement
configurables par les administrateurs du système Ubuntu, et leurs options sont plus complètes. Le paquet
supplémentaire samba doit être installé afin de profiter de la fonctionnalité serveur de Samba dans le poste
Ubuntu.
La configuration de Samba se fait préférablement
manuellement, dans le fichier de configuration
/etc/samba/[Link]. C'est dans ce fichier que vous
paramétrez le nom du domaine et le groupe de travail de
l'ordinateur, les paramètres de sécurité et les dossiers et
imprimantes partagés.
Le fichier de configuration [Link] de
Samba
Les partages administratifs peuvent être gérés
graphiquement à l'aide de divers outils. Cependant, tous les outils n'offrent pas la possibilité de configurer tous
les multiples paramètres de Samba. Ces outils sont fort utiles en complément à une configuration manuelle (par
exemple, ajouter des nouveaux partages administratifs ou retirer des partages administratifs d'un serveur Samba
déjà configuré). Voici quelques outils graphiques pouvant vous assister dans le paramétrage de vos partages ;
leur utilisation propre est décrite dans leur document dédié :
Configuration du serveur Samba (system-config-samba)
shares-admin
Gadmin-Samba
Webmin
Aller plus loin...
Désactiver ou limiter les partages utilisateurs
Les partages utilisateurs sont bien pratiques dans un milieu domestique. Toutefois, ils peuvent représenter un
risque de sécurité dans un environnement contrôlé, tel une entreprise, où la gestion du partage des ressources
devrait être confiée à un administrateur réseau. Les partages utilisateurs devraient être désactivés afin que seuls
les membres autorisés puissent partager des dossiers à travers un réseau local.
Pour désactiver ou limiter les partages utilisateurs, ouvrez le fichier de configuration de Samba
/etc/samba/[Link]. Localisez la section suivante :
# Maximum number of usershare. 0 (default) means that usershare is
disabled.
; usershare max shares = 100
# Allow users who've been granted usershare privileges to create
# public shares, not just authenticated ones
usershare allow guests = yes
Décommentez l'option usershare max shares pour limiter la création de N partages utilisateurs par
compte d'utilisateur. Lorsque cette option est commentée, les utilisateurs peuvent créer un nombre
illimité de partages utilisateurs ;
Paramétrez l'option usershares max shares à 0 pour qu'aucun compte d'utilisateur ne puisse créer de
partage utilisateur ;
Documentation ubuntu SAMBA
7/9
Si vous souhaitez autoriser la création de partages utilisateur mais n'autoriser l'accès qu'aux utilisateurs
autorisés (interdire les connexions invitées), paramétrez l'option usershares allow guests à no.
Monter manuellement et automatiquement un dossier partagé dans le système de fichiers
Il est possible de monter un dossier partagé dans un point de montage de l'arborescence d'un système Ubuntu,
tout comme il est possible de le faire avec une partition de disque dur. Ceci est intéressant, par exemple, pour
partager des ressources entre plusieurs postes dans une grande entreprise ou pour accéder de manière
transparente à un serveur de stockage réseau (Network Attached Storage, ou NAS).
Les tâches suivantes doivent être exécutées par un administrateur. Assurez-vous que le paquet smbfs est installé.
De plus, assurez-vous de disposer d'un point de montage valide (un répertoire vide dans lequel devra être monté
le dossier partagé).
Pour les exemples suivants, nous établirons que :
le PC distant ou le NAS se nomme MACHINEDISTANTE ;
le dossier partagé par l'ordinateur distant est Multimedia ;
le point de montage dans l'ordinateur local est /media/MédiasPartagés/.
Montage manuel
Si aucune authentification n'est requise pour accéder au dossier partagé ou si vous ne possédez pas d'identifiant
dans le poste distant :
administrateur@local:~$ sudo [Link] //MACHINEDISTANTE/Multimedia
/media/MédiasPartagés -o guest
La connexion peut vous être refusée si l'authentification est nécessaire, ou certaines actions peuvent ne pas être
disponibles pour vous en tant qu'invité.
Si une authentification dans le poste distant est requise pour accéder au dossier partagé ou pour débloquer
certaines actions autorisées pour votre compte dans le poste distant :
administrateur@local:~$ sudo [Link] //MACHINEDISTANTE/Multimedia
/media/MédiasPartagés -o username=IDENTIFIANT
où IDENTIFIANT est votre identifiant dans le poste distant. Une invite Password: vous permet de saisir le
mot de passe de votre compte dans le poste distant.
Montage automatique
Modifiez le fichier /etc/fstab afin d'ajouter une nouvelle règle de montage. Si aucune authentification n'est
requise pour accéder au dossier partagé ou si vous ne possédez pas d'identifiant dans le poste distant, inscrivez la
règle suivante, sur une seule ligne :
//MACHINEDISTANTE/Multimedia /media/MédiasPartagés cifs
_netdev,guest 0 0
La montage peut vous être refusé si l'authentification est nécessaire, ou certaines actions peuvent ne pas être
disponibles pour vous en tant qu'invité.
Si une authentification dans le poste distant est requise pour accéder au dossier partagé ou pour débloquer
certaines actions autorisées pour votre compte dans le poste distant, inscrivez la règle suivante, sur une seule
ligne :
Documentation ubuntu SAMBA
8/9
//MACHINEDISTANTE/Multimedia /media/MédiasPartagés cifs
_netdev,credentials=/root/.smbcredentials 0 0
De plus, créez un fichier /root/.smbcredentials contenant le texte suivant – et uniquement ce texte-là :
username=IDENTIFIANT
password=MOTDEPASSE
Remplacez IDENTIFIANT par votre identifiant dans le poste distant et MOTDEPASSE par le mot de passe de
votre compte dans le poste distant.
Un redémarrage de l'ordinateur est nécessaire pour que le dossier partagé soit monté automatiquement dans le
point de montage sélectionné.
(L'option de montage _netdev indique au système d'attendre que la liaison au réseau local soit établie avant
de tenter le montage de ce dossier partagé.) Cependant la commande "sudo mount -a" monte automatiquement
tous les systèmes de fichiers énumérés dans /etc/fstab immédiatement.
Une méthode alternative qui a l'avantage de mieux fonctionner avec une connexion Wi-Fi est proposée en
configurant AutoFs pour monter les dossiers partagés.
Gérer les accès concurrentiels
Par défaut, les utilisateurs ne sont pas notifiés lorsqu'ils accèdent à un fichier déjà ouvert par un autre utilisateur.
Pour activer la notification d'un accès concurrentiel, modifiez le fichier (avec les droits d'administration)
/etc/samba/[Link]. Pour chacun des dossiers partagés, ajoutez les deux options suivantes :
strict locking=yes
share modes=no
Ports liés au partage de fichiers par les protocoles SMB et CIFS
Si vos postes clients et serveurs ont de la difficulté à communiquer entre eux, il est possible qu'une des causes
soit qu'un logiciel de pare-feu soit installé dans l'un ou l'autre des ordinateurs et que celui-ci bloque les
communications entrantes ou sortantes utilisés par Samba. Si tel est votre cas, assurez-vous que votre pare-feu
laisse passer les communications sur ces ports ; à ce sujet, reportez-vous au manuel d'administration de votre
logiciel de pare-feu.
et UDP utilisés par les protocoles SMB et CIFS pour le partage de
Voici la liste des ports TCP
fichiers et d'imprimantes.
Port Protocole Nom du service
135 TCP et UDP Localisateur de services RPC
137 TCP et UDP NetBIOS Name Service (nbname)
138 UDP NetBIOS Datagram Service (nbdatagram)
139 TCP NetBIOS Session Service (nbsession)
445 TCP et UDP Services de dossiers partagés Windows
Configuration du pare-feu par défaut d'Ubuntu
Par défaut, le service de pare-feu UFW est installé et actif dans Ubuntu. à moins d'utiliser un autre logiciel de
pare-feu ou d'avoir complètement désactivé UFW, vous devez mettre à jour également la section suivante dans le
fichier /etc/default/ufw :
# extra connection tracking modules to load \\
# ajout de nf_conntrack_netbios_ns pour Samba \\
IPT_MODULES="nf_conntrack_ftp nf_nat_ftp nf_conntrack_irc nf_nat_irc
nf_conntrack_netbios_ns
Fonctionnement de Samba
Documentation ubuntu SAMBA
9/9
Le fonctionnement de Samba repose principalement sur trois services (daemons): smbd , nmbd et winbindd.
Lors de l'installation des services de Samba, votre système Ubuntu a été configuré automatiquement pour gérer
ces services dès le démarrage du système.
smbd
Ce service est celui qui permet le partage des fichiers et des imprimantes. Son paramètrage se fait par
l'intermédiaire du fichier de configuration /etc/samba/[Link]. smbd vérifie toutes les trois minutes ce
fichier pour prendre en compte les modifications ; pour une application immédiate des changements,
relancez ce service
nmbd
Ce service sert à l'envoi et la découverte des noms NetBIOS (nom des machines) dans le réseau local. Il
est également utilisé pour la résolution de noms et la fonction WINS, lorsque votre serveur Samba est le
serveur d'un réseau NetBIOS. Ses paramètres sont aussi renseignés dans le fichier de configuration
/etc/samba/[Link].
winbindd
Ce service n'est utilisé que lorsqu'un serveur Samba intègre un domaine NT ou pour gérer les relations
d'approbation entre le serveur Samba et un domaine Windows / Active Directory.
Ressources supplémentaires
Site officiel (en)
Travail pratique de configuration de Samba (fr)
Mise en place de Samba sous Linux (fr)
Les variables de Samba (fr)
Samba, le guide de l'administrateur (Éditions Eyrolles)
Using Samba, Second Edition (en ligne et O'Reilly Medias)
Intégrer une machine Ubuntu dans un environnement Windows avec SADMS (Samba as Active
Directory Member Server/Station)
Hébergement direct de SMB sur TCP/IP
Securing Samba