Zugriff auf fremde Home-Verzeichnisse verhindern

Moin…

Ich hab hier n Unix Server (mit Samba) und verschiedene Windows Clients. Das klappt soweit auch alles ganz gut.

Server: User : Hans, Heidi, Admin
Samba-User: Hans, Heidi, Admin

Windows-Accounts : Hans, Heidi, Admin

Wenn ich mich jetz auf ner Windows Kiste als Hans einlogge sehe ich, wenn ich mich mit dem Server verbinde nur das Hans-Homeverzeichniss…wenn ich jedoch oben in der Adresszeile \serverIP\Heidi eingebe kann ich auch in ihrs reinschaun und rumschreiben ec. Wie kann ich das verhindern? Die home sind in der smb.conf wie folgt angegeben.

[homes]
comment = Benutzerverzeichnisse
browsable = no
read only = no
public = no
create mode = 0750

Hallo,

Wenn ich mich jetz auf ner Windows Kiste als Hans einlogge
sehe ich, wenn ich mich mit dem Server verbinde nur das
Hans-Homeverzeichniss…wenn ich jedoch oben in der
Adresszeile \serverIP\Heidi eingebe kann ich auch in ihrs
reinschaun und rumschreiben ec. Wie kann ich das verhindern?

Sind die Verzeichnisse unter Linux denn getrennt? D.h. hast Du Leserechte nur für den Eigentümer festgelegt?

Gruß

Fritze

Wenn ich das mache kann zwar jeder nur sein Verzeichniss sehen NUR:

Die verzeichnisse liegen ja alle unter /home

Da ich noch den Admin zugang habe…dem ich als home Verzeichniss nicht /home/Admin sondern /home zugeorndet habe, damit er immer auf alle Zugriff hat…würde das ja dann nicht mehr gehen weil er ja nicht der owner ist. Oder wenn ich ihn als Owner für /home angebe hate er dann auch zigriff auf /home/Hans obewohl der Ordner an sich ja Hans gehört ?

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Auch Mahlzeit :smiley:

Ich glaube mit einem Programm wie chmod (Shell-orientiert…) kommt man unter Unix diesbezüglich weiter.

HTH
mfg M.L.

Hallo,
ich halte es für keine gute Idee dem Admin /home als home-Verzeichnis zu geben. Die Administrierung kann er ja per ssh machen, dann muss er nicht wie Samba auf alle Homes zugreifen können.

Noch ne Idee: probier mal die Berechtigungen auf 700 statt auf 750 zu stellen.

cu
Moritz

Per ssh ? Wasn das ?

Ich hab jetz übelegt dass ich die einzelnen Nutzer je in eine Gruppe stopfe in die ich dann noch jeweils den admin mit rein tue und dann halt die Ornderrechte mit der Gruppe anpasse…müsste doch auch gehen oder ?

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

[homes]
comment = Benutzerverzeichnisse
browsable = no
read only = no
public = no
create mode = 0750

Bei mir sieht es so aus:

[homes]
 comment = My own files
 read only = No
 create mask = 0600
 force create mode = 0600
 directory mask = 0700
 force directory mode = 0700
 browseable = No
 volume = Home

Gleichzeitig sind die Home-Verzeichnisse unter Unix nur für den User selbst einsehbar:

chmod 700 /home/\*

Stefan

Da ich noch den Admin zugang habe…dem ich als home
Verzeichniss nicht /home/Admin sondern /home zugeorndet
habe, damit er immer auf alle Zugriff hat…würde das ja dann
nicht mehr gehen weil er ja nicht der owner ist. Oder wenn ich
ihn als Owner für /home angebe hate er dann auch zigriff auf
/home/Hans obewohl der Ordner an sich ja Hans gehört ?

