Recherche de site Web

Comment configurer un partage Samba pour une petite organisation sur Ubuntu 16.04


L'auteur a choisi le Fonds pour l'Éducation Technologique pour recevoir un don dans le cadre du programme Écrire pour des Dons.

Introduction

Samba est une implémentation open-source du protocole réseau SMB/CIFS utilisé dans les environnements Windows pour des services partagés tels que l'accès aux fichiers et aux imprimantes ainsi que l'Active Directory. Samba peut également être utilisé pour créer des partages de fichiers multiplateformes dans une configuration appelée serveur autonome.

Dans ce guide, vous allez installer et configurer un serveur Samba autonome pour fournir des espaces de stockage de fichiers en réseau ou des partages pour une petite organisation hypothétique appelée Example.com. Cette organisation a plusieurs exigences pour ses partages de fichiers : 1. Chaque employé a besoin d'un partage de fichiers personnel et privé ; 2. Tous les employés doivent avoir un accès en lecture et écriture à un partage de fichiers commun ; 3. Un utilisateur administratif doit avoir un accès en lecture et écriture à tous les partages personnels et la propriété du partage commun.

Votre serveur Samba répondra à toutes ces exigences. Vous apprendrez également à accéder aux partages depuis Windows, Linux et macOS.

Prérequis

Avant de commencer ce guide, vous aurez besoin des éléments suivants :

  • Un serveur Ubuntu 16.04 avec un utilisateur sudo non root. Veuillez vous référer au guide de configuration initiale du serveur Ubuntu 16.04 pour plus d'informations. Samba a des exigences modestes en termes de RAM et de processeur et fonctionnera bien sur un serveur de 1 Go. Il est plus probable que vous manquiez d'espace de stockage, donc cela devrait être votre principale considération lors du choix de la taille de votre serveur.

  • Connexions TCP entrantes autorisées sur le port 445. Si vous utilisez le pare-feu UFW, veuillez consulter Comment configurer un pare-feu avec UFW sur un serveur cloud Ubuntu et Debian pour obtenir des instructions. Si vous utilisez un autre pare-feu ou un pare-feu externe, veuillez vous référer à la documentation pertinente.

Étape 1 — Installer Samba

Commençons par installer Samba en utilisant le système de gestion de paquets d'Ubuntu.

Avant d’installer de nouveaux paquets, mettons à jour l’index des paquets locaux pour inclure les versions les plus récentes des dépôts Ubuntu :

sudo apt-get update

Ensuite, installez Samba :

sudo apt-get install samba

Cette commande installera et démarrera à la fois le serveur Samba smbd et le serveur NetBIOS Samba nmbd. nmbd n'est pas requis pour ce tutoriel, donc dans un souci de sécurité, vous pouvez l'arrêter et le désactiver avec systemctl :

sudo systemctl stop nmbd.service

sudo systemctl disable nmbd.service

La commande sudo systemctl disable nmbd.service produira la sortie suivante lorsqu'elle sera exécutée :

nmbd.service is not a native service, redirecting to systemd-sysv-install
Executing /lib/systemd/systemd-sysv-install disable nmbd
insserv: warning: current start runlevel(s) (empty) of script `nmbd' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `nmbd' overrides LSB defaults (0 1 6).

Cette sortie indique que, parce que nmbd ne dispose pas de configuration de gestion systemd native, il est désactivé par l'ancien système d'initialisation SysV.

Pour éviter les problèmes de sécurité qui peuvent survenir en exécutant un service activé sur le réseau sans configuration, arrêtons le serveur Samba jusqu'à ce que les détails de configuration soient en place :

sudo systemctl stop smbd.service

Samba est maintenant installé et prêt à être configuré.

Étape 2 — Configuration des options globales de Samba

Définissons le comportement du serveur Samba en modifiant son fichier de configuration, situé à /etc/samba/smb.conf. Ce fichier comporte deux parties : une section [global] et une section [shares]. La section [global] configure le comportement du serveur Samba, et les sections [shares] configurent les partages de fichiers. Commençons par définir des directives dans la section [global].

Plutôt que de modifier directement /etc/samba/smb.conf, renommez-le en smb.conf.original et créez un nouveau fichier portant le nom smb.conf :

sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.orig

Avant de modifier /etc/samba/smb.conf, vérifions les interfaces disponibles afin d'indiquer à Samba lesquelles il doit reconnaître. Tapez ce qui suit :

ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 02:21:2c:03:ef:e2 brd ff:ff:ff:ff:ff:ff

