123788
Goto Top

Samba - Benutzerrechte Freigaben

Hallo zusammen,

setze Samba 4 auf einem aktuellen Debian stable ein.
Habe dort Freigaben eingerichtet, die z.B. wie folgt aussehen:


[Share]
path = /data/share
read only = no
create mask = 0777
directory mask = 0777
hosts allow = 10.1.1.2 10.1.1.3 10.1.1.4 10.1.1.6 10.0.0.9


Die Idee ist folgende: Das Verzeichnis "/data/share" ist nur für die jeweilige Gruppe verfügbar. Allerdings gehören die Nutzer dieses Verzeichnisses zu verschiedenen Primärgruppen, weshalb innerhalb des Pfads die Rechte auf "777" gesetzt werden müssen, damit erstellte Dateien auch wirklich von jedem geöffnet und bearbeitet werden können.
Schöner fänd' ich, abgelegte Dateien würden einfach mit den Rechten der Gruppe angelegt, der alle User angehören, nennen wir die Gruppe z.B. "freigabe".

Es gibt die Direktive "force group = freigabe", diese führt aber zu sehr merkwürdigen Ergebnissen. Dem zugreifenden User wird diese Gruppe dann nämlich "virtuell" zugeordnet, was zu Verwirrungen bei der Rechtevergabe führt.

Gibt es noch einen anderen Weg?

Content-Key: 281526

Url: https://administrator.de/contentid/281526

Printed on: April 25, 2024 at 04:04 o'clock

Member: Alchimedes
Solution Alchimedes Aug 30, 2015 updated at 16:05:34 (UTC)
Goto Top
Hallo ,

die 777 Freigabe ist ganz schlecht, den dann werden alle Dateien und Ordner fuer jeden freigegeben.
Besser ist eine Globale Freigabe wie sie in der Regel in der smb.conf vorgegeben ist und dann mit Gruppen
zu arbeiten. Hier kann z.B eine Gruppe ALLE heissen in der alle Gruppen und Ihre User zugriff haben, hier vielleicht mit einer 770 Berechtigung.
Dann entsprechend Gruppen einrichten und die User zuordnen. So kann dann ein User auch Mitglied in mehreren Gruppen sein.

die freigabe /date/share mit den Rechten der Gruppe erfolgt mit 2770 am besten recursiv also chmod -R 2770 /data/share/whatever....


Gruss
Mitglied: 123788
123788 Aug 30, 2015 at 15:49:08 (UTC)
Goto Top
Jein.
Denn was du schriebst habe ich genau so bereits umgesetzt.
Das übergeordnete Verzeichnis (also /data/share) hat auch bereits 770er Rechte.
Somit könnte ein unautorisierter Benutzer nicht in dieses Verzeichnis wechseln und folglich auch nicht die darin befindlichen Dateien (777) bearbeiten/löschen/...

Das Problem liegt bei den unterschiedlichen Primärgruppen.
Legt user A eine Datei an, so gehört diese Datei wie gewünscht der Gruppe "freigabe", da diese dessen Primärgruppe ist.
Eine von user B angelegte Datei gehört aber plötzlich der Gruppe "projektarbeit", somit können andere Benutzer - die nicht in dieser Gruppe sind - auf diese Datei dann nicht mehr zugreifen.
Mitglied: 123788
123788 Aug 30, 2015 at 16:05:27 (UTC)
Goto Top
Edit:

Ach mensch... das "chmod 2770" war schon alles, was ich brauchte face-wink
Wenn ich das auch in die Samba-Config eintrage, dann werden neue Dateien mit korrekter Gruppen-Zugehörigkeit angelegt, das löst mein Problem.

Vielen Dank!
Member: Alchimedes
Alchimedes Aug 30, 2015 at 19:15:35 (UTC)
Goto Top
Hallo ,

ok kann man so auch machen. Jedoch vorsicht ! Wenn ein User der unterschiedliche Gruppenzugehoerigkeit hat einen Ordner zu einer anderen Gruppe verschiebt ,
bleibt die Gruppenberechtigung bestehen.

Das Problem haben wir hier manchmal dann kommt ein Anruf ich kann nicht mehr auf den Ordner zugreifen.
Naechste Moeglichkeit waere mit ACL's zu arbeiten.

https://wiki.ubuntuusers.de/ACL

Da hat man dann sehr viel mehr Moeglichkeiten. Aber ACL's werden nicht archiviert ! Also bei Backups mit rsync und tar sind die weg !
Hier muss man die ACLS erst vorher haendisch sichern, auch wuerde ich Dir empfehlen wenn Du mit ACL's arbeitest die Vergabe sehr
genau zu notieren .


Gruss
Mitglied: 123788
123788 Aug 30, 2015 at 19:49:33 (UTC)
Goto Top
Nabend,

einen Ordner wohin verschiebt, meinst du? Auf ein anderes Netzlaufwerk? Oder innerhalb des selben Laufwerks? Denn dort wäre es egal...

Danke, dass du mir mal den Anstoß gibst, mich genauer mit ACLs zu beschäftigen face-wink
Das hatte ich nämlich längst mal vor, hab's aber nie getan.

Grüße
Member: Alchimedes
Alchimedes Aug 31, 2015 at 18:47:25 (UTC)
Goto Top
Hallo ,

darauf kommt es nicht an, sondern wie geschrieben einen Ordner von einer Gruppe in die andere ob lokal oder ueber Netz spielt da keine Rolle.


Jo ACL's sind grosses Kino

Gruss
Mitglied: 123788
123788 Sep 03, 2015 at 08:48:37 (UTC)
Goto Top
Ergänzende Frage:

Habe die smb.conf nun angepasst:

[Share]
path = /data/share
read only = no
create mask = 2770
directory mask = 2770
hosts allow = 10.1.1.2 10.1.1.3 10.1.1.4 10.1.1.6 10.0.0.9

Dennoch werden manche Dateien plötzlich mit diesen Rechten angelegt:

-rwxrw----

Wie kann das sein?
Es sollte doch folgendermaßen lauten:

-rwxrws---
Member: Alchimedes
Alchimedes Sep 03, 2015 at 18:40:49 (UTC)
Goto Top
Hallo ,

das kann ich jetzt nur vermuten das der der die Datei angelegt hat nicht Mitglied der Gruppe ist und die Datei dann verschoben wurde ?
Ein geschuetztes Dokument das auf einem Windowsclient erstellt wurde ?

Werden den manche Dateien richtig angelegt ?

Gruss
Mitglied: 123788
123788 Sep 04, 2015 updated at 10:27:13 (UTC)
Goto Top
Guten Morgen,

leider kann ich deine letzte Frage garnicht beantworten, muss das erstmal im Auge behalten.


Edit:

Aber die User sind definitiv Mitglieder der richtigen Gruppe und die Datei wurde ziemlich sicher auch direkt auf diesem Laufwerk erstellt.
Habe diese Gruppe jetzt mal als Primärgruppe des Users angelegt, aber das dürfte ja keinen Unterschied machen.
Jedenfalls werden Dateien immer wieder mit den obigen Rechten erstellt.