GNU/Linux >> Tutoriels Linux >  >> Debian

Comment installer Samba sur Debian 10 Buster

Si vous travaillez sur un réseau de petite à moyenne entreprise, vous avez probablement des dizaines de disques et imprimantes qui doivent être partagés.

Outre le protocole NFS, de nombreux autres protocoles réseau peuvent être utilisés pour partager des ressources sur un réseau.

Le CIFS , abréviation de Système de fichiers Internet commun , est un protocole de système de fichiers réseau utilisé pour partager des ressources entre plusieurs hôtes, partageant ou non le même système d'exploitation.

Le CIFS, également connu sous le nom de protocole SMB , est implémenté par un outil populaire :le serveur Samba.

Lancé en 1991, Samba a été développé à ses débuts afin de faciliter l'interopérabilité des systèmes basés sur Unix et Windows.

Dans ce tutoriel, nous allons nous concentrer sur l'installation et la configuration de Samba pour votre réseau.

Prérequis

Pour installer de nouveaux packages sur votre système, vous devez être un utilisateur disposant d'autorisations élevées.

Pour vérifier si vous êtes déjà un utilisateur sudo, vous pouvez exécuter la commande "groups" et vérifier si "sudo" appartient à la liste.

$ groups

user sudo netdev cdrom

Si vous n'appartenez pas au groupe sudo, vous pouvez consulter l'un de nos tutoriels afin d'obtenir les privilèges sudo pour les instances Debian.

Maintenant que vous disposez des privilèges sudo, passons directement à l'installation du serveur Samba.

Installer Samba sur Debian

Avant d'installer Samba, vous devrez vous assurer que vos paquets sont à jour avec les dépôts Debian.

$ sudo apt-get update

Maintenant que votre système est à jour, vous pouvez exécuter la commande "apt-get install" sur le package "samba".

$ sudo apt-get install samba

Lors de l'installation de Samba, l'écran suivant s'affichera.

En bref, cette fenêtre sert à configurer la récupération des serveurs de noms NetBIOS sur votre réseau.

De nos jours, votre réseau d'entreprise utilise très probablement des serveurs de noms DNS afin de stocker des informations statiques sur les noms d'hôtes sur votre réseau.

Par conséquent, vous n'utilisez probablement pas de serveur WINS, donc vous pouvez sélectionner l'option "Non".

Lors de la reprise de l'installation, APT décompressera et installera les packages nécessaires pour Samba.

De plus, un "sambashare ” groupe sera créé.

Après l'installation, vous pouvez vérifier la version utilisée sur votre système en exécutant la commande "samba" avec l'option "-v".

$ samba -V

Vous pouvez également vérifier que le serveur Samba est en cours d'exécution en vérifiant l'état du démon Samba SMB avec systemctl.

$ systemctl status smbd

Super, Samba est maintenant correctement installé sur votre serveur Debian !

Ouverture des ports Samba sur votre pare-feu

Cette section s'applique uniquement si vous utilisez UFW ou FirewallD sur votre serveur.

Pour que Samba soit accessible depuis les hôtes Windows et Linux, vous devez vous assurer que les ports 139 et 445 sont ouverts sur votre pare-feu.

Sur Debian et Ubuntu, vous utilisez probablement le pare-feu UFW.

Pour ouvrir des ports sur votre pare-feu UFW, vous devez utiliser la commande "allow" sur les ports 139 et 445.

$ sudo ufw allow 139
$ sudo ufw allow 445

$ sufo ufw status

Si vous travaillez sur un serveur CentOS ou RHEL, vous devrez utiliser le "firewall-cmd ” afin d'ouvrir des ports sur votre ordinateur.

$ sudo firewall-cmd --permanent --add-port=139/tcp
success
$ sudo firewall-cmd --permanent --add-port=445/tcp
success
$ sudo firewall-cmd --reload
success

Configurer Samba sur Debian

Maintenant que votre Samba est correctement installé, il est temps de le configurer afin de le configurer afin de pouvoir exporter certains partages.

