Samba Freigabe

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Samba Freigabe

Beitrag von croixaigle » 13.11.2017 12:30:40

Hallo zusammen,

mein Samba-Server läuft ganz gut, für die jeweiligen Benutzer.
Jetzt möchte ich aus meinem Persönlichen Ordner "Lieder" freigeben für die Familie.

1. Habe dazu in der smb.conf folgendes eingetragen:
[Lieder]
comment = Lieder
path = /daten/samba/jochen/Lieder
valid users = veronika, jan
force group = smball, users
write list = veronika
read list = veronika, jan
Benutzer veronika hat ein eigenes Verzeichnis, nur kommt die nicht auf Lieder
Benutzer: adduser --no-create-home --disabled-login jan # wurde so angelegt.

Gruppe Anlegen:
addgroup smball
gpasswd -a veronika smball #Benutzer der Gruppe zuordnen

wie sehe ich, welche Benutzer angelegt sind und in welche Gruppe die sich befinden?

2. Ist es sinnvoller über usershare zu arbeiten und wenn ja, wie?

TomL

Re: Samba Freigabe

Beitrag von TomL » 13.11.2017 12:38:39

Ich halte das nicht für eine gute Lösung, weil du damit imho auch die Rechte auf deinen persönlichen Ordner aufweichst. Ich würde eher überlegen, ob ich nicht via bind auf den Ordner einen eigenen und neuen Share in /daten/samba/Lieder anlege, der ganz regulär von allen gemountet werden kann/darf. Ich würde den Ordner vielleicht sogar ganz aus der Verzeichnisstruktur "Jochen" herauslösen, damit eben der Bereich unberücksichtigt bleibt. Du selbst kannst den neuen Share auch einfach mounten und hast keine Nachteile. Außerdem lassen sich so isoliert die Rechte optimal setzen.

Hth

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Samba Freigabe

Beitrag von croixaigle » 13.11.2017 13:24:19

das heist, genauer gesagt, wenn die Daten im Ordner seperat liegen. Kann ich als User vollzugriff Rechte 777 haben und für jeden anderen user die Rechte z.b. auf 644 setzen?
Der Benutzer muss nur zu Gruppe hinzugefügt werden? Gleicher Name und Kennwort wie beim persönlichen Ordner.

TomL

Re: Samba Freigabe

Beitrag von TomL » 13.11.2017 15:04:42

croixaigle hat geschrieben: ↑ zum Beitrag ↑
13.11.2017 13:24:19
das heist, genauer gesagt, wenn die Daten im Ordner seperat liegen. Kann ich als User vollzugriff Rechte 777 haben und für jeden anderen user die Rechte z.b. auf 644 setzen?
Der Benutzer muss nur zu Gruppe hinzugefügt werden? Gleicher Name und Kennwort wie beim persönlichen Ordner.
Ja, genau, das würde gehen.

Allerdings würde ich eher nicht die orginalen Verzeichnisse einer Harddisk via Samba freigeben, sondern immer eine Bind-Zwischenschicht einplanen. Das hat für die Anwender überhaupt keine Bedeutung, vereinfacht aber das Rechtemanagement erheblich und verbessert meiner Meinung nach deutlich die Möglichkeiten bei der Server-Wartung. Obwohl z.B. die Verzeichnisse von "Jochen" und "Veronika" physisch auf der Server-Platte im Ordner /Samba/Homes

/Samba/Homes/jochen
/Samba/Homes/veronika


liegen, damit sie einfach zusammen ge'backup't werden können, können sie via bind in der fstab zu einem eigenen Share gemountet werden, die für die Client fast physisch getrennt aussehen. Man bemerkt das beim moven, auf dem Client wird kopiert, auf dem Server nur der inode angepackt... die Server-Wartung wird einfacher und die Zugriffe auf den Clients sind besser voneinander getrennt.

Ich würde dann dazu einfach den Ordner /Samba/MultiMedia anlegen, aus dem dann die Unter-Verzeichnisse

/Samba/MultiMedia/Musik
/Samba/MultiMedia/Film
/Samba/MultiMedia/Foto
/Samba/MultiMedia/Buch


(sofern es sowas gibt) flexibel in eigene zu sharende Verzeichnisse gebinded werden, die dann die Clients nach Deinen Berechtigungsvorgaben einzeln mounten dürfen. Für Dich selber kannnst Du dann auch noch einen Bind auf /Samba/MultiMedia anlegen, mit dem Du dann gleich alle Unterverzeichnisse hast. All das kann man völlig flexibel handhaben.

Egal, das war schon wieder viel zuviel... und sollte nur ne kurze Anregung sein....

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Samba Freigabe

Beitrag von croixaigle » 14.11.2017 19:02:28

da ich noch rech neu bin, was samba angeht. Wie mache ich das dann genau?
1. Habe einen Ornder /daten/samba/Lieder angelegt
2. chmod 700 -R /daten/samba/Lieder
3. chgrp smball -R /daten/samba/Lieder
4. chown jochen -R /daten/samba/Lieder
5. eintrag in der smb.conf
[Lieder]
comment = Lieder
path = /daten/samba/Lieder
valid users = jochen, veronika
force user = jochen, veronika
force group = smball
writelist = jochen
read list = veronika, jochen
Die Bilder liegen in Nextcloud, und werden mit der Familie geteilt.

Wir wollen einen gemeinsamen Ordner für unsere Musik und dies soll jeder für sich über vlc abspielen können. So wie für unsere Kinder, dann die Kinderlieder etc

Kommen die Einstellungen hin? jochen als admin und veronika und andere Benutzer die der gruppe smball angehören, dürfen mit drauf zu greifen? Natürlich fehlen hier die Rechte für 644, eintrag in der smb.conf?

