[TS-109] Rechtevergabe

  • Hi,
    ich wollte fragen, wie die Rechtenvergabe bei TS-109 (2.0.1_Build_080416) funktioniert.


    Die Rechteverteilung sollte folgends aussehen:
    /public :
    /public/privat1 : Leserecht für alle, Schreibrecht für User "privat1" und "privat2"
    /public/privat2: kein Leserrecht, nur "privat2" darf lesen und schreiben
    /public/daten1: alle Leserecht, nur "privat2" darf schreiben


    Ich habe folends die Rechte verteilt:
    /public : Schreibrecht für "privat2", kein Lese- Schreibrecht für "privat1"
    /privat1 : Schreibrecht für "privat1"
    /privat2 :
    /public/daten : Leserecht "privat1"


    "privat2" kommt an seine Daten nicht dran. Auch wenn ich ihm für /public die Leserechte gebe.
    Wenn ich allem für /public die Schreibrechte gebe, kann ich wieder in den Unterordnern den die Rechte nicht entziehen.


    Was mache ich falsch?

  • Hallo kolesia,


    du hast mich sehr verwirrt mit privat 1 usw. aber ich glaube zu wissen wo dein Problem liegt. Wenn du dem Benutzer Privat1 für /Public/Privat1 Rechte vergibts dann hat dieser immer die Rechte für das oberste Verzeichniss in den Ordnerstruktur. Es geht also nicht Privat1 nur Rechte für /Public/Privat1 zuzuteilen, denn in diesem Fall hat der Nutzer Pirvat1 diese Rechte auch für das sich darüber befindete Verzeichniss /Public/..../...../ .


    Was du alternativ dazu machen könntest, wäre für jeden Nutzer ein eigenes Verzeichnis zu erstellen und die Rechte dementsprechend anpassen.
    z.B.:


    /Privat1/ für Benutzer Privat1 ->Rechte-> Schreibrecht für Benutzer "Privat1" und "Privat2" + Leserecht für alle
    /Privat2/ für Benutzer Privat2 ->Rechte-> Schreibrecht für Benutzer "Privat2" + keine Leserechte für alle

    usw.


    Das sollte so funktionieren, nochmal wichtig ist das jeweils ein neues "Netzwerksegment" erstellt wird und nicht in einem vorhandenen Unterordner mit anderen Rechten. Meines wissens gibt es auch eine Warnung falls du das doch so durchführst.


    Wenn ich heute Abend nach Hause komme spiele ich das mal durch und melde mich im Falle einer Fehlinformation nochmal bei dir.



    Mfg
    Christian

  • Hallo Christian,


    danke für die schnelle Antwort. Ich bin von der UNIX-ähnlicher Rechteverteilung ausgegangen. Bei smb scheint das etwas anders zu sein.


    >du hast mich sehr verwirrt mit privat 1 usw. aber ich glaube zu wissen wo dein Problem liegt. Wenn du dem Benutzer Privat1 für /Public/Privat1 Rechte vergibts
    > dann hat dieser immer die Rechte für das oberste Verzeichniss in den Ordnerstruktur. Es geht also nicht Privat1 nur Rechte für /Public/Privat1 zuzuteilen,
    > denn in diesem Fall hat der Nutzer Pirvat1 diese Rechte auch für das sich darüber befindete Verzeichniss /Public/..../...../ .


    ich wollte, dass ich und meine Kinder von 3 PCs auf die Zentralle-Festplatte mit den persönlichen Daten zugreifen, egal auf welchem Rechner sie sich einloggen. Ich bin davon ausgegangen, dass die Rechte
    auf die Unterverzeichnisse weiter gegeben werden, aber nicht auf das oberste Verzeichnis der Ordnerstruktur.

    > Was du alternativ dazu machen könntest, wäre für jeden Nutzer ein eigenes Verzeichnis zu erstellen und die Rechte dementsprechend anpassen.
    das müsste funktionieren. Ich dachte nur, dass ich die einzelne Ordner mit Benutzerrechten versehen kann. Es sieht so was, dass das nicht geht.Gibt es keine Möglichkeit die Rechte in den Unterordnern zu ändern? Es wäre besser nur die ganze Platte zu exportieren und die Rechte, wie bei UNIX an die einzelne Ordnern zu vergeben.


    > nochmal wichtig ist das jeweils ein neues "Netzwerksegment" erstellt wird und nicht in einem vorhandenen Unterordner mit anderen Rechten. Meines wissens gibt es auch eine Warnung falls du das doch so durchführst.
    ja, die Warnung wird ausgegeben, ich habe sie aber verkehrt verstanden. Ich versuche die Ordnerstruktur so zu ändern.


    Grüße

  • Ich habe versucht die Rechte für die einzelne Ordner neu zu verteilen.


    Das Problem ist, dass die ganze Platte als public gemeldet ist. Ich kann "public" auch nicht löschen. Wenn ich jetzt ein Unterordner anlege, bekomme ich die Warnung. Das würde bedeuten, dass die Rechte des Unterordners auf die ganze Platte über gehen. Irgendwas stimmt hier nicht.


    Grüße

  • Hi,


    so habe mich mal daran gemacht um die Fehlermeldung zu kopieren.


    Zitat

    Das Segment, das Sie gerade erstellen oder modifizieren, könnte möglicherweise ein Sicherheitsproblem verursachen. Denn der Pfad dieses Segments überschneidet sich teilweise mit den Pfaden anderer Segmente.
    Jeder mit Zugriffsrecht für ein übergeordnetes Segment (mit übergeordnetem Pfad, z. B. /Path1) bekommt automatisch die gleichen Zugriffsrechte für ihre untergeordneten Segmente (mit untergeordneten Pfaden, z. B. /Path1/Path2). Wenn in diesem Fall ein Benutzer schreibgeschützte Rechte für ein übergeordnetes Segment und verweigerte Zugriffsrechte für ihr untergeordnetes Segment besitzt, kann er / sie dennoch den Inhalt des untergeordneten Segments über den Weg des übergeordneten Segments lesen.
    Es ist nicht ratsam, ein derartiges Segment zu erstellen oder zu modifizieren. Lässt sich dies jedoch nicht vermeiden, sollten alle diese Segmente die gleichen Zugriffsrechte oder die übergeordneten Segmente strengere Zugriffsrechte bekommen.
    Klicken Sie auf Zurück, wenn der Pfad geändert werden soll. Andernfalls klicken Sie auf Fortfahren.


    Das ist der Stand der Dinge! Habe mich bisher nicht weiter damit beschäftigt da die Rechte in unserem Haushalt/Netzwerk für alle gleich sind.


    Christian

  • Es gibt noch eine weitere Möglichkeit, die erfordert jedoch ein paar Linux-Kenntnisse.


    1. Du erstellst unter /share/HDA_DATA/ ein Ordner zB. "user", in diesem Ordner erstellst du deine Ordner "privat"1, "privat2" und "daten1".
    Für diese Ordnern erstellst du Freigaben mit den von dir gewünschten Rechten, diese Freigaben kannst du auch verstecken.


    2. Nun erstellst du unter /share/HDA_DATA/ einen weiteren Ordner mit dem Namen "dfs".
    Für diesen Ordner erstellst du eine weitere Freigabe nur mit Lese-Rechten, Den Namen der Freigabe kannst du frei vergeben.


    Im Ordner dfs erstellst du Soft-Links wie folgt:

    Code
    ln -s msdfs:\\mynas\\privat1 privat1ln -s msdfs:\\mynas\\privat2 privat2ln -s msdfs:\\mynas\\daten1 daten1


    mynas ist der name deines TS-109, wie es in der Windows-Netzwerkumgebung zu sehen ist.
    "privat1" ist einmal der Name der Freigabe, wie unter Punkt 1. erstellt.


    3. Nun folgt die Änderung der smb.conf:
    Zuerst eine Sicherung der smb.conf erstellen:

    Code
    cp /etc/config/smb.conf /etc/config/smb.conf.bak


    Nun öffnest du die smb.conf mit

    Code
    vi /etc/config/smb.conf


    Besser funktioniert das Editieren mit Winscp.
    Am Ende des Bereiches [global] fügst du folgende Zeile ein

    Code
    host msdfs = yes


    In der Freigabe (smb.conf) für /share/HDA_DATA/dfs fügst du noch einen weiteren Parameter hinzu:

    Code
    msdfs root = yes


    so das am Ende die Freigabe in etwa so aussieht:

    Code
    [dfs]
    comment = DFS
    path = /share/HDA_DATA/DFS
    msdfs root = yes
    browsable = yes
    public = yes
    invalid users = guest
    read list = @"everyone"
    write list =
    valid users = root,@"everyone"


    Wenn du nun im Explorer zB. folgendes eingibst \\mynas\\dfs solltest du die Ordner "privat1", "privat2" und "daten1" sehen,
    diese Ordner (Soft-Links) verweisen nun auf deine eigentlichen Freigaben mit den oben vorgegebenen Freigabe-Rechten.


    Diesen Tip bitte nur durchführen, wenn du entsprechende Linux-Kenntnisse hast,
    damit nicht evtl. falsche Dateien bearbeitet oder gelöscht werden.


    Info: DFS ist die Abkkürzung für Distributed Filesystems (Verteilte DateiSysteme).
    Die Softlinks "msdfs:\\mynas\\meinordner" können auch auf andere PCs verweisen, nicht nur auf das NAS selbst,
    so das diese Freigabe eine zentrale Sammlung aller Freigaben im Netzwerk darstellen kann.

  • Zitat von "christian"

    das gilt dann aber nur für smb Bereich?! Wie sieht es mit den FTP Benutzerechten aus?


    Ein sehr gute Frage, es ein Lösung nur für SAMBA,
    bei der gleichzeitigen Nutzung von FTP, würde ich diese Lösung nicht anwenden,
    da ich nicht Beurteilen kann, welchen Einfluß die Soft-Links auf das FTP haben.


    Also nur als reine SAMBA-Lösung verwenden.

  • Hallo Stefan,


    danke für die Anleitung, ich werde das heute Abend (nee heute spielt Deutschland, also Morgen) ausprobieren.
    Ich frage mich, wozu dienen dann die Rechte in dem Konfigurationsmenü von TS-109, wenn ich sie nicht auf die Plattensegmente verteilen kann?
    Ist die Warnung neu?

  • Zitat von "kolesia"

    Ich frage mich, wozu dienen dann die Rechte in dem Konfigurationsmenü von TS-109, wenn ich sie nicht auf die Plattensegmente verteilen kann?
    Ist die Warnung neu?


    In dem Konfigurationsmenü vergibst du die Rechte für die einzelnen Freigaben.
    Im Gegensatz zu Windows, kannst du die rechte einer Datei bzw. Ordner nur einem Benutzer und einer Gruppe zuordnen und welche Rechte alle anderen haben.
    Du möchtest jedoch in einer Freigabe mehrere verschiedene Zugriffrechte verteilen und das bietet die einfachen Dateirechte nicht aus.
    Daher hast du nur die Möglichkeit mit mehreren Freigaben mit deren eigenen Zugriffsrechten zu arbeiten.


    Würdest du in einer Freigabe für alle Benutzer jeweils einen Ordner erstellen, und jeder soll nur Zugriff auf seinen Ordner haben, könnte man es mit den lokalen Linux-Rechten und einer Freigabe erreichen.

  • ich würde dann auch mehrere Freigaben machen und für jede Freigabe gesonderte Rechte vergeben.
    Das Problem ist, dass die Platte als ganze /public frei gegeben ist. Wie kann ich die /public löschen und dann die einzelnen Ordner mit meinen Wunschrechten frei geben?