Cette sortie indique que lo est l'interface de bouclage et que eth0 est l'interface réseau externe, bien que votre interface externe puisse être différente. Prenez note des deux : vous les inclurez avec la directive interfaces dans la section [global] du fichier smb.conf.

Commençons à éditer ce fichier avec nano ou votre éditeur préféré :

sudo nano /etc/samba/smb.conf

La section [global] de ce fichier définira le nom du serveur, son rôle et d’autres détails, y compris les interfaces réseau :

[global]
        server string = samba_server
        server role = standalone server
        interfaces = lo your_network_interface
        bind interfaces only = yes
        disable netbios = yes
        smb ports = 445
        log file = /var/log/samba/smb.log
        max log size = 10000

Ces directives précisent ce qui suit :

  • chaîne du serveur - Il s'agit des informations d'identification qui seront fournies aux utilisateurs lors des connexions. Vous pouvez utiliser samba_server ou un autre nom qui identifiera votre serveur. Tout au long de ce tutoriel, vous verrez la chaîne samba.example.com pour désigner le partage Samba de l'organisation Example.com.
  • rôle du serveur - Cela définit quel type de serveur Samba sera créé. Dans ce cas, il s'agit d'un serveur autonome, c'est-à-dire un partage de fichiers. Les autres types de serveurs incluent les serveurs membres de domaine et les contrôleurs de domaine.
  • interfaces - Ce sont les interfaces réseau auxquelles Samba se liera. lo est l'interface de boucle locale (127.0.0.1) et est requise. Vous devrez également inclure l'interface réseau externe que vous avez affichée précédemment. Il s'agit généralement de eth0.
  • bind interfaces only - Cela garantit que Samba ne se lie qu'aux interfaces listées sur la ligne interfaces. Comme mesure de sécurité, cela fait que Samba ignore les paquets qui ne correspondent pas aux interfaces spécifiées.
  • désactiver netbios - Cela désactive toutes les fonctions NetBIOS qui ne sont pas nécessaires sur un serveur autonome. Cela simplifie le processus de résolution des noms de serveur et le transport du trafic SMB.
  • ports smb - Cela définit le port sur lequel Samba écoutera. Le port 445 est le port standard pour Samba.
  • fichier journal - Cela définit le nom et l'emplacement du fichier journal de Samba.
  • max log size - Cela définit une limite de taille pour le fichier journal. Le nombre indiqué est en octets et équivaut à 10 Mo. Voici quelques points à garder à l'esprit lors de la définition de cette limite de taille : Lorsqu'elle est atteinte, Samba générera un nouveau fichier journal et déplacera l'ancien contenu vers un doublon avec une extension .old. Si la limite est de nouveau dépassée, le fichier .old existant sera détruit. Cela permet d'éviter que l'espace disque/partition ne soit saturé par le contenu d'un seul fichier journal. Vous devez donc définir une taille de fichier qui soit adaptée aux ressources de votre système.

Si vous voulez un journal plus détaillé pendant que vous configurez le serveur, ajoutez la ligne suivante à la section [global] :

        log level = 3 passdb:5 auth:5

Cela définit le niveau de journalisation à 3 (info), augmentant la granularité des informations de journal par rapport au paramètre par défaut de 1. Le réglage plus élevé de 5 pour les classes de débogage passdb et auth fournit plus d'informations liées à l'authentification des utilisateurs.

Enregistrez et fermez le fichier lorsque vous avez terminé de créer cette section.

Chaque fois que vous modifiez smb.conf, vous devriez exécuter l'utilitaire Samba testparm pour vérifier qu'il n'y a pas d'erreurs de syntaxe :

testparm

L'exécution de la commande testparm sur le fichier smb.conf produit la sortie suivante :

Load smb config files from /etc/samba/smb.conf
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

Appuyer sur ENTRÉE produit la sortie suivante :

# Global parameters
[global]
        server string = samba_server
        interfaces = lo your_network_interface
        bind interfaces only = Yes
        server role = standalone server
        log file = /var/log/samba/smb.log
        max log size = 10000
        smb ports = 445
        disable netbios = Yes
        idmap config * : backend = tdb

Si testparm affiche Loaded services file OK., alors il n'y a pas d'erreurs de syntaxe qui empêcheraient le serveur Samba de démarrer.

