fr en fr en en fr fr fr fr de fr en en fr en fr fr en fr en en en fr fr fr fr fr fr fr en fr en en fr en en fr en en fr fr fr fr fr en fr fr fr fr en fr fr en en fr fr en en en fr fr fr hu fr fr en fr
Pour la mise en place d’un service de partage de fichier sous Linux, j’ai dû naviguer sur plusieurs sites. Je vais donc regrouper ici les actions nécessaires pour la mise en place de Samba avec authentification sur un serveur Ubuntu 18.04.
Mon but dans la mise en place de ce service est de pouvoir éditer les fichiers de configuration de Home Assistant depuis mon PC Windows.
En plus de samba, on installe le package libpam-winbind pour gérer l’authentification.
sudo apt update sudo apt install samba libpam-winbind
# Pour les liens symbolique allow insecure wide links = yes # Pour l'authentification security = user
J’ai ensuite mis en commentaire l’intégralité des blocs “[printers]” et “[print$]” car je n’en ai pas besoin.
On spécifie donc notre partage de la manière suivante :
1 2 3 4 5 6 7 8 9
[share] comment = Partage Serveur path = /srv/samba/share browsable = yes guest ok = no read only = no create mask = 0755 follow symlinks = yes wide links = yes
On crée ensuite le dossier et l’on rend l’utilisateur “nobody” propriétaire du dossier.
sudo mkdir -p /srv/samba/share sudo chown nobody:nogroup /srv/samba/share
Il convient maintenant d’associer un compte Linux existant aux comptes Samba :
sudo smbpasswd -a solidsnake
On renseigne le mot de passe de l’utilisateur (il doit être le même que celui de sa session) et l’on relance le service.
sudo systemctl restart smbd.service
Vous devriez être en mesure d’accéder au partage en tapant deux antislash suivis de l’adresse IP de votre serveur (ou son nom si vous avez un serveur de nom). En ouvrant le dossier “share”, on vous demande une authentification. Utiliser donc le compte que l’on a configuré juste avant.
Vous remarquerez que vous n’êtes pas en mesure de créer des fichiers dedans via l’explorateur Windows.
Pour y remédier, je vais créer un groupe qui sera propriétaire du dossier et y inclure mon utilisateur.
1 2 3 4 5 6
sudo addgroup mongroupesamba sudo chown :mongroupesamba /srv/samba/share sudo chmod g+rwx /srv/samba/share/ sudo usermod -a -G mongroupesamba solidsnake sudo systemctl restart smbd.service
Ainsi, vous devriez être en mesure de créer des fichiers dans ce dossier.
Dossier de configuration sur le partage
Comme préciser au début du tutoriel, je souhaite pouvoir accéder à mon dossier de configuration de Home Assistant en Samba. Pour cela, je vais ajouter mon utilisateur homeassistant dans le groupe et crée un lien symbolique dans le dossier share pour accéder au dossier de configuration.
sudo usermod -a -G mongroupesamba homeassistant cd /srv/samba/share/ sudo ln -s /home/homeassistant/.homeassistant/ HA_config
Je me retrouve donc avec un dossier HA_config dans l’arborescence de mon partage de fichiers. En l’ouvrant, j’accède directement au dossier /home/homeassistant/.homeassistant.
À ce niveau, je ne pouvais modifier les fichiers de configuration. J’ai alors ajouté mon utilisateur au groupe de Home Assistant (qui s’appelle comme l’utilisateur : homeassistant ) et redémarrer le service Samba. Cela est rendu possible, car le groupe a les droits d’écriture sur les fichiers de configuration.
sudo usermod -a -G homeassistant solidsnake sudo systemctl restart smbd.service
EDIT : J’ai remarqué un autre jour que je ne pouvais pas créer de fichier dans mon dossier sous Windows (donc avec mon utilisateur).
Pour appliquer les droits du groupe, voici la bonne méthode :
sudo chgrp -R mongroupesamba /home/homeassistant/.homeassistant sudo chmod -R g+rwx /home/homeassistant/.homeassistant
J’ai donc trouvé un moyen de venir à mes fins.
Pour la dernière partie, je ne sais pas si j’ai fait les choses comme il le faut. En tout cas, il y a bien seulement mon utilisateur qui peut éditer les fichiers de configuration.