Zugriffsrechte für Samba-Mount

06/09/2010 - 08:31 von Edzard Egberts | Report spam
Bei den Rechten unter Linux breche ich mir permanent einen ab, mal
sehen, wann ich es lerne. ;o)

Aktuelles Problem ist der Zugriff auf ein Samba-Mount. Das Verzeichnis
auf das ich mounte ist für Benutzer ed freigegeben, auf die
Windows-Verzeichnisse kann aber wieder nur der root zugreifen. Ich
benutze den Befehl "sudo mount -t cifs -o username=ed,password=*****
//10.0.0.1/Server /mnt/server".

Wie kriege ich da den freien Zugriff rw für ed hin? Ich habe jetzt schon
gefunden, dass man das über die /etc/samba/smb.conf machen könnte, mit
"[sourcedocs] admin users=ed" (funktioniert aber nicht), dass man das in
die fstab eintragen könnte (ist das nicht eher für permanent
eingebundene Laufwerke, wie die HDD?), oder direkt über Parameter (-orw
war es aber nicht, das mountet noch nicht einmal).

Was wàre denn da die zu bevorzugende Methode und was sollte ich mir mal
richtig eintrichtern?
 

Lesen sie die antworten

#1 Marcel Müller
06/09/2010 - 12:26 | Warnen spam
Hallo,

Edzard Egberts wrote:
Aktuelles Problem ist der Zugriff auf ein Samba-Mount. Das Verzeichnis
auf das ich mounte ist für Benutzer ed freigegeben, auf die
Windows-Verzeichnisse kann aber wieder nur der root zugreifen. Ich
benutze den Befehl "sudo mount -t cifs -o username=ed,password=*****
//10.0.0.1/Server /mnt/server".

Wie kriege ich da den freien Zugriff rw für ed hin?



Du musst dem Burschi noch uid und gid für die Unix-Seite mitgeben.
Sprich der Unix-Client kann den Windows-User ed nicht automatisch
rückwàrts auf seine User-Datenbank mappen.
Die Mount-Options dafür sind uid=...,gid=...

Ich habe jetzt schon
gefunden, dass man das über die /etc/samba/smb.conf machen könnte, mit
"[sourcedocs] admin users=ed" (funktioniert aber nicht),



Das wàre für Samba-Server.

dass man das in
die fstab eintragen könnte (ist das nicht eher für permanent
eingebundene Laufwerke, wie die HDD?),



Dunkles Kapitel im Kontext smbclient. In der Unix-Netzwerk-Denke (NFS)
manifestieren sich die Dateirechte nicht primàr beim Herstellen der
Verbindung, sondern beim Zugriff. Dadurch können verschiedene User über
die gleiche Verbindung unter verschiedenen Berechtigungen auf die
gleichen Daten zugreifen. Unter Windows geht das nicht. Da hàngt die
Verbindung fest an einem User. Und dessen Berechtigungen gelten auf
Serverseite solange wie die Verbindung steht. (Das gilt selbst dann wenn
sich die Rechte des Users zwischenzeitlich àndern!)
Um auf der Linux-Seite halbwegs àhnlich zu agieren muss man jetzt den
User und die primàre Gruppe auch auf dieser Seite festtackern.

Was wàre denn da die zu bevorzugende Methode und was sollte ich mir mal
richtig eintrichtern?



Ich glaube es gibt keinen Königsweg.

Fstab wird dem Thema userindividueller Verbindungen irgendwie nicht
gerecht, mag aber bei einer dediziert von einem User genutzten
Workstation durchaus akzeptabel sein. (Ich nutze es z.B. so.) Dann aber
bitte wenigstens mit dem Parameter credentials, damit das Passwort nicht
für jeden lesbar in der fstab steht.

Die Alternative wàre ein Login-Script. Da gilt es aber die Hürden der
mehrfachen Anmeldung und der Berechtigung (nur root darf mounten) zu
nehmen. Abhilfe könnte ein dediziertes Skript mit gesetztem S-Bit sein,
was immer nur für die aktuelle uid/gid SMB mounts erzeugt und auch auf
eine bereits bestehende Verbindung prüft (macht mount an sich so oder
so). Letztlich das Analogon zu Verbinden/Trennen unter Windows.


Marcel

Ähnliche fragen