Comment je fait pour partager mes fichiers entre ma machine Windows et ma machine
Linux
Quels sont les prérequis pour suivre ce tutoriel ?
Pour suivre ce tutoriel, vous avez besoin :
D'une machine sous Linux, pour ma part Debian 11 (selon la distribution
quelques commandes peuvent changer)
D'un poste client sous Windows pour tester l'accès au partage, pour ma part
Windows 11 (mais Windows 10 fera très bien l'affaire)
II. Installer Samba sous Debian 11
Note : les commandes sont exécutées directement avec l'utilisateur "root" mais si
vous agissez depuis un compte administrateur (autre que root), pensez à préfixer
les commandes avec "sudo".
Connectez-vous sur votre machine Linux et mettez à jour la liste des paquets :
apt update
Ensuite, installez le paquet "samba" :
apt install samba -y
Ensuite, installez le paquet "samba" :
apt install samba -y
III. Créer son premier partage sous Samba
La création du partage va s'effectuer en plusieurs étapes : la configuration de
Samba dans un premier temps, et la préparation du groupe, de l'utilisateur et du
dossier du partage dans un second temps.
A. Configurer le partage dans [Link]
Le fichier de configuration de Samba est "/etc/samba/[Link]", nous allons
l'éditer :
nano /etc/samba/[Link]
Ajoutez ensuite les lignes suivantes pour déclarer notre partage : (on peut le
modifier comme on le veux )
[partage]
comment = Partage de données
path = /srv/partage
guest ok = no
read only = no
browseable = yes
valid users = @partage
Quelques explications :
[partage] : sert à spécifier le nom du partage entre "[]", c'est le nom qui
devra être utilisé pour accéder au partage
comment : description du partage
path : chemin vers le dossier à partager, sur le serveur
guest ok : accès invité au partage (par défaut "no"). Si vous décidez d'activer
cette option, vous devez configurer l'option "guest account" qui par défaut prend
la valeur "nobody".
read only : partage accessible uniquement en lecture seule (yes ou no)
browseable : le partage doit-il être visible ou masqué si on liste les partages
du serveur avec un hôte distant (découverte réseau). La valeur "yes" permet de le
rendre visible.
valid users : spécifier les utilisateurs ou les groupes qui ont les droits
d'accès au partage (les droits sur le système de fichiers doivent être cohérents
vis-à-vis de cette autorisation). On précise un utilisateur avec son identifiant et
un groupe avec son identifiant précédé du caractère "@". Pour indiquer plusieurs
valeurs, séparez-les par une virgule.
La configuration étant terminée, sauvegardez le fichier et redémarrez le service
smb:
systemctl restart smb
B. Créer un utilisateur et le groupe "partage"
Le groupe "partage" que nous avons déclaré dans la configuration n'existe pas. Nous
allons créer le groupe, ainsi qu'un utilisateur nommé "sambapartage" et qui sera
membre de ce groupe.
Créez l'utilisateur "sambapartage" et définissez son mot de passe :
Pour que l'utilisateur puisse se connecter au partage, il faut l'autoriser dans
Samba, en plus de la création au sein du système Linux. Pour cela, il faut utiliser
la commande "smbpasswd" pour déclarer l'utilisateur et lui créer un mot de passe
Samba (ce dernier pouvant être différent du mot de passe du compte sur le système).
Voici la commande pour ajouter l'utilisateur "sambapartage" :
smbpasswd -a sambapartage
Créer l'utilisateur et définir son mot de passe Samba avec smbpasswd
Lorsqu'un utilisateur exécute lui-même la commande "smbpasswd", cela lui permet de
modifier lui-même son mot de passe Samba.
L'utilisateur étant prêt, nous allons créer le groupe "partage" :
groupadd partage
Ajouter l'utilisateur au groupe associé à notre partage
Avec gpasswd ou usermod, ajoutez l'utilisateur "it-connect" au groupe "partage" :
gpasswd -a sambapartage partage
C. Préparer le dossier du partage
Le partage va être hébergé à l'emplacement "/srv/partage" de notre serveur.
Commençons par créer le dossier :
mkdir /srv/partage
Ensuite, on va attribuer le groupe "partage" comme groupe propriétaire de ce
dossier :
chgrp -R partage /srv/partage/
Puis, nous allons ajouter les droits de lecture/écriture à ce groupe sur ce dossier
:
chmod -R g+rw /srv/partage/
On peut vérifier la configuration des droits avec la commande suivante :
ls -l/srv/
Tout est prêt, nous pouvons tester depuis un poste client mais avant cela lisez le
point suivant.
D. Le partage [homes] de Samba
Dans sa configuration par défaut, Samba dispose d'un partage nommé [homes]. En
fait, il ne s'agit pas réellement d'un partage nommé "homes" mais cette
configuration spécifique permet de créer un partage personnel pour chaque
utilisateur qui se connecte sur votre machine Linux.
De cette façon, l'utilisateur "sambapartage" dispose d'un partage personnel
(correspondant à son dossier personnel définit au niveau de Linux) accessible à
l'adresse suivante :
Il faut savoir que, par défaut, ces partages sont accessibles en lecture seule et
l'utilisateur ne voit que son propre partage, après s'être authentifié au serveur.
Si vous souhaitez désactiver ces partages car vous n'en avez pas l'utilité, il
suffit de commenter les différentes lignes (la ligne [homes] ainsi que les
directives en dessous) dans le fichier [Link] et de redémarrer le service Samba.
IV. Accéder au partage Samba depuis Windows
Pour tester l'accès au partage, j'ai pris une machine Windows mais j'aurais pu
utiliser un client sous Linux également. Pour accéder au partage, il y a plusieurs
possibilités : à partir de l'explorateur de fichiers Windows, d'un lecteur réseau,
de la commande net use voire même New-PSDrive en PowerShell.
Exemple - Connecter un lecteur réseau sous Windows
Utilisons la méthode la plus courante pour accéder à un partage : un chemin UNC
directement dans la barre d'adresse de l'Explorateur de fichiers. Pour ma part, ma
machine se nomme "debian-11", ce qui donne :
\\debian-11\partage
Note : vous pouvez utiliser l'adresse IP à la place du nom si vous rencontrez des
difficultés. ex:[Link]
Accéder au partage Samba depuis Windows
Le message accès refusé apparaît, c'est normal, car je dois m'authentifier, donc
j'utilise le compte "sambapartage" et le mot de passe saisit lors de l'exécution de
la commande "smbpasswd".
Parfait ! J'accède bien à mon partage Samba depuis Windows ! Je peux même créer un
fichier puisque j'ai accès en lecture / écriture
V. Améliorer la gestion des droits sur le partage Samba
Au sein du fichier [Link] et de notre bloc [partage], nous allons ajouter trois
options :
create mask = 0660
directory mask = 0770
force group = partage
- L'option "create mask" va permettre de définir les droits par défaut sur les
fichiers (lecture/écriture pour l'utilisateur propriétaire et le groupe
propriétaire seulement)
- L'option "directory mask" va permettre de définir les droits par défaut sur les
dossiers
- L'option "force group" va permettre de forcer le groupe "partage" comme groupe
propriétaire des fichiers et dossiers
Ce qui donne :
[partage]
comment = Partage de données
path = /srv/partage
guest ok = no
read only = no
browsable = yes
valid users = @partage
create mask = 0660
directory mask = 0770
force group = partage
Une fois cet ajustement effectué, sauvegardez la configuration et redémarrez le
service :
systemctl restart smb
Et voila ce tutoriels est fini vous pouvez suivre d'autre tutoriels dans les autres
onglets.....