L'installation et la configuration de Samba dans Ubuntu 20.04 est une tâche typique d'un administrateur système. Cependant, il est également utile lorsque nous avons plusieurs ordinateurs dans le même réseau comme dans une maison. C'est pourquoi après avoir lu cet article, vous apprendrez comment installer et configurer Samba pour partager des fichiers sur un réseau.
Samba est une implémentation gratuite du protocole de partage de fichiers Microsoft Windows (anciennement appelé SMB, récemment renommé CIFS) pour les systèmes de type UNIX.
Autrement dit, avec Samba, nous pouvons partager des fichiers entre ordinateurs sur un réseau. Ce protocole est très mature et assez simple à configurer.
Installer Samba sur Ubuntu 20.04
Samba est une implémentation pour Unix. Par conséquent, il est disponible pour de nombreuses distributions Linux. Et Ubuntu 20.04 ne fait pas exception.
Ainsi, Samba est présent dans les dépôts officiels d'Ubuntu, ce qui facilite l'installation.
Démarrez un terminal ou une session SSH et exécutez les commandes suivantes :
sudo apt update
sudo apt install samba
Avec cela, vous serez installé. Pour démarrer le service et le faire démarrer avec le système, exécutez ces commandes :
sudo systemctl start smbd
sudo systemctl enable smbd
Pour vérifier l'état du service, vous pouvez exécuter :
sudo systemctl status smbd
De cette façon, il sera installé, mais il manque la configuration.
Configurer Samba sur Ubuntu 20.04
Par défaut, le fichier de configuration de Samba est /etc/samba/smb.conf . C'est un fichier bien documenté que rien qu'en le lisant, nous saurons comment le manipuler.
Tout d'abord, faites une sauvegarde du fichier. Ceci est recommandé car si quelque chose de mauvais se produit, nous pouvons toujours annuler les modifications.
sudo cp /etc/samba/smb.conf{,.bak}
Dans cet article, vous apprendrez à configurer Samba pour un dossier public et un dossier privé. Dans les deux cas, il sera hébergé sur un serveur avec l'adresse IP 192.168.1.43
Configurer Samba et un dossier public
Les dossiers publics ont un avantage et c'est que nous pouvons activer l'accès invité ou anonyme. Ce n'est pas toujours recommandé, mais il y a des cas où cela peut être très utile.
Commencez par créer le dossier avec le nom que vous voulez dans le chemin choisi.
sudo mkdir -p /var/public/
Il faut maintenant indiquer le propriétaire du dossier. Comme nous voulons que ce soit un dossier public, nous indiquerons au système qu'il n'a pas de propriétaire et qu'il n'appartient pas non plus à un groupe système ;
sudo chown -R nobody:nogroup /var/public
Attribuez ensuite les autorisations correspondantes. Dans ce cas, nous vous donnerons des autorisations de lecture et d'écriture.
sudo chmod -R 0777 /var/public
sudo chgrp sambashare /var/public
Ensuite, créez un fichier de test. Cela servira à démontrer que vous êtes dans le dossier distant.
sudo touch /var/public/test.txt
Et maintenant oui, nous devons configurer Samba via le fichier de configuration.
sudo nano /etc/samba/smb.conf
La première chose que nous devons faire est de vérifier que dans le champ Groupe de travail ce GROUPE DE TRAVAIL est la valeur par défaut. Vous pouvez modifier cela, mais vous devez ensuite vous assurer de le faire sur chaque ordinateur. Alors laissez-le tel quel.
À la fin du fichier, ajoutez ce qui suit :
[public] path = /var/public browseable = yes guest ok = yes guest only = yes read only = no force user = nobody force create mode = 0777 force directory mode = 0777
Dans ces valeurs, nous indiquons le chemin du dossier et nous définissons les options. Que vous pouvez y naviguer, activer la lecture et l'écriture, accepter l'utilisateur invité, etc.
Enregistrez les modifications et pour appliquer les modifications, redémarrez Samba et vérifiez l'état du service.
sudo systemctl restart smbd sudo systemctl status smbd
Ouvrez ensuite un navigateur de fichiers sur votre ordinateur client et connectez-vous à l'aide de l'adresse IP.
Soit en ajoutant le nom du serveur au fichier hosts de chaque client. Dans le cas de Linux
sudo nano /etc/hosts
192.168.1.43 atechtown
Configurer Samba pour un dossier privé
Il est maintenant temps de créer un nouveau dossier privé afin que l'accès ne soit pas public.
Tout d'abord, créez dans le système un groupe dédié à Samba.
sudo addgroup samba
Sortie :
Adding group 'samba' (GID 1002) …
Donate.
N'oubliez pas que vous pouvez changer le nom samba pour un autre que vous spécifiez.
Ajoutez ensuite l'utilisateur actuel au groupe nouvellement créé.
sudo usermod -aG samba user
Samba gère les mots de passe des utilisateurs indépendamment du système, un mot de passe Samba doit donc être attribué à cet utilisateur.
sudo smbpasswd -a user
Sortie :
New SMB password:
Retype new SMB password:
Added user user.
Vous pouvez attribuer le même mot de passe que cet utilisateur utilise pour se connecter ou un autre.
Une autre alternative consiste à créer un nouvel utilisateur système et à l'ajouter au groupe créé.
Par exemple :
sudo useradd -m -s/bin/bash -G samba user2
Et attribuez un nouveau mot de passe système
sudo passwd user2
Et puis le mot de passe Samba.
sudo smbpasswd -a user2
Maintenant, ce qui suit est de créer le dossier que nous allons partager
sudo mkdir -p /smb/private
N'hésitez pas à modifier le nom et l'emplacement du dossier.
Ensuite, changez le propriétaire en root et ajoutez-le au groupe samba.
sudo chown -R root:samba /smb/private
Et attribuez les autorisations correspondantes
sudo chmod -R 0770 /smb/private
Vous devez maintenant ajouter certains paramètres au fichier de configuration de samba.
sudo nano /etc/samba/smb.conf
Et ajoutez ce qui suit
[Private] path = /smb/private valid users = @samba guest ok = no writable = yes browsable = yes
Dans ce cas, la configuration est assez similaire mais la présence des utilisateurs valides limite la disponibilité du dossier aux utilisateurs appartenant au groupe que nous avons créé.
Enregistrez les modifications et fermez le fichier.
Pour appliquer les modifications, redémarrez le service Samba
sudo systemctl restart smbd
Et retournez sur votre ordinateur et essayez d'accéder au dossier
Comme vous pouvez le voir, le système ignore un message indiquant que vous devez vous connecter. Lorsque vous le faites, le dossier sera disponible.
Conclusion
Samba est un outil très utile dans les environnements professionnels mais aussi dans les petits réseaux comme une maison. En ce sens, la configuration dans Ubuntu 20.04 est quelque chose à la portée de beaucoup et grâce à ce post, vous avez appris à le faire.