La configuration de la section [global] est tout ce qui est nécessaire pour démarrer le serveur Samba. Cependant, ses fonctionnalités seront limitées sans configurations de partages. Un partage se compose de deux parties, un utilisateur et un répertoire, qui doivent tous deux être créés et configurés pour permettre les connexions et les tests. La section suivante expliquera comment créer des utilisateurs pouvant accéder aux partages.

Étape 3 — Création des utilisateurs

Dans cette étape, nous allons créer des utilisateurs qui peuvent accéder aux partages. Ils auront besoin d'un accès en tant qu'utilisateurs Samba et système afin de s'authentifier auprès du serveur Samba lorsqu'ils se connectent et de pouvoir lire et écrire dans le système de fichiers.

Dans l'entreprise hypothétique Example.com, il y a quatre employés qui doivent être ajoutés au serveur Samba et créés en tant qu'utilisateurs sur le système Linux : david, mike, jane et lucy. En plus de ces quatre, il y aura un utilisateur admin qui pourra accéder et administrer les partages personnels. Cet utilisateur possédera également les partages communs auxquels tout le monde peut accéder.

La première étape pour ajouter des utilisateurs système consiste à créer des répertoires personnels pour chacun d'eux. Plutôt que d'utiliser les répertoires personnels standard à /home/user, les répertoires et les données Samba seront situés à /samba/. Garder les données Samba dans un emplacement unique et séparé des autres données utilisateur facilitera les tâches de gestion futures telles que les sauvegardes.

Remarque : Les utilisateurs créés dans ce guide ne sont pas destinés à avoir des connexions SSH. Si vos utilisateurs ont déjà des comptes sur le serveur, vous devez créer un utilisateur Samba dédié pour eux afin de suivre ce guide.

La section suivante expliquera le processus pour ajouter le premier utilisateur, david, mais vous devrez répéter ce processus pour mike, jane et lucy.

La première étape consiste à créer le répertoire où les données Samba seront stockées, à la racine du système de fichiers. Ce répertoire sera appelé /samba/, et sa propriété de groupe sera définie sur sambashare, un groupe qui a été créé lorsque vous avez installé Samba.

Exécutez les commandes suivantes pour créer le répertoire /samba/ et définir la propriété de groupe sur sambashare :

sudo mkdir /samba/

sudo chown :sambashare /samba/

Ensuite, créez le répertoire personnel de david sous le répertoire /samba/ :

sudo mkdir /samba/david

Maintenant, ajoutez david en tant qu'utilisateur système avec la commande suivante :

sudo adduser --home /samba/david --no-create-home --shell /usr/sbin/nologin --ingroup sambashare david

Les options font ce qui suit :

  • --home - Cela définit l'emplacement du répertoire personnel de l'utilisateur.
  • --no-create-home - Cela empêche la commande adduser de créer le répertoire personnel de david. Si le système devait créer ce répertoire, il serait rempli de fichiers de configuration tels que .bash_history qui ne sont pas nécessaires pour la configuration actuelle.
  • --shell - Cela définit quel shell david se verra attribuer lorsqu'il se connectera via SSH. Une connexion SSH n'est pas nécessaire pour accéder à un partage Samba ; le fait de définir ceci sur /usr/sbin/nologin désactivera les connexions SSH.
  • --in-group sambashare - Cela ajoute l'utilisateur au groupe sambashare, lui donnant un accès en lecture et écriture à ses propres partages et au partage commun.

Vous serez invité à entrer un mot de passe lorsque vous exécuterez cette commande. Choisissez un mot de passe unique, qui ne figure pas dans le dictionnaire, d'au moins 10 caractères.

Maintenant que l'utilisateur du système david existe, vous pouvez définir la propriété et les permissions sur son répertoire personnel Samba :

sudo chown david:sambashare /samba/david/

sudo chmod 2770 /samba/david/

Définir les permissions du répertoire sur 2770 signifie que les nouveaux fichiers ou répertoires créés sous /samba/david/ hériteront de la propriété de groupe du répertoire parent plutôt que du groupe principal de l'utilisateur qui a créé le fichier ou le répertoire. Cela signifie, par exemple, que si l'utilisateur admin créait un nouveau répertoire dans le partage de david, david pourrait le lire et y écrire.

Ensuite, ajoutez david au serveur Samba. Samba conserve sa propre base de données d'utilisateurs et de mots de passe, qu'il utilise pour authentifier les connexions. Pour se connecter, tous les utilisateurs doivent être ajoutés au serveur Samba et activés. Exécutez les commandes smbpasswd suivantes pour accomplir ces deux tâches :

