• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Samba umgeht Unixrechte (SuSE 11.4)

Hallo zusammen,
ich versuch grad ein wirklich störendes Problem zu lösen. Die Rechtevergabe direkt über Samba für alle Freigaben funktioniert tadellos.
Das Problem ist nun, dass ich über die Unixrechte den Lesezugriff bei gewissen Verzeichnissen für others nicht ausschließen kann.
D.h. ich habe grp1 grp2 die auf eine Freigabe zugriff haben. diese Freigabe beinhaltet z.B. einen Ordner nur_grp1 mit den rechten drwx r-x --- root:grp1.
Meiner Meinung nach dürfte doch jetzt grp2 keinen Lesezugriff auf dieses Verzeichnis besitzen. Ich hab einen zweiten Fileserver SLES11 in einer Windows Domain mit ADS, da funktioniert das ganze wunderbar. Leider komm ich bei diesem Fileserver nicht weiter. ACL sind für others auch auf --- gesetzt.

Ich hab mal einen Auszug aus der smb.conf beigefügt:
Code:
# smb.conf is the main Samba configuration file. You find a full commented
# version at /usr/share/doc/packages/samba/examples/smb.conf.SUSE if the
# samba-doc package is installed.
# Date: 2011-03-01
[global]
        workgroup = workgroup
        server string =
        passdb backend = tdbsam
        printing = cups
        printcap name = cups
        printcap cache time = 750
        cups options = raw
        map to guest = Bad User
        include = /etc/samba/dhcp.conf
        logon path = \\%L\profiles\.msprofile
        logon home = \\%L\%U\.9xprofile
        logon drive = P:
        usershare allow guests = No
        add machine script = /usr/sbin/useradd  -c Machine -d /var/lib/nobody -s /bin/false %m$
        domain logons = No
        domain master = No
        ldap suffix =
        local master = Yes
        netbios name = srv-nemesis
        os level = 65
        preferred master = Yes
        security = user
        wins support = Yes
        unix extensions = Yes
        follow symlinks = Yes
        wide links = Yes
        client use spnego = Yes
[share]
        comment = Shared Folder
        path = /share
        inherit acls = Yes
        create mask = 650
        directory mask = 750
        public = Yes
        read only = No
        guest ok = No
        browseable = Yes
        force group = grp1
        valid users = @grp1, @grp2
#      read list = @grp1, @grp2
        write list = @grp1
#      admin users = root

gv
kinyonga
 
Der Ordner nur_grp1 hat ein "x" Attribut für alle anderen User. Ein "x" Attribut (Ausführungsrechte) auf einem Verzeichnis bedeutet, dass der Inhalt auflistbar ist. Also können alle User (Other) den Inhalt des Verzeichnises auflisten, aber keine Dateien lesen oder schreiben.
 
Hi spoensche,
die Rechte sind doch eigentlich so festgelegt
drwx r-x --- root:grp1

also

user = rwx
group = r-x
others = ---
 
Mit "force group = grp1" gibt du ja selber an, das alle Dateioperationen als Gruppe grp1 durchgeführt werden sollen.
 
Wie sind denn die ACLs im Dateisystem gesetzt? Die Rechte die due mit ls -ld <verzeichnis> sehe nkannst, sind NUR die Maske der ACLs und NICHT die Rechte!
 
Hi stka,
was meinst du mit Maske. Ich verstehe die Unixrechte basierend auf user, group und others als die grundlegenden Dateirechte. Meiner Meinung nach sind ACLs nur eine Erweiterung dieser. Wie ich bereits geschrieben, dass die ACLs für others auf --- gesetzt sind, d.h.
Code:
getfacl nur_grp1

# file: nur_grp1
# owner: username
# group: grp1
user::rwx
group::r-x
other::---
 
Ich verstehe es zwar nicht ganz, aber mit den folgenden Einstellungen in der smb.conf funktioniert es
Code:
    [share]
            comment = Shared Folder
            path = /share
            inherit acls = Yes
            create mask = 650
            directory mask = 750
            public = Yes
            read only = No
            guest ok = No
            browseable = Yes
#            force group = grp1
            valid users = @grp1, @grp2
            read list = @grp1, @grp2
            write list = @grp1

Sobald force group kommentiert ist funktioniert es. Sind sowohl read list als auch force group kommentiert hat grp2 trotzdem Lesezugriff.
Mal schauen ob sonst alles passt. Warum es bei SLES 11 mit den Einstellungen im ersten Post funktioniert hat kann ich mir immer noch nicht erklären.
Die Konfiguration unterscheidet sich hier auch, da der SLES 11 Fileserver in einer Domain hängt.

Thx für die Tipps, sonst hätte ich wohl noch ewig versucht an der Verrechtung einen Fehler zu finden.
 
@spoensche, kein Problem!

Komisch, dass ich eine read list definieren muss, damit es ohne force group funktioniert. Jedenfalls scheint ansonsten alles zu passen.
Die Unterschiede verschiedener Samba Versionan der Distributionen ist vermutlich untergründloch...

Thx für die schnelle Kommentare, damit kommt man oft auf eine Lösung.
 
Oben