Remarque :Samba peut également être configuré pour agir en tant que contrôleur de domaine (comme Active Directory) mais cela sera expliqué dans un autre tutoriel.

Par défaut, les fichiers de configuration de Samba sont disponibles dans le dossier "/etc/samba".

Par défaut, le dossier Samba contient les entrées suivantes :

  • commandes gdb  :un fichier contenant un ensemble d'entrées pour le débogueur GDB (ne sera pas du tout utilisé ici) ;
  • smb.conf :le fichier de configuration principal de Samba ;
  • tls :un répertoire utilisé pour stocker les informations TLS et SSL sur votre serveur Samba.

Pour cette section, nous allons nous concentrer sur le contenu du fichier smb.conf.

Le fichier de configuration de Samba est composé de différentes sections :

  • international :comme son nom l'indique, il est utilisé afin de définir les paramètres globaux de Samba tels que le groupe de travail (si vous utilisez Windows), l'emplacement du journal, ainsi que la synchronisation du mot de passe PAM le cas échéant ;
  • partage des définitions :dans cette section, vous allez lister les différents partages exportés par le serveur Samba.

Définir le groupe de travail Windows

Si vous prévoyez d'inclure le serveur Samba dans un groupe de travail Windows, vous devrez déterminer le groupe de travail vos ordinateurs appartiennent.

Si vous travaillez sur un réseau Unix uniquement, vous pouvez ignorer cette section et passer directement à la définition du partage.

Remarque  :si vous utilisez un contrôleur de domaine, ces paramètres ne s'appliquent pas à vous.

Pour trouver votre groupe de travail actuel, rendez-vous dans le menu Démarrer de Windows et recherchez "Afficher le groupe de travail sur lequel se trouve cet ordinateur".

Sélectionnez l'option fournie par l'utilitaire de recherche et vous devriez pouvoir trouver votre groupe de travail dans la fenêtre suivante.

Dans ce cas, le nom du groupe de travail est simplement "WORKGROUP “.

Cependant, vous devrez vous assurer que ce nom est reflété dans le fichier de configuration de Samba.

Maintenant que votre groupe de travail est correctement configuré, commençons par définir des définitions de partage simples pour votre serveur Samba.

Définir les définitions de partage Samba

Sur Samba, un partage se définit en renseignant les champs suivants :

  • Nom de partage :le nom du partage ainsi que la future adresse de votre partage (le nom du partage est à préciser entre parenthèses);
  • Partager des propriétés  :le chemin d'accès à votre partage, s'il est public, s'il peut être parcouru, si vous pouvez lire des fichiers ou créer des fichiers, etc.

Pour commencer simplement, créons un partage Samba qui sera accessible publiquement à toutes les machines sans authentification.

Remarque  :il est recommandé de configurer l'authentification Samba si vous exportez des partages contenant des informations sensibles ou personnelles.

Création d'un partage Samba public

Tout d'abord, vous devrez décider du dossier à exporter sur votre système, pour ce tutoriel nous allons choisir "/example".

Pour que les utilisateurs puissent écrire des fichiers sur le partage, ils doivent disposer d'autorisations sur le partage.

Cependant, nous n'allons pas définir des autorisations complètes pour tous les utilisateurs sur le dossier, nous allons créer un compte système (qui a des autorisations d'écriture) et nous allons forcer l'utilisateur à utiliser ce compte lors de la connexion à Samba.

Pour créer un compte système, utilisez la commande "useradd" avec l'option "-r" pour les comptes système.

$ sudo useradd -rs /bin/false samba-public

$ sudo chown samba-public /example

$ sudo chmod u+rwx /example

Afin de créer un partage Samba public, rendez-vous au bas de votre fichier de configuration Samba et ajoutez la section suivante.

$ nano /etc/samba/smb.conf

[public]
   path = /example
   available = yes
   browsable = yes
   public = yes
   writable = yes
   force user = samba-public