sudo smbpasswd -a david

sudo smbpasswd -e david

Les options utilisées ici font ce qui suit :

  • -a - Cela ajoute l'utilisateur au serveur Samba sans l'activer.
  • -e - Cela active un utilisateur précédemment ajouté.

Le mot de passe que vous saisissez ici sera utilisé pour accéder au partage Samba et peut différer du mot de passe système.

L'utilisateur david existe maintenant en tant qu'utilisateur système sans la possibilité de se connecter au serveur via SSH. Il dispose d'un répertoire personnel à /samba/david, et est enregistré et activé en tant qu'utilisateur Samba.

Répétez ce processus pour chaque utilisateur Samba (mike, jane et lucy).

Pour créer l'utilisateur admin, exécutez les commandes suivantes en changeant le répertoire personnel pour /samba/everyone/ :

sudo mkdir /samba/everyone

sudo adduser --home /samba/everyone --no-create-home --shell /usr/sbin/nologin --ingroup sambashare admin

sudo chown admin:sambashare /samba/everyone/

sudo chmod 2770 /samba/everyone/

sudo smbpasswd -a admin

sudo smbpasswd -e admin

En plus de créer l'utilisateur admin, créons un groupe appelé admins pour faciliter la gestion du serveur. Avec des permissions de lecture et d'écriture sur chaque partage, ce groupe peut simplifier le travail d'ajout et de suppression des utilisateurs. Par exemple, si des utilisateurs individuels fonctionnent en tant qu'utilisateurs admin et quittent ensuite l'organisation, ils doivent être retirés individuellement de chaque partage. Les nouveaux administrateurs doivent également être ajoutés manuellement à chaque partage. Créer un groupe admins et donner à ce groupe un accès en lecture-écriture aux partages signifie que l'ajout et la suppression des utilisateurs ne nécessitent qu'une seule commande.

Exécutez les commandes suivantes pour créer un nouveau groupe appelé admins et ajouter l'utilisateur admin à ce groupe :

sudo groupadd admins

sudo usermod -G admins admin

Des utilisateurs supplémentaires peuvent être ajoutés au groupe admins en exécutant la deuxième commande, sudo usermod -G admins admin, et en remplaçant un autre utilisateur à la place de admin.

Les configurations du système sont maintenant terminées, avec les utilisateurs de l'organisation Example.com définis comme utilisateurs du système et de Samba. Passons à la configuration du serveur Samba afin que ces utilisateurs puissent accéder à leurs répertoires partagés.

Étape 4 — Configuration des partages Samba

Chaque partage aura sa propre section dans le fichier de configuration principal de Samba, /etc/samba/smb.conf, après les paramètres globaux. Ces sections définiront comment chaque partage fonctionnera.

Utilisez à nouveau l'éditeur de texte nano pour ouvrir et modifier ce fichier :

sudo nano /etc/samba/smb.conf

Le bloc de configuration suivant définira le partage personnel de chaque utilisateur :

...
[share_name]
        path =
        browseable =
        read only =
        force create mode =
        force directory mode =
        valid users =

Ces options incluent :

  • share_name - Il s'agit du nom du partage que vous utiliserez lors de la connexion.
  • path - C'est le chemin absolu vers le partage dans le système de fichiers.
  • browsable - Cela définit si les autres utilisateurs peuvent voir ou non le partage. L'activation de cette option permet uniquement aux autres utilisateurs du serveur Samba de voir l'existence du partage. Elle n'accorde aucun droit de lecture ou d'écriture.
  • lecture seule - Cela définit si les utilisateurs valides peuvent écrire dans le partage.
  • force create mode - Cela force les permissions pour tout fichier écrit sur le partage.
  • forcer le mode du répertoire - Cela force les permissions pour tout répertoire créé dans le partage.
  • utilisateurs valides - Il s'agit d'une liste des utilisateurs qui ont accès au partage. Ce paramètre peut inclure des noms d'utilisateur ou des groupes système tels que admins. Les groupes doivent être listés avec un @ devant, par exemple @admins.

Ajoutez le bloc de configuration de partage suivant pour david, en définissant son répertoire personnel, les permissions pour la propriété de groupe de ce répertoire, et les utilisateurs qui devraient avoir accès à son partage :

