[gelöst] Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Probleme mit Samba, NFS, FTP und Co.
Antworten
Benutzeravatar
joe2017
Beiträge: 1136
Registriert: 07.08.2017 14:29:51

[gelöst] Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Beitrag von joe2017 » 02.09.2020 14:57:45

Hallo zusammen,

ich hätte eine Frage und bin etwas überfragt ob das in Debian überhaupt zu lösen ist.

Ich habe einen Samba Fileserver auf welchem ich eine Ordner Struktur angelegt habe.

Code: Alles auswählen

Bsp.
/share/Folder1
/share/Folder2
/share/Folder3
Wenn ich meinen Benutzern die Berechtigungen zum lesen, schreiben und ausführen auf diese Ordner gebe, können diese auch den Hauptordner (Folder1, Folder2, Folder3) löschen.
Gibt es eine Möglichkeit, dass Benutzer innerhalb des Ordners lesen, schreiben und ausführen können, den Hauptordner jedoch nicht löschen können?

Danke für eure Mithilfe.
Zuletzt geändert von joe2017 am 03.09.2020 11:35:45, insgesamt 1-mal geändert.

TomL

Re: Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Beitrag von TomL » 02.09.2020 15:53:10

Wenn jeder User mit der Anmeldung an 'sein' Linux-System mit seinem Linux-Namen/-Password die Samba-Shares ebenfalls mit seinem persönlichen Samba-Account mountet, kannst Du alle Rechte so differenziert setzen, wie Du magst.

Benutzeravatar
joe2017
Beiträge: 1136
Registriert: 07.08.2017 14:29:51

Re: Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Beitrag von joe2017 » 02.09.2020 16:03:26

Aktuell habe ich meien Berechtigungen mittels ACL Gruppen aus meinem separaten Samba DC gesetzt.
Ich habe das aktuell nur mit Windows Clients testen können, meinem Debian Clients haben aktuell noch Probleme mit den ACL´s.
Diese erhalten derzeit gar keine Berechtigungen. Hierfür existiert jedoch ein anderer Forum Eintrag.

Meine Windows Clients sind Mitglied einer Gruppe, welche eine ACL Berechtigung (getfacl) für den jeweiligen Ordner gesetzt hat.
Jedoch muss ich ja rwx auf den Ordner setzen wenn ein Benutzer lesen, schreiben und ausführen können muss. Somit darf dieser auch den ganzen Ordner löschen. Dies muss ich irgendwie verhindern.

Benutzeravatar
weshalb
Beiträge: 1265
Registriert: 16.05.2012 14:19:49

Re: Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Beitrag von weshalb » 02.09.2020 22:18:31

Lerne doch erstmal, wie Sambaberechtigungen ohne ACL funktionieren, dann reicht dir das eventuell auch schon.

@ ah sorry, ich hatte deine Frage in dem anderen Thread noch nicht gelesen.

Hier hatte ich mich mal dran abgearbeitet:

viewtopic.php?f=9&t=167113

Grob gesagt:

Du definierst zum einen die Rechte an den Ordnern. Das hat mit Samba erstmal so gar nichts zu tun. Dann definierst du innerhalb der SMB.CONF, was mit diesen Ordnern oder auch Dateien, maximal passieren darf.

Edit: Ich habe es mir nochmal angeschaut, nein, das geht so nicht. Allerdings..wo ist der Sinn? Wenn der User alles innerhalb des Ordners löschen kann, macht ein Löschschutz des Ordners selbst in meinen Augen auch keinen Sinn. Ich erreiche mit den normalen Mitteln lediglich eins: Lösche ich den Ordner Folder3, ist der erstmal weg, sowie die ganzen Dateien innerhalb ebenfalls. Wenn ich danach aktualisiere, ist Folder3 wieder da, nur die Dateien sind alle weg.

Theoretisch ist das Ziel damit erreicht: Ordner kann nicht gelöscht werden, aber nochmal....wozu?

Benutzeravatar
joe2017
Beiträge: 1136
Registriert: 07.08.2017 14:29:51

Re: Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Beitrag von joe2017 » 03.09.2020 09:19:50

Guten Morgen weshalb...

es geht darum, dass ich für unsere Firma einen Fileserver mit einer bestimmten Struktur vorgeben muss. Die Benutzer müssen auf diverse Ordner Zugriff erhalten, sollen die Struktur jedoch nicht verändern dürfen.
Hierbei geht es nur darum, dass Benutzer nicht ausversehen einen Ordner löschen oder verschieben. Ihr wisst ja wie anwender sind... So etwas ist keine seltenheit. :facepalm:

Wie hast du es hinbekommen, dass der Ordner nach dem aktuallisieren wieder auftaucht? Das könnte mir schon helfen. Ich hatte schon versuche mit "chattr" durchgeführt. Leider ohne Erfolg.

PS. Vielleicht hast du auch einen Tipp für meinen anderen Eintrag? viewtopic.php?f=9&t=178368
Hier komme ich immer noch nicht weiter. Ich könnte mir vorstellen, dass ich dies mit der smb.conf und dem mount Befehl lösen muss.

Benutzeravatar
joe2017
Beiträge: 1136
Registriert: 07.08.2017 14:29:51

