Ich möchte nicht, dass jemand im System auf den freigegebenen Ordner zugreifen kann. Ich möchte, dass nur eine eingeschränkte Gruppe von Benutzern darauf zugreifen kann.
Wie mache ich das?
quelle
Ich möchte nicht, dass jemand im System auf den freigegebenen Ordner zugreifen kann. Ich möchte, dass nur eine eingeschränkte Gruppe von Benutzern darauf zugreifen kann.
Wie mache ich das?
Entnommen aus diesem ausgezeichneten Beitrag in den Ubuntu-Foren von Morbius1.
Die klassische Linux-Methode, um so etwas zu tun, sieht ungefähr so aus:
Erstellen Sie den freigegebenen Ordner:
sudo mkdir /home/Shared
Erstellen Sie die Gruppe des neuen Benutzers:
sudo addgroup newgroup
Ändern Sie den Besitz des freigegebenen Ordners in die neue Gruppe:
sudo chown :newgroup /home/Shared
Fügen Sie Ihrer Gruppe Ihre gewünschten Benutzer hinzu:
sudo adduser user1 newgroup
Wiederholen Sie dies für alle Benutzer.
Jetzt müssen Sie einige Entscheidungen treffen, was diese Benutzer tun sollen:
[a] Alle Gruppenbenutzer können dem Ordner hinzufügen und daraus löschen sowie Dateien lesen und nicht in die anderen schreiben:
sudo chmod 0770 /home/Shared
[b] Wie oben, aber nur der Eigentümer der Datei kann sie löschen:
sudo chmod 1770 /home/Shared
[c] Alle Gruppenbenutzer können dem Ordner hinzufügen und daraus löschen sowie die Dateien des jeweils anderen lesen und schreiben:
sudo chmod 2770 /home/Shared
[d] Wie [c], außer dass nur der Eigentümer der Datei sie löschen kann:
sudo chmod 3770 /home/Shared
A 1
an der ersten Position des Befehls chmod ist das Sticky-Bit, das das Löschen einer Datei an andere Personen als den Eigentümer verhindert.
A 2
an der ersten Stelle des Befehls chmod ist das setgid-Bit, das alle neuen oder kopierten Dateien dazu zwingt, die Gruppe dieses Ordners zu haben.
A 3
an der ersten Position des Befehls chmod ist die Kombination der Bits sticky ( 1
) und setgid ( +2
).
Dies alles hat eine Einschränkung, was das Setgid-Bit betrifft. Alle neuen Dateien, die in diesem Ordner erstellt und in diesen Ordner kopiert wurden, erben tatsächlich die Gruppe des Ordners. Es wurden jedoch keine Dateien in diesen Ordner verschoben. Verschobene Dateien behalten das Eigentum von jedem Ort, an dem sie verschoben wurden. Eine Möglichkeit, dieses Problem zu umgehen, ist die Verwendung von bindfs.
Wenn Sie möchten, dass andere Personen außerhalb der Gruppe die Dateien sehen, aber nicht ändern können, ändern Sie die letzte 0 im chmod
Befehl in eine 5, z.
sudo chmod 0775 /home/Shared