[david]
        path = /samba/david
        browseable = no
        read only = no
        force create mode = 0660
        force directory mode = 2770
        valid users = david @admins

Notez que les permissions du répertoire définissent la propriété du groupe sur celle du répertoire parent.

Créez un bloc de partage pour mike, jane et lucy. Changez uniquement le partage [name], path et valid users pour refléter le nom de chaque utilisateur.

Le partage [everyone] diffèrera des autres à la fois par [name], path, utilisateurs autorisés et navigable options, et ressemblera à ceci :

...
[everyone]
        path = /samba/everyone
        browseable = yes
        read only = no
        force create mode = 0660
        force directory mode = 2770
        valid users = @sambashare @admins

Donner au groupe sambashare un accès en lecture-écriture au partage permet à tous les utilisateurs d'accéder au partage, puisqu'ils ont été ajoutés à ce groupe lors de leur création.

Le fichier complet smb.conf ressemblera à ceci :

[global]
        server string = samba_server
        server role = standalone server
        interfaces = lo your_network_interface
        bind interfaces only = yes
        disable netbios = yes
        smb ports = 445
        log file = /var/log/samba/smb.log
        max log size = 10000

[david]
        path = /samba/david
        browseable = no
        read only = no
        force create mode = 0660
        force directory mode = 2770
        valid users = david @admins

[mike]
        path = /samba/mike
        browseable = no
        read only = no
        force create mode = 0660
        force directory mode = 2770
        valid users = mike @admins

[jane]
        path = /samba/jane
        browseable = no
        read only = no
        force create mode = 0660
        force directory mode = 2770
        valid users = jane @admins

[lucy]
        path = /samba/lucy
        browseable = no
        read only = no
        force create mode = 0660
        force directory mode = 2770
        valid users = lucy @admins

[everyone]
        path = /samba/everyone
        browseable = yes
        read only = no
        force create mode = 0660
        force directory mode = 2770
        valid users = @sambashare @admins

Enregistrez et fermez le fichier lorsque vous avez terminé de le modifier.

Testez la configuration à nouveau :

testparm

Cela produira une sortie qui ressemble à ce qui suit :

Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[david]"
Processing section "[jane]"
Processing section "[mike]"
Processing section "[lucy]"
Processing section "[everyone]"
Loaded services file OK.
Server role: ROLE_STANDALONE

Press enter to see a dump of your service definitions

Une fois la vérification de la configuration terminée, lançons le serveur Samba avec systemctl :

sudo systemctl start smbd.service

Le serveur Samba est maintenant en cours d'exécution et prêt à accepter les connexions. L'étape suivante consiste à se connecter au serveur Samba pour tester qu'il fonctionne comme prévu. La section suivante couvrira la connexion au serveur Samba depuis Windows, Linux et macOS.

Étape 5 — Connexion au serveur Samba

Dans cette section, nous couvrirons comment accéder aux partages Samba que nous avons créés depuis Linux, Windows et macOS.

Linux — La ligne de commande

Vous pouvez utiliser un outil appelé smbclient pour accéder à Samba depuis la ligne de commande. Ce paquet n'est pas inclus par défaut sur la plupart des distributions Linux, vous devrez donc l'installer avec le gestionnaire de paquets de votre système.

Sur les serveurs Debian et Ubuntu, installez smbclient avec la commande suivante :

sudo apt-get update

sudo apt-get install smbclient

Sur les systèmes Fedora, utilisez ce qui suit :

sudo dnf update

sudo samba-client

Et sur CentOS :

sudo yum update

sudo yum install samba-client

Remarque : Sur certaines distributions Linux, smbclient échouera avec le message d'erreur suivant :

smbclient: Can't load /etc/samba/smb.conf - run testparm to debug it

Si vous voyez ce message d'erreur, vérifiez que vous avez créé le fichier à /etc/samba/smb.conf.

smbclient utilise le format suivant pour accéder aux partages Samba :

smbclient //your_samba_hostname_or_server_ip/share -U username

Vous pouvez utiliser soit l’IP de votre serveur, soit le nom d’hôte que vous avez défini dans /etc/samba/smb.conf pour accéder au partage. Cet exemple utilise le nom d’hôte samba.example.com pour accéder au partage de david sur le serveur Samba que vous avez créé dans les étapes précédentes :

smbclient //samba.example.com/david -U david

Si david veut accéder à la part commune (everyone), changez la commande en :