TomL

Re: Samba Freigabe

Beitrag von TomL » 14.11.2017 20:07:40

Neee, das wird mit der 700 nix werden... Samba MUSS sich an Linux orientieren, nicht Linux an Samba. Das bedeutet, Du kannst in Samba nicht höherwertige Rechte vergeben, als in Linux vorgegeben sind. Man kann wohl Linux-Seitig die Rechte auf 777 setzen und im Rahmen von Samba Beschränkungen vornehmen, aber nicht umgekehrt.

Also würde ich zuerst in dem Ordner alle Rechte für Dateien und Ordner auf [RW-, R--, ---] setzen:

Code: Alles auswählen

chmod -R 640 /daten/samba/Lieder
Und dann nachträglich die "Wechselberechtigung" für Unterverzeichnisse setzen.... [RWX, R-X, ---] denn ohne diese Berechtigung können die User nicht in weitere Unterverzeichnisse wechseln. Aber Achtung, zuerst mit der Print-Variante testen, was der folgende Aufruf anpacken würde... da muss man sehr vorsichtig sein, damit man sich nicht mit einem falschen Befehl seine OS-Rechte zerschiesst.

Code: Alles auswählen

find /daten/samba/Lieder -type d -print 
find /daten/samba/Lieder -type d -exec chmod 750 {} +
Und UID/GID-Rechte setze ich immer in einem Befehl. Das ist mir irgendwie deutlicher. besser erkennbar und auch mehr an die übliche Darstellung angelehnt. Aber dabei gilt es natürlich sein eigenes Ding zu finden, wie man am Besten klarkommt.

Code: Alles auswählen

chown -R jochen:smball /daten/samba/Lieder
Das sollte nun auch mit Deinen Share-Einstellungen in der smb.conf passen. Das mit der Read- Und Writelist ist imho unnötig, weil Linux ja schon klar sagt, wer was darf. Das brauchst Du nur zu setzen, wenn es sehr viele Sambauser gäbe und man will einzelne Shares für ganz bestimmte Leute aus der Gruppe smball beschränken. Aber wenn Du das nutzt, solltest Du auf Schreibfehler achten, ich sehe da nämlich mindestens einen. Und weitere Rechtebeschränkungen wie die vor Dir erwähnten 644 sind hier auch nicht notwendig... die Linuxrechte handhaben das doch alles schon. Weitere Samba-Rechte beschränken immer noch zusätzlich die Linux-Rechte, was aber imho für dich hier uninteressant ist. Aber wie gesagt, alles mit großer Aufmerksamkeit tun.... nix davon sollte man unkonzentriert machen.....mit Schreibfehler kann das dramatisch enden.....

HTH

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Samba Freigabe

Beitrag von croixaigle » 15.11.2017 20:41:54

ok, soweit verständlich.

Aktuell gibt es noch Probleme.
Und zwar, da ich mit Lieder die grupppe angesetzt habe usw.
Müsste ich erst mal schauen, welche Benutzer angelegt sind, und welche gruppe?
Habe am Anfang befor ich hier geschrieben habe die Gruppe smball erstellt. Und durch einen weiteren Eintrag, sehe ich unter Netzwerkverbindung Server ==> smball ordner, wie bekomme ich den weg?

Einfacher gesagt, wenn ich Info über User, Gruppe, Odner erfahren will, muss es ja auch irgendwo abgespeichert sein?

Bzw Befehl wie hier, nur deaktiviert er den user, weiß ich den User nicht, kann ich ihn schlecht deaktivieren oder entfernen.
smbpassword -d username

TomL

Re: Samba Freigabe

Beitrag von TomL » 16.11.2017 15:25:07

croixaigle hat geschrieben: ↑ zum Beitrag ↑
15.11.2017 20:41:54
Aktuell gibt es noch Probleme.
Und zwar, da ich mit Lieder die grupppe angesetzt habe usw.
Müsste ich erst mal schauen, welche Benutzer angelegt sind, und welche gruppe?
Im Moment kann ich Dir jetzt hier nicht so recht folgen.... denn das war jetzt nicht so wirklich eindeutig.... :lol: ... Nur jetzt dazu noch ein Hinweis am Rande, weil Du auch immer von Gruppen und Samba-Usern sprichst. Das Einrichten von Sambausern und Sambagruppen (wie z.B. Deine smball) auf dem Server, haben nur dann eine Bedeutung, wenn sich die betroffenen Client-User auch wirklich selber unter Samba anmelden. Das bedeutet, wenn Du auf Deinem Client-PC die Shares in der fstab mountest, und das mit den Parametern "username=jochen,password=gheim", dann spielen die anderen Sambauser und die Gruppe smball auf dem Server überhaupt keine Rolle. Samba auf dem Server sieht nix von "veronika", weil Veronika auf dem Client NIE eine Samba-Platte mountet. Für Samba ist es, egal wers tut, immer Jochen. Und wenn nur Jochen in der fstab mountet, also "Herr der Daten" ist, hat Veronika auch keine Schreibrechte auf Dateien. Im Grundgenommen sind auf solchen Public-Shares Probleme vorprogrammiert, wenn ein User die Shares für einen anderen moutet. Ich habe das eigentlich nie wirklich ordentlich und zufriedenstellend hingekriegt, ausser dass ich die Rechte generell auf 666 gesetzt habe.... tja, das funktioniert, aber das ist m.E. eben nicht "ordentlich".

Momentan ist es bei mir so gelöst, dass für jeden User dessen Shares bei seiner Anmeldung am System automatisch gemountet werden... und seitdem greifen auch Samba-Berechtigungen auf dem Server und es ist damit erstmalig 'ordentlich' gelöst. Also... das solltest Du vielleicht berücksichtigen.....

Antworten