Re: Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Beitrag von joe2017 » 03.09.2020 11:35:32

Ich habe eine Lösung hierfür gefunden.

Ich erstelle meine Ordnerstruktur und vergebe ganz normal meine Berechtigungen.
Innerhalb der Ordner welche nicht gelöscht werden dürfen, erstelle ich eine Datei Bsp. ".lock" (durch den Punkt wird die Datei automatisch versteckt).
Anschließend führe ich noch folgenden Befehl für diese Datei aus:

Code: Alles auswählen

sudo chattr +i /path/.lock
Somit kann der Ordner in welchem sich diese Datei befindet nicht gelöscht werden.

PS. Ich habe übrigens ein Script erstellt welche mir die Aufgaben der Berechtigungen usw. abnimmt. Bei Interesse einfach melden.

Benutzeravatar
weshalb
Beiträge: 1265
Registriert: 16.05.2012 14:19:49

Re: [gelöst] Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Beitrag von weshalb » 03.09.2020 11:52:39

Hallo Joe2017,

deine jetzt anvisierte Lösung habe ich ebenfalls gesehen, doch noch nicht selbst ausprobiert.

Wenn ihr Angst davor habt, dass User etwas ausversehen löschen, wäre evtl. noch ein zusätzlicher Papierkorb auf Netzwerkebene etwas. Lässt sich ebenfalls in der smb.conf realisieren.

Benutzeravatar
joe2017
Beiträge: 1136
Registriert: 07.08.2017 14:29:51

Re: [gelöst] Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Beitrag von joe2017 » 03.09.2020 12:14:24

Hi weshalb,

das mit dem Papierkorb habe ich mir gerade angeschaut. Irgendwie funktioniert das nicht so richtig.
Ich habe in die smb.conf unter meinen [share] folgendes eingetragen.

Code: Alles auswählen

[share]
comment = eine Freigabe zum Testen
path = /path/to/share/folder
...
...
vfs object = recycle
recycle:repository = .recycle
recycle:directory_mode = 1770
recycle:keeptree = Yes
recycle:touch = Yes
recycle:versions = Yes
recycle:exclude = .recyclebin
sudo systemctl restart smbd.service

Wenn ich jetzt eine Testdatei lösche taucht diese nicht in dem Verzeichnis auf. Muss ich hier noch etwas besonderes beachten?

Benutzeravatar
weshalb
Beiträge: 1265
Registriert: 16.05.2012 14:19:49

Re: [gelöst] Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Beitrag von weshalb » 03.09.2020 16:50:15

Hallo, bei mir sieht das so aus:

Code: Alles auswählen

   vfs objects = recycle
   recycle:repository = Mülleimer
   recycle:directory_mode = 1770
   recycle:keeptree = yes
   recycle:versions = yes
   recycle:exclude = Mülleimer
Kann es sein, dass du mit .recycle den Ordner nicht siehst bzw. wird der Ordner überhaupt erstellt?

Ps: Falls du den Ordner selbst erstellt hast, lösche den mal wieder, denn der wird von Samba selbst erstellt.

Benutzeravatar
joe2017
Beiträge: 1136
Registriert: 07.08.2017 14:29:51

Re: [gelöst] Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Beitrag von joe2017 » 07.09.2020 10:09:04

OK, dass war das Ganze Problem. Ich hatte den Ordner angelegt. Jetzt funktioniert das. Jedoch nur für meinen ersten Benutzer.

Das Problem sind die Berechtigungen die gesetzt werden.
Der Hauptordner zeigt folgende Berechtigungen. (getfacl)

Code: Alles auswählen

owner: root
group: root
user::rwx
group::rwx
group::domain_users:rwx
Mask::rwx
other::---
default:user::rwx
default:group::rwx
default:group::domain_users:rwx
defualt:mask::rwx
default:other::---
Lösche ich jetzt mit dem ersten Benutzer (UserA) eine Datei, wird in dem Hauptordner eine Ordner/Datei ".recyclebin/UserA/path/to/deleted/file" angelegt.
Der Ordner (.recyclebin) zeigt jetzt folgende Berechtigungen.

Code: Alles auswählen

owner: Domain\UserA
group: Domain\domain_users
user::rwx
group::rwx				#effective:r-x
group::domain_users:rwx		#effective:r-x
Mask::rwx
other::---
default:user::rwx
default:group::rwx
default:group::domain_users:rwx
defualt:mask::rwx
default:other::---
Löscht der Benutzer (UserB) eine Datei, wird der Pfad ".recyclebin/UserB" erst gar nicht angelegt. Somit auch keine gelöschten Dateien.

Benutzeravatar
joe2017
Beiträge: 1136
Registriert: 07.08.2017 14:29:51

Re: [gelöst] Debian Samba Share Berechtigungen - Benutzer soll Ordner nicht löschen dürfen

Beitrag von joe2017 » 07.09.2020 10:22:14

Ich habe das Problem gelöst. Ich habe einfach anschließend die entsprechenden Berechtigungen auf den Ordner .recyclebin gesetzt.
Danke für den Tipp mit dem nicht anlegen des Hauptordners!

Antworten