smbclient //samba.example.com/everyone -U david

Après avoir exécuté la commande smbclient, il vous sera demandé le mot de passe Samba et vous serez connecté à une interface en ligne de commande rappelant l'interface textuelle FTP :

smb: \>

Cette interface est la plus utile pour tester les noms d'utilisateur et les mots de passe ainsi que l'accès en lecture-écriture. Par exemple, vous pouvez créer un répertoire et en lister le contenu comme suit :

mkdir test

ls

Vous devriez voir la sortie suivante :

  .                                   D        0  Fri Feb  2 14:49:01 2018
  ..                                  D        0  Wed Jan 24 12:11:33 2018
  test                                D        0  Fri Feb  2 14:49:01 2018

Supprimez le répertoire en tapant :

rmdir test

Gérer les données dans un partage est souvent plus facile avec un outil GUI. La section suivante examinera les outils GUI intégrés à KDE.

Linux — KDE avec Dolphin

Dolphin est le gestionnaire de fichiers par défaut dans KDE et dispose d'une fonctionnalité intégrée pour accéder aux partages Samba.

Après avoir ouvert Dolphin, suivez les étapes suivantes :

  1. Sélectionnez Réseau dans la liste Emplacements.
  2. Cliquez sur Ajouter un dossier réseau.

  3. Sélectionnez l'option lecteur réseau Microsoft Windows.
  4. Cliquez sur Suivant
  5. Entrez les détails pour le partage Samba :

    • Nom - Il s'agit d'un nom mémorable qui sera affiché comme un favori dans Dolphin pour le partage.
    • Serveur - Il s'agit du nom d'hôte ou de l'adresse IP du serveur Samba. Dans cet exemple, ce sera samba.example.com.
    • Dossier - Il s'agit du nom du partage qui a été défini dans smb.conf.
  6. Cliquez sur Enregistrer & Connecter.
  7. Entrez le nom d'utilisateur et le mot de passe de l'utilisateur avec lequel vous allez accéder au partage Samba.
  8. Cliquez sur OK.

Dolphin va maintenant se connecter et ouvrir le partage Samba qui ressemblera à ceci :

Vous pouvez maintenant utiliser le partage Samba comme s'il s'agissait d'un répertoire local pour copier, supprimer et renommer des fichiers et des répertoires. Le partage apparaîtra également comme un signet permanent dans les emplacements Réseau.

MacOS — La ligne de commande

MacOS est livré avec des outils en ligne de commande que vous pouvez utiliser pour accéder à un partage Samba. Ouvrez le terminal avec Launchpad en cliquant sur l'icône Terminal.

Cela ouvrira un terminal en ligne de commande dans votre répertoire personnel. Pour monter le partage Samba, vous pouvez créer un nouveau répertoire qui servira de point de montage pour le partage. Un point de montage est l'emplacement où deux systèmes de fichiers sont joints : dans ce cas, votre système de fichiers local et le système de fichiers Samba distant.

Créez un nouveau répertoire appelé samba :

mkdir samba

Ensuite, montez le partage Samba sous le nouveau répertoire samba. Cette commande a la forme :

sudo mount_smbfs //username@your_samba_hostname_or_server_ip/share ./mount_point

Remplacer les détails de Example.com par l'utilisateur david ressemble à ceci :

sudo mount_smbfs //david@samba.example.com/david ./samba

Le répertoire samba affichera maintenant le contenu du partage david sur le serveur Samba Example.com. Les fichiers et répertoires peuvent être manipulés avec les outils habituels tels que ls, rm et mkdir ; cependant, le répertoire samba sera possédé par root après que le partage ait été monté. Vous devrez donc utiliser sudo pour accéder au répertoire samba et à son contenu.

Pour démonter le partage Samba, exécutez la commande umount depuis le même répertoire où vous avez exécuté la commande mkdir :

umount samba

La section suivante examinera l'accès à un partage Samba en utilisant l'application GUI de bureau dans macOS.

MacOS — Bureau

MacOS est également capable d'accéder aux partages Samba en utilisant l'application Finder.