Das kannst du so nicht machen. Dann vergiss meine andere Antwort und mache es so:

  1. Erstelle eine Unix-Gruppe namens ‚admin‘

    groupadd admin

  2. Gib den Homeverzeichnissen der Anwender mit chmod neue Rechte:

    find /home -type f -exec chmod 640 {} ;
    find /home -type f -exec chmod 750 {} ;

  3. Gib den Homeverzeichnissen der Anwender mit chgrp -R neue Gruppenberechtigungen:

    chgrp -R admin /home/*

  4. Trage in der [homes]-Sektion in smb.conf ein:

    create mask = 0640
    force create mode = 0640
    directory mask = 0750
    force directory mode = 0750

Wenn du in den Anwenderverzeichnissen auch schreiben willst, dann änderst du die Rechte auf 660 respektive 770.

Ich schreibe dir das hier alles völlig ungetestet auf. Möglicherweise funktioniert das alles gar nicht. Auf meinem System bekäme ich mit der obigen Konfiguration Probleme mit meinem sendmail-Server und müsste den als nächstes umkonfigurieren.

Ich schreibe das überhaupt nur deshalb so detailliert auf, um darauf hinzuweisen, dass das alles nicht so einfach mit ein paar Mausklicks zu machen ist. Und, das möchte ich deutlich dazu sagen: ich verstehe, was ich da oben treibe, und ich würde dich bitten, dich ebenfalls um Verständnis zu bemühen. Bitte kopiere nicht einfach, was da steht, weil es falsch sein könnte - ich habe es gerade einfach so dahin geschrieben und es könnte theoretisch dein Linux-System beschädigen.

Wie dem auch sei: ich selbst würde das erst gar nicht alles machen. Der Admin hat in den Verzeichnissen der Anwender schlichtweg nix zu suchen. Und wenn, dann mach es direkt auf der Linux-Maschine als root und nicht quer übers Netz, weils so einfach zu klicken ist.

Letzteres mag zwar völlig konservativ klingen, aber genau das ist meine Empfehlung (was sicherlich diejenigen, die mich kennen, verwundern mag, halten sie mich doch aufgrund meiner Betriebssystemwahl für den größten Klicker vor dem Herrn :wink:.

Stefan

Per ssh ? Wasn das ?

secure shell. Schon nach ssh gegooglet? Treffer 2 bis n^2 befassen sich damit. Unter Unixen sehr verbreitete Form, sich auf anderen Rechnern (mit einer Textkonsole) einzuloggen. Für Windows gibt’s auch entsprechende Clients, z.B. Putty.

Gruß,
Ingo

Bin wie follgt vorgegangen. Ich habe Hans, Heidi und Admin je eine eigene Gruppe gegeben (Hans, Heidi und Admin) wobei in den den Gruppen Hans und Heidi auch der User Admin mit drin steht.

Unter /homes haben dann die Verzeichnisse, die ja Hans bzw. Heidi gehören die Rechte 770. Das heisst doch eigentlich dass auch die Gruppe vollen Zugriff drauf hat, also dass auch der Admin, da ja ind der Gruppe Hans bzw. Heidi auch mit drin ist, Zugriff auf Hans bzw. Heid hat oder ?

Durch das setzten der Rechte ist es mir gelungen andere User davon abzuhalten in fremde HomeVerzeichnisse zu gelangen, das ist auch gut…NUR:

Der Admin hat ja bei mir aufm Server als home nicht /home/admin sondern /home. Soll heissen wenn ich mich als Admin auf den Server einlogge und auf mein Homeverzeichniss klicke sehe ich dann alle anderen Homeverzeichnisse. Auf die müsste ich doch nun auch Zugriff haben, weil ich ja in der Gruppe drin bin. Allerdings geht das nicht…ich bekomme keinen Zugriff. Den krieg ich erst wenn ich die HomerVerzeichnisse wieder auf 777 setzte. Das verwirrt mich doch arg.

Achja und was soll mir

find /home -type f -exec chmod 640 {} ;
find /home -type f -exec chmod 750 {} ;

bringen. Da überschreib ich doch mit dem zweiten Befehl den ersten oder hab ich da was falsch verstanden ?

Allerdings geht das nicht…ich bekomme keinen Zugriff.
Den krieg ich erst wenn ich die HomerVerzeichnisse
wieder auf 777 setzte. Das verwirrt mich
doch arg.

Mich auch. Passiert das, wenn du unter Linux auf die Verzeichnisse zugreifst oder passiert das beim Samba-Zugriff?

Achja und was soll mir

find /home -type f -exec chmod 640 {} ;
find /home -type f -exec chmod 750 {} ;

bringen. Da überschreib ich doch mit dem zweiten Befehl den
ersten oder hab ich da was falsch verstanden ?

Nee, du hast völlig recht. Im zweiten Fall muss es -type d lauten.

Stefan