Write Only Rechte in Samba 3.0.26

Antworten
Nachricht
Autor
Dirk

Write Only Rechte in Samba 3.0.26

#1 Beitrag von Dirk » 14. Nov 2007 16:35

Hallo alle,

Gibt es einen Patch um die" Write only" Funktionalität unter Samba 3.0.26 wieder herzustellen?

Bis Samba 3.0.24 war es möglich einen Ordner unter Linux mit z.B.: chmod 730 so einzurichten, dass User aus der Gruppe nur Datein ablegen können, jedoch nicht lesen können.

Mit Samba 3.0.26 ist das nicht mehr möglich, ich erhalten einen Zugriff verweigert!.

Alternativ: Gibt es unter OpenSuSE 10.3 die Möglichkeit den Sambaserver auf 3.0.24 downzugraden, wenn ja wie?

mfg
Dirk

rasu
Beiträge: 20
Registriert: 10. Nov 2006 10:52

#2 Beitrag von rasu » 11. Dez 2007 13:11

Ich kenne ja den Hintergrund Deiner Verfahrensweise nicht.
Ich halte die Konstellation nicht für sehr glücklich. Wie will jemand sinnvoll in einen Ordner Schreiben, wenn er den Inhalt eines Ordners nicht lesen kann. Was soll passieren, wenn die gleiche Datei nochmals geschrieben werden soll? Man sollte die Dateinamen die drinne sind schon lesen können, wenn man da reinschreiben will.

Wir haben eine ähnliche Konstellation auf einem Dokumentenordner. Dort können Files abgelegt werden, die anschließend aber nicht mehr geändert werden sollen. Das realisieren wir über einen kelines skript. Alle Dateien die in den Ordner eingestellt werden, werden im Abstand von 10 Sekunden überprüft und erhalten anschließend nur Leseberechtigung, damit sie nicht mehr verändert oder überschrieben werden können. User wird auf Root und Gruppe gelegt.

Das geht so:
find ./ -type f ! -user root -print0 | xargs -0 chown root:doc

finde ab dem aktuellen Verzeichnis alle Dateien vom Type File, die nicht dem user root gehören und hänge ein 0 Byte an. Pipe dies an xargs wobei xargs das 0 Byte als Trenner verwendet und den Befehl chown aufruft und die gefundenen Dateien übergibt und die Benutzer und Gruppe auf root und doc setzt.
Das setzt man in eine Endlosschleife und gibt noch ein sleep 10 dazu un bringt es in die inittab. Dann läuft es stehts und alle 10 Sekunden.

Wenn Du neben dem Benutzer auch die Rechte ändern wills dann geht es so:
find ./ -type f ! -perm 640 -print0 | xargs -0 chmod 640

Das ganze läuft bei uns so weil es auf einem Teil einer Freigabe läuft.
Ansonsten könntest Du Dir auch create mask, directory mask, force group, force user ansehen.

Antworten