Suivez les étapes suivantes :

  1. Ouvrez Finder et cliquez sur Aller dans la barre de menus.
  2. Cliquez sur Connecter au serveur dans la liste des options.
  3. Utilisez une URL au format smb:// qui inclut votre nom d'utilisateur, le nom de votre hôte ou l'adresse IP de votre serveur, et le nom de votre partage : smb://nom_utilisateur@votre_nom_d_hôte_samba_ou_ip_serveur/partage. Dans l'exemple montré ici, vous verrez le nom d'utilisateur david et le nom d'hôte samba.example.com.
  4. Ajoutez le partage Samba en cliquant sur le bouton avec un symbole +.
  5. Cliquez sur Connecter

  6. Sélectionnez Utilisateur Enregistré
  7. Entrez le nom d'utilisateur et le mot de passe pour l'utilisateur du partage Samba.
  8. Décidez si vous souhaitez que macOS enregistre le mot de passe.
  9. Cliquez sur Connecter.

Après vous être connecté avec succès au partage Samba, il apparaîtra dans le Finder comme montré ici :

La section suivante expliquera comment accéder aux partages Samba depuis Windows 10.

Windows 10 — La ligne de commande

Monter un partage Samba depuis la ligne de commande Windows ne nécessite qu'une seule commande :

net use drive_letter \\your_samba_hostname_or_server_ip\share

Remplacez les variables par le partage de l'utilisateur david et définissez la lettre de lecteur sur X: :

net use X: \\samba.example.com\david

Lorsque cette commande est saisie, il vous sera demandé le nom d’utilisateur et le mot de passe de david. Après les avoir saisis, vous recevrez un accusé de réception indiquant que le partage a été monté avec succès :

Enter the user name for 'samba.example.com': david
Enter the password for samba.example.com:
The command completed successfully.

Vous pourrez maintenant parcourir le partage Samba dans l'Explorateur de fichiers et manipuler les fichiers et les répertoires comme s'ils étaient locaux sur votre ordinateur.

La section suivante examinera l'utilisation des outils GUI de Windows pour accéder à un partage Samba.

Windows 10 — Bureau

Windows 10 dispose également de la capacité native à se connecter à un partage Samba. Les étapes suivantes vous permettront de vous connecter à votre partage Samba et de le conserver en tant que favori en utilisant l'Explorateur de fichiers Windows. Commencez ces étapes en ouvrant l'Explorateur de fichiers :

  1. Cliquez avec le bouton droit sur Ce PC.
  2. Cliquez sur Ajouter un emplacement réseau puis sur Suivant sur la page qui suit.

  3. Cliquez sur Choisir un emplacement réseau personnalisé.
  4. Cliquez sur Suivant
  5. Entrez l'adresse de style Windows du serveur Samba et le nom du partage. Windows utilise la forme suivante pour une URL Samba : \\votre_nom_dhôte_ou_ip_du_serveur_samba\partage\. Dans l'image d'exemple, le nom du serveur est samba.example.com et le nom du partage est david : \\samba.example.com\david.
  6. Cliquez sur Suivant.
  7. Entrez le nom d'utilisateur et le mot de passe de l'utilisateur.
  8. Décidez si vous voulez que Windows se souvienne du mot de passe ou non.
  9. Cliquez sur OK.

L'Explorateur de fichiers se connectera maintenant au partage Samba. Une fois la connexion réussie, un nouvel emplacement sera créé sous Ce PC dans l'Explorateur de fichiers :

Vous pourrez maintenant utiliser ce dossier pour gérer les fichiers et dossiers dans le partage Samba comme s'il s'agissait d'un dossier local.

Conclusion

Dans cet article, vous avez créé des partages de fichiers en ligne multiplateformes en utilisant le serveur Samba. Vous avez également accédé à ces partages depuis Windows, Linux et macOS.

Les partages Samba sont devenus si courants que de nombreuses applications peuvent accéder aux données qui y sont stockées. Ces applications peuvent étendre la fonctionnalité et l'utilité de vos partages Samba. Par exemple, la version mobile du lecteur multimédia VLC peut se connecter à votre partage Samba et diffuser de la musique et des vidéos. Pour y accéder, sélectionnez ouvrir le MRL et utilisez l'URL Samba standard : smb://nom_utilisateur@votre_nom_d_hôte_samba_ou_ip_du_serveur/partage. Vous pouvez également utiliser un partage Samba comme destination pour vos sauvegardes avec l'utilitaire de sauvegarde multiplateforme BackupPC.

En plus d'agir comme un simple partage de fichiers, Samba peut fonctionner avec Windows Active Directory en tant que contrôleur de domaine ou membre d'un domaine. La documentation utilisateur du Wiki Samba contient plus d'informations sur la façon de procéder.