Voici une explication de toutes les propriétés spécifiées dans cette définition de partage Samba :

  • chemin :assez explicite, le chemin sur votre système de fichiers à exporter avec Samba ;
  • disponible  :ce qui signifie que le partage sera exporté (vous pouvez choisir d'avoir des partages définis mais pas exportés) ;
  • navigable :ce qui signifie que le partage sera public dans les vues réseau (comme la vue réseau Windows par exemple) ;
  • public :synonyme de "guest ok", ce paramètre signifie que tout le monde peut exporter ce partage ;
  • inscriptible  : ce qui signifie que tous les utilisateurs peuvent créer des fichiers sur le partage.
  • forcer l'utilisateur  :lors de la connexion, les utilisateurs prendront l'identifiant du compte "samba-public".

Avant de redémarrer votre service smbd, vous pouvez utiliser le "testparm" afin de vérifier que votre configuration est syntaxiquement correcte.

$ testparm

Comme vous pouvez le constater, aucune erreur de syntaxe n'a été relevée lors de la vérification de la configuration, nous devrions donc être prêts à partir.

Maintenant que votre définition de partage est créée, vous pouvez redémarrer votre service smbd afin que les modifications soient appliquées.

$ sudo systemctl restart smbd

$ sudo systemctl status smbd

Votre partage devrait maintenant être accessible :afin de le vérifier, vous pouvez installer le « samba-client ” package et répertoriez les partages exportés sur votre machine locale.

$ sudo apt-get install smbclient

$ smbclient -L localhost

Remarque :il vous sera demandé de fournir un mot de passe pour votre groupe de travail. Dans la plupart des cas, vous n'avez pas de mot de passe pour votre groupe de travail, vous pouvez simplement appuyer sur Entrée.

Connexion à Samba depuis Linux

Pour pouvoir monter des systèmes de fichiers CIFS, vous devez installer les utilitaires CIFS sur votre système.

$ sudo apt-get install cifs-utils

Maintenant que les utilitaires CIFS sont installés, vous pourrez monter votre système de fichiers à l'aide de la commande mount.

$ sudo mount -t cifs //<server_ip>/<share_name> <mountpoint>

En utilisant notre exemple précédent, notre partage exporté était nommé "public" et il était disponible sur l'adresse IP 192.168.178.35.

Remarque :vous pouvez suivre ce tutoriel si vous ne savez pas comment trouver votre adresse IP sous Linux.

Si nous devions monter le système de fichiers sur le point de montage "/mnt", cela donnerait

$ sudo mount -t cifs //192.168.178.35/public /mnt -o uid=devconnected

Password for [email protected]//192.168.178.35/public : <no_password>

Maintenant que votre disque est monté, vous pouvez y accéder comme n'importe quel autre système de fichiers et commencer à créer des fichiers dessus.

Félicitations, vous avez monté avec succès un lecteur CIFS sous Linux !

Connexion à Samba depuis Windows

Si vous utilisez un hôte Windows, il vous sera encore plus facile de vous connecter à un partage Samba.

Dans le menu de recherche de Windows, recherchez l'application "Exécuter".

Dans les fenêtres Exécuter, connectez-vous au partage Samba en utilisant le même ensemble d'informations que la configuration Linux.

Attention :sous Windows, il faut utiliser des antislashs à la place des slashs.

Lorsque vous avez terminé, cliquez simplement sur "Ok" afin de naviguer dans votre partage !

Génial, vous avez parcouru avec succès votre Samba sous Windows !

Sécuriser les partages Samba

Dans les sections précédentes, nous avons créé un partage public.

Cependant, dans la plupart des cas, vous souhaiterez peut-être créer un partage sécurisé accessible uniquement à un nombre restreint d'utilisateurs sur votre réseau.

Par défaut, l'authentification Samba est séparée de l'authentification Unix  :cette déclaration signifie que vous devrez créer des informations d'identification Samba distinctes pour vos utilisateurs.

Remarque  :vous pouvez choisir de construire Samba en tant qu'AD/DC, mais ce serait un tutoriel complètement différent.

Afin de créer un nouveau Samba, vous devez utiliser le "smbpasswd ” et indiquez le nom de l'utilisateur à créer.

$ smbpasswd <user>

Remarque  :l'utilisateur que vous essayez de créer avec Samba doit avoir un compte Unix déjà configuré sur le système.

Maintenant que votre utilisateur est créé, vous pouvez modifier votre fichier de configuration Samba afin de sécuriser votre partage.

$ nano /etc/samba/smb.conf

[private]
   path = /private
   available = yes
   browsable = yes
   public = no
   writable = yes
   valid users = <user>

La plupart des options ont déjà été décrites dans la section précédente, à l'exception de celle des "utilisateurs valides" qui, comme son nom l'indique, autorise l'accès de Samba à une liste restreinte d'utilisateurs.

Encore une fois, vous pouvez tester votre configuration Samba avec la commande "testparm" et redémarrer votre service Samba si tout va bien.

$ testparm

$ sudo systemctl restart smbd

$ sudo systemctl status smbd

Maintenant que votre disque est sécurisé, il est temps pour vous de commencer à y accéder à partir de vos systèmes d'exploitation distants.

Connexion à Samba sécurisé à l'aide de Windows

Sous Windows, vous devrez utiliser la même procédure que l'étape précédente :exécutez l'application "Exécuter" et saisissez l'adresse de votre disque partagé.

En cliquant sur "Ok", une boîte vous demandant vos informations d'identification s'affichera :vous devez utiliser les informations d'identification que vous avez définies dans la section précédente avec smbpasswd.

Si vous avez fourni le bon mot de passe, vous devriez être redirigé vers votre lecteur réseau, félicitations !

Connexion à Samba sécurisé à l'aide de Linux

Pour vous connecter à un partage Samba sécurisé en utilisant Linux, vous devez utiliser le "mount ” et indiquez l'adresse du partage ainsi que le point de montage à utiliser.

$ sudo mount -t cifs //<share_ip>/<share_name> <mount_point> -o username=<user>

En prenant l'exemple de notre partage "privé" sur l'adresse IP 192.168.178.35, cela donnerait la commande suivante :

$ sudo mount -t cifs //192.168.178.35/private /mnt -o username=user

Password for [email protected]//192.168.178.35/private: <provide_password>

C'est tout !

Votre disque devrait maintenant être correctement monté.

Vous pouvez vérifier qu'il a été correctement monté avec la commande "findmnt" qui répertorie les systèmes de fichiers montés.

$ findmnt /mnt

Félicitations, vous avez monté avec succès un partage Samba sécurisé sur votre serveur !

Conclusion

Dans ce tutoriel, vous avez appris comment vous pouvez facilement installer et configurer un serveur Samba afin de partager vos disques.

Vous avez également appris que vous pouvez modifier les options de partage Samba afin de sécuriser vos partages, que vous soyez sous Windows ou Linux.

Samba est un outil important travaillant sur l'interopérabilité des systèmes d'exploitation :si vous êtes intéressé par le projet Samba, vous devez absolument consulter leur site Web.

Ils fournissent également une alternative gratuite à Active Directory où Samba peut être configuré pour agir en tant que contrôleur de domaine.

Si vous êtes intéressé par l'administration système Linux , nous avons une section complète qui lui est consacrée sur le site Web, alors assurez-vous de la consulter !


Debian
  1. Comment installer Debian 10 (Buster)

  2. Comment installer VirtualBox 6.1 sur Debian 10 (Buster)

  3. Comment installer ownCloud sur Debian 10 (Buster)

  4. Comment installer WildFly sur Debian 10 Buster

  5. Comment installer R sur Debian 10 Buster

Comment installer Docker sur Debian 10 Buster

Comment installer Tomcat sur Debian 10 Buster

Comment installer Vagrant sur Debian 10 Buster

Comment installer Odoo sur Debian 10 Buster

Comment installer Samba sur Debian 10

Comment installer Go sur Debian 11