Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 29/04/2010, à 16:01

Belcali

Configuration des droits de partage smb.conf

Bonjour à tous,

Je viens de mettre en place pour une entreprise un serveur authentification LDAP/SAMBA avec donc un partage de fichier.

Je vois donc que l'on peut configurer les droits d'accès indépendamment du système de droit UNIX avec le fichier smb.conf, sachant que les droits sur le dossier de partage configurer dans smb.conf prévalent sur les droits de systèmes.

Mes questions :

Peut on configurer des droits sur des sous répertoires de partage sans que ces répertoires soit considérés comme des nouveaux partages à part entière ?

J'aimerais savoir si il est possible de permettre l'accès à un répertoire mais de refuser la lecture des fichiers présent dans ce répertoire ? Et si oui comment ?
(Le but, accéder à un sous répertoires dans lequel il sera possible de lire et/ou modifier les fichier qu'il contient)

Merci pour vos éclaircissements

Cordialement Quentin

Dernière modification par Belcali (Le 29/04/2010, à 16:03)


La dernière fois que je suis sorti de chez moi, les graphismes étaient pas terrible alors je suis retourné sur mon pc  ...

Hors ligne

#2 Le 29/04/2010, à 17:58

AlexandreP

Re : Configuration des droits de partage smb.conf

C'est le contraire : les permissions du système de fichiers ont priorité sur celles définies par Samba.

Par exemple :
  - Dans mon système Ubuntu, j'ai un dossier $HOME/Public/ que je souhaite partager et pour lequel je voudrais que tout le monde puisse y ajouter ou supprimer des fichiers. Je lui applique d'abord le mode 777, pour autoriser tout le monde à modifier ce dossier ;
  - J'ai aussi un dossier $HOME/Public/LectureSeule/, dans lequel je veux déposer des fichiers en lecture seule pour les utilisateurs autres que moi. J'applique alors le mode 774 sur ce dossier ;
  - Finalement, je crée le partage avec Samba. J'autorise les connexions en tant qu'invités à mon dossier partagé et j'autorise les invités à inscrire dans le partage.

Le résultat est que les invités peuvent écrire ou supprimer des fichiers dans le dossier $HOME/Public/, mais ne peuvent que lire le contenu de $HOME/Public/LectureSeule/.


«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.

Hors ligne

#3 Le 30/04/2010, à 10:56

Belcali

Re : Configuration des droits de partage smb.conf

Ce n'est pas tout à fait le but rechercher, je ne sais pas si je me suis fait comprendre mais tu ne réponds pas trop à mes questions.

Je suis certains que les droits sur le dossier de partage configurer dans smb.conf prévalent sur les droits de systèmes. Tester et approuver, comment ?

J'ai fait un chmod -R 700 /home/partage ,j'ai mis ceci en paramètre :

[partage]
path = /home/partage
browseabe = yes
read only = no
writeable = no
valid users = @users, @admin
write list = @admin
force user = root
force group = admin

Voila, ce que sa me donne,
le groupe users  est en lecture seul sur tout les dossiers et sous dossier du partage
le groupe admin est en lecture/écriture sur tout les dossiers et sous dossier du partage

Ce que j'aimerais limiter tout ceci, interdire la lecture pour certain groupe mais l'autoriser pour d'autre tout en gardant l'exécution (parcourir) du dossier et faire des paramètres indépendamment selon les sous répertoires ...


La dernière fois que je suis sorti de chez moi, les graphismes étaient pas terrible alors je suis retourné sur mon pc  ...

Hors ligne

#4 Le 30/04/2010, à 13:10

Belcali

Re : Configuration des droits de partage smb.conf

Svp ^^ J'ai vraiment besoin de savoir si c'est au moins réalisable ?

Merci d'avance la communauté


La dernière fois que je suis sorti de chez moi, les graphismes étaient pas terrible alors je suis retourné sur mon pc  ...

Hors ligne

#5 Le 30/04/2010, à 17:47

Belcali

Re : Configuration des droits de partage smb.conf

up je ne lâcherais pas l'affaire xD


La dernière fois que je suis sorti de chez moi, les graphismes étaient pas terrible alors je suis retourné sur mon pc  ...

Hors ligne

#6 Le 30/04/2010, à 19:05

AlexandreP

Re : Configuration des droits de partage smb.conf

Belcali a écrit :

Je suis certains que les droits sur le dossier de partage configurer dans smb.conf prévalent sur les droits de systèmes.

Et moi, je suis sûr du contraire. wink Je vais te faire faire le test plus loin...

Analysons la définition du partage :

read only = no
writeable = no

D'abord, tu précises que le partage n'est pas accessible en lecture seule (donc, accessible aussi en écriture). Mais juste au-dessous, tu précises que le partage n'est pas accessible en écriture (donc, accessible en lecture seule). En cas de conflit, comme c'est le cas ici, Samba adhère à la dernière valeur rencontrée (soit writable = no). Par défaut, donc, le partage n'est pas accessible en écriture.

Pour la partie lecture/écriture, indiquer uniquement l'option read only = yes est suffisante. Mais c'est plus une question d'esthétique...

valid users = @users, @admin
write list = @admin

Dans cette section, tu autorises l'accès au partage uniquement aux utilisateurs membres du groupe users et du groupe admin. Eux n'ont accès qu'en lecture seule au dossier partagé.

Puis, tu autorises les membres du groupe admin à écrire dans le dossier partagé. L'option write list surpasse read only pour les groupes spécifiés dans cette liste. Jusque là, on est d'accord.

Mais...

force user = root
force group = admin

Ces options font en sorte que tous les nouveaux fichiers créés auront root comme utilisateur propriétaire et admin en tant que groupe propriétaire. Comme root a tous les droits dans Linux, alors le fichier peut nécessairement être créé. Il surpasse les limitations d'accès en lecture et en écriture indiquées plus haut.

Pour limiter l'accès en écriture aux utilisateurs valides et aux groupes valides, ne précise pas ces options.

Je te donne un exemple que tu pourras adapter, donc :

[partage]
     path = /home/partage
     browseabe = yes
     read only = yes
     valid users = @users, @admin
     write list = @admin

Avec cette configuration :
  - seuls les membres des groupes users et admin peuvent lire la totalité du partage, dans les limites des permissions Unix des fichiers et dossiers ;
  - seuls les membres du groupe admin peut écrire des fichiers dans la totalité du partage, dans les limites des permissions Unix des fichiers et dossiers ;
  - tous les autres utilisateurs sont rejetés.




Mais encore faut-il que les permissions Unix permettent l'accès en lecture/écriture au dossier partagé ! Par exemple, si ton dossier /home/partage/
  - a root comme utilisateur propriétaire et admin comme groupe propriétaire (sudo chown root:admin /home/partage);
  - et a le mode 750 (sudo chmod 750 /home/partage).
Alors, malgré ce que tu précises dans Samba, les utilisateurs du groupe admin ne peuvent pas créer des nouveaux fichiers dans le dossier partagé. Seul root le peut, car il est au-dessus de tout. Et les membres de users ne peuvent même pas lister le dossier partagé.

Donc, Samba a besoin des deux configurations : sa configuration interne les permissions Unix suffisantes. Dans ton cas :
  - tu pourrais assigner root et root en tant qu'utilisateur propriétaire et groupe propriétaire (sudo chown root:root /home/partage) ;
  - assigner le mode 777 au dossier (sudo chmod 777 /home/partage) ;
  - et te concentrer uniquement sur les restrictions de Samba pour autoriser ou refuser l'écriture à la totalité du partage.

Dernière modification par AlexandreP (Le 30/04/2010, à 19:07)


«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.

Hors ligne

#7 Le 06/05/2010, à 08:42

Belcali

Re : Configuration des droits de partage smb.conf

Merci pour toutes tes réponses tu a un peu éclairé ma lanterne.

Cependant je ne sais toujours pas de quoi il en retourne pour les partages de sous dossier ?
Et j'aimerais savoir aussi si on peut permettre le parcours des dossiers en interdisant la lecture des fichiers présent dans ceci ?

Merci encore pour ton aide


La dernière fois que je suis sorti de chez moi, les graphismes étaient pas terrible alors je suis retourné sur mon pc  ...

Hors ligne

#8 Le 06/05/2010, à 17:16

AlexandreP

Re : Configuration des droits de partage smb.conf

Belcali a écrit :

Cependant je ne sais toujours pas de quoi il en retourne pour les partages de sous dossier ?
Et j'aimerais savoir aussi si on peut permettre le parcours des dossiers en interdisant la lecture des fichiers présent dans ceci ?

Les autorisations ou restrictions définies par Samba s'appliquent à l'ensemble du partage. Elles ne peuvent pas s'appliquer à une partie du partage uniquement. Par Samba, par exemple, tu ne peux pas définir que le partage [partage] est accessible en lecture seule pour tous, mais qu'un dossier qu'il contient (ex : [partage]/upload/) est accessible en écriture pour tous. Ça ne se fait pas par Samba : Samba définit des propriétés pour l'ensemble du partage.

Du coup, pour des restrictions plus fine, il vaut mieux passer par le système de gestion des droits du système de fichiers. Je ne sais pas si tu as de l'expérience avec le partage de dossiers avec Windows (en entreprise), mais le principe est le même. On recommande de donner le maximum d'autorisations avec les autorisations de partage de fichiers, puis de restreindre les actions à l'aide des ACL de NTFS. Ici, on fera la même chose, mais avec les droits Unix.



Un petit exemple pratique :
  - tu veux partager avec tout le monde (identifiés ou non identifiés) un dossier /home/partage/ ;
  - seuls les administrateurs peuvent modifier le dossier /home/partage/. Les autres utilisateurs (identifiés ou non) n'y ont accès qu'en lecture seule ;
  - mais il contient un dossier /home/partage/upload/, dans lequel tu veux autoriser les utilisateurs authentifiés à y charger des documents (sans lire ceux des autres utilisateurs). Les invités n'ont pas accès à ce dossier ;
  - enfin, compliquons davantage la chose : il y a un dossier /home/partage/personnel/ qui contient des dossiers personnels pour cinq personnes privilégiées (Tata, Tete, Titi, Toto et Tutu). L'administrateur est au courant de cela, mais les cinq personnes ne savent pas qui sont les autres privilégiées. Bref, on souhaite les autoriser à traverser /home/partage/personnel/ pour accéder à leur partage personnel, mais pas à lister le dossier /home/partage/personnel/ pour ne pas qu'elles devinent qui sont les privilégiées. L'administrateur met en place les dossiers des privilégiés, mais ne peut pas accéder à leur contenu.

Alors, côté Samba, ce n'est pas compliqué. Sachant que (1) les restrictions s'appliquent à la totalité du partage, (2) tous les utilisateurs ont droit d'écrire dans au moins une petite partie du partage et (3) les invités ont autorisation d'accès à au moins une partie du partage (comme tu le remarques, le mot-clé est "au moins une partie du partage"), alors on doit autoriser l'accès en écriture pour tous au partage et autoriser l'accès des invités au partage.

[partage]
     path = /home/partage
     browseabe = yes
     read only = no
     guest ok = yes

C'est seulement ensuite, avec les droits Unix, que la politique de sécurité est affinée.

/home/partage/                        -   Propriétaire: root | Groupe: admin   -   Permissions: rwx rwx r--
   /home/partage/upload/              -   Propriétaire: root | Groupe: users   -   Permissions: rwx -wx ---
   /home/partage/personnel/           -   Propriétaire: root | Groupe: admin   -   Permissions: rwx rwx --x
      /home/partage/personnel/tata/   -   Propriétaire: tata | Groupe: tata    -   Permissions: rwx rwx ---
      /home/partage/personnel/tete/   -   Propriétaire: tete | Groupe: tete    -   Permissions: rwx rwx ---
      /home/partage/personnel/titi/   -   Propriétaire: titi | Groupe: titi    -   Permissions: rwx rwx ---
      /home/partage/personnel/toto/   -   Propriétaire: toto | Groupe: toto    -   Permissions: rwx rwx ---
      /home/partage/personnel/tutu/   -   Propriétaire: tutu | Groupe: tutu    -   Permissions: rwx rwx ---

(m'enfin... dans les droits, ce n'est pas exactement cela... si quelqu'un peu corriger. Mais on comprend quand même le principe. wink)

Dernière modification par AlexandreP (Le 07/05/2010, à 00:21)


«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.

Hors ligne

#9 Le 22/11/2015, à 02:06

AlexandreP

Re : Configuration des droits de partage smb.conf

rololo88 a écrit :

        Suite a la lecture de ce sujet je pense que mes soucis proviennent peut être de droits d’accès aux dossiers que je partage et non pas a
        une configuration de samba.

Bonjour,

Évidemment, comme expliqué précédemment, il faut que les droits d'accès appliqués sur le système de fichiers en question permettent aux utilisateurs, au minimum, de lire le contenu. Sans cela, bien sûr, aucun document ne sera visible. Étant donné que le volume en question est formaté avec le système de fichiers NTFS, il faudra alors regarder du côté des options de montage du système de fichiers (dû à l'émulation des droits d'accès Unix sur des systèmes de fichiers NTFS).

Par ailleurs, il pourrait être possible que d'autres paramètres de Samba empêchent la connexion. Cependant, comme tu n'as partagé aucune information de configuration, il n'est pas facile de définir la cause exacte.


«La capacité d'apprendre est un don; La faculté d'apprendre est un talent; La volonté d'apprendre est un choix.» -Frank Herbert
93,8% des gens sont capables d'inventer des statistiques sans fournir d'études à l'appui.

Hors ligne

#10 Le 19/01/2017, à 15:01

SebWuit

Re : Configuration des droits de partage smb.conf

AlexandreP a écrit :
Belcali a écrit :

Je suis certains que les droits sur le dossier de partage configurer dans smb.conf prévalent sur les droits de systèmes.

Et moi, je suis sûr du contraire. wink Je vais te faire faire le test plus loin...

Analysons la définition du partage :

read only = no
writeable = no

D'abord, tu précises que le partage n'est pas accessible en lecture seule (donc, accessible aussi en écriture). Mais juste au-dessous, tu précises que le partage n'est pas accessible en écriture (donc, accessible en lecture seule). En cas de conflit, comme c'est le cas ici, Samba adhère à la dernière valeur rencontrée (soit writable = no). Par défaut, donc, le partage n'est pas accessible en écriture.

Pour la partie lecture/écriture, indiquer uniquement l'option read only = yes est suffisante. Mais c'est plus une question d'esthétique...

valid users = @users, @admin
write list = @admin

Dans cette section, tu autorises l'accès au partage uniquement aux utilisateurs membres du groupe users et du groupe admin. Eux n'ont accès qu'en lecture seule au dossier partagé.

Puis, tu autorises les membres du groupe admin à écrire dans le dossier partagé. L'option write list surpasse read only pour les groupes spécifiés dans cette liste. Jusque là, on est d'accord.

Mais...

force user = root
force group = admin

Ces options font en sorte que tous les nouveaux fichiers créés auront root comme utilisateur propriétaire et admin en tant que groupe propriétaire. Comme root a tous les droits dans Linux, alors le fichier peut nécessairement être créé. Il surpasse les limitations d'accès en lecture et en écriture indiquées plus haut.

Pour limiter l'accès en écriture aux utilisateurs valides et aux groupes valides, ne précise pas ces options.

Je te donne un exemple que tu pourras adapter, donc :

[partage]
     path = /home/partage
     browseabe = yes
     read only = yes
     valid users = @users, @admin
     write list = @admin

Avec cette configuration :
  - seuls les membres des groupes users et admin peuvent lire la totalité du partage, dans les limites des permissions Unix des fichiers et dossiers ;
  - seuls les membres du groupe admin peut écrire des fichiers dans la totalité du partage, dans les limites des permissions Unix des fichiers et dossiers ;
  - tous les autres utilisateurs sont rejetés.




Mais encore faut-il que les permissions Unix permettent l'accès en lecture/écriture au dossier partagé ! Par exemple, si ton dossier /home/partage/
  - a root comme utilisateur propriétaire et admin comme groupe propriétaire (sudo chown root:admin /home/partage);
  - et a le mode 750 (sudo chmod 750 /home/partage).
Alors, malgré ce que tu précises dans Samba, les utilisateurs du groupe admin ne peuvent pas créer des nouveaux fichiers dans le dossier partagé. Seul root le peut, car il est au-dessus de tout. Et les membres de users ne peuvent même pas lister le dossier partagé.

Donc, Samba a besoin des deux configurations : sa configuration interne les permissions Unix suffisantes. Dans ton cas :
  - tu pourrais assigner root et root en tant qu'utilisateur propriétaire et groupe propriétaire (sudo chown root:root /home/partage) ;
  - assigner le mode 777 au dossier (sudo chmod 777 /home/partage) ;
  - et te concentrer uniquement sur les restrictions de Samba pour autoriser ou refuser l'écriture à la totalité du partage.



Franchement merci !

Hors ligne