• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Samba Freigabe NUR für Domainusers

froemken

Member
Hallo zusammen,

eigentlich habe ich mir das nicht so schwer vorgestellt.

Ich möchte eine Freigabe erstellen auf die NUR die Gruppe "domuser" Zugriff hat. Also:

Code:
[gls]
        comment = GLS Datenbank
        path = /srv/gls_db
        browseable = no
        writable = yes
        force group = domuser

ich hab auch schon write list und read list probiert. Laut man smb.cong kommt

Problem: Wenn ich mich LOKAL auf meinem PC anmelde mit DEMSELBEN Benutzernamen und DEMSELBEN Passwort wie ich es auch in der Domäne habe, dann kann ich schreibend und lesend auf diese Share zugreifen.

Das Prizip einer Domäne ist doch unteranderem Dienste und Freigaben NUR für an die Domäne angeschlossene Clients zur Verfügung zu stellen.

Ne Idee?!

Ach hier noch das Verzeichnis
Code:
drwxr-xr-x   6 root root    144 Nov 18 15:48 .
drwxr-xr-x  21 root root    488 Oct 13 11:15 ..
drwxr-xr-x   2 root root     48 May 30 22:14 ftp
drwxrwx---   2 root domuser  48 Nov 21 10:46 gls_db
drwxr-xr-x   5 root root    120 Nov 16 11:53 samba
drwxr-xr-x   5 root root    120 Oct 13 11:32 www
 
OP
froemken

froemken

Member
Klappt auch nicht. Hab den ganzen Kram mit write und read list rausgeschmissen und deine Idee eingefügt.

Da ich die Verzeichnisse doch mit chmod 770 gesetzt habe, dürfte ich mich doch eigentlich gar nicht anmelden können, oder? Eigentlich würde ich keine zusätzlichen Befehle in der smb.conf benötigen!

Samba muss doch erstmal überprüfen, ob der ankommende PC überhaupt berechtigt ist, oder ob die ankommende Anmeldung aus einer Domäne kommt! Da er mich aber zulässt, findet ja schon ein Zugriff auf die Passwort - DB statt.

Stefan
 

Yehudi

Guru
Du kannst natürlich auch noch den Eintrag invalid user hinzufügen, und dort alle Deine User eintragen, die dort nicht zugreifen dürfen.
force group würde ich rausnehmen.
 
OP
froemken

froemken

Member
Invalid user würde bestimmt funktionieren, aber sobald ich dann mit meinem Client mich an die Domäne anmelden will, wird das bestimmt nicht mehr funktionieren. force group habe ich schon rausgeworfen:

Code:
[gls]
        comment = GLS Datenbank
        path = /srv/gls_db
        browseable = no
        writable = yes
        valid users = @domuser

Ich brauche so einen Befehl, der überprüft, ob die Anmeldung des Users aus einer Domäne kommt oder von einem PC, der nur so im Netzwerk hängt. Erst wenn Domäne=Wahr, dann User überprüfen.

Gibts sowas? Nunja...zumindest denke ich es sollte sowas geben...

Stefan
 
A

Anonymous

Gast
Hallo froemken,

das ist alles viel zu kompliziert gedacht. Ich stelle dir mal an einem Beispiel dar wie ich an die Sache rangehen würde. Du kannst dir ja dann das für dich Brauchbare raussuchen.

Code:
Gruppe anlegen.: "groupadd domuser"

User anlegen.: "useradd -g domuser testuser"

Verzeichnis anlegen.: "mkdir /testverzeichnis"

Besitzrechte ändern.: "chgrp /testverzeichnis domuser"

Berechtigungen ändern.: "chmod 770 /testverzeichnis"
Damit hättest du nun das "testverzeichnis" geschaffen, auf das nur "root" und die Mitglieder der Gruppe "domuser" vollzugriff haben.

Allerdings gilt das momentan nur für die lokalen Berechtigungen. Um das zu ändern, setzt du nun in der smb.conf, wie hier schon erwähnt wurde,

"valid users = @domuser".

Damit haben über das Netzwerk nur noch Mitglieder der Gruppe "domuser" Zugriff auf "testverzeichnis".
 

Frankie777

Advanced Hacker
Das ist alles eine Frage was man möchte:
browseable = no verhindert das anzeigen des shares, ähnlich zum $ wie bei der administrativen Freigabe bei windosen

Ansonsten schau hier mal weiter:

map to guest = Never

restrict anonymous = boolean [global]
Allowable values: YES, NO
Default: NO
Denies access to users who do not supply a username. This is disabled by default because when the Samba server acts as the domain's PDC, the option can keep a client from revalidating its computer account when someone new logs in. Use of the option is recommended only when all clients are Windows NT/2000/XP systems.
 

Frankie777

Advanced Hacker
Für Deine Benutzerprüfung

siehe hier und weitere
allow trusted domains
security

Dazu wäre es angebracht die Grundlagen zu lesen. Das kann man nicht so über das Knie brechen. Es gibt gute Fallbeispiele in der Doko
 
OP
froemken

froemken

Member
@binfalse
ich habe insgesamt 4 neue Gruppen angelegt. Eine davon ist die domuser mit insgesamt 35 usern. Ein entsprechendes Verzeichnis habe ich auch und sogar die Rechte habe ich neu verteilt, wie man eigentlich in meinem ersten Post entnehmen sollte ?!?!

@Frankie777
Laut der man smb.conf ist map to guest sowieso auf Never
Code:
For people familiar with the older Samba releases, this parameter maps to the old comp
ile-time setting of the  GUEST_SESSSETUP value in local.h.

              Default: map to guest = Never

              Example: map to guest = Bad User

restrict anonymous habe ich jetzt auch eingetragen mit dem Wert 2. Warum auch immer boolean gleich 2 sein kann, verstehe ich zwar nicht, aber funktionieren tuts auch nicht.

Genau so mit allow trusted domains. Zumal dieser Befehl ja auch nur funktionieren würde mit Einstellung server und domain wärend ich auf user bin. Weiterhin habe ich hier nur eine Domain und keine zweite deren Benutzer ich mit integrieren möchte.

Mein Problem dürfte diesem hier sehr nahe kommen:
http://groups.google.de/group/de.comp.os.unix.networking.samba/browse_thread/thread/c61c90d38f5cbdf2/6c413f06cdfe71e7?lnk=st&q=share+nur+wenn+client+in+dom%C3%A4ne&rnum=2&hl=de#6c413f06cdfe71e7

Stefan
 
OP
froemken

froemken

Member
Die Lösung, die unter dem Link zu sehen ist funktioniert nicht. Selbst dann nicht, wenn ich den Domänenname NUR als Arbeitsgruppe laufen lasse.

Ich kann mich sogar als lokaler User einer Arbeitsgruppe BLUB an dieser Share anmelden, obwohl der Client laut Einstellungen nicht einmal weiß, wie die Domäne heißt.
Da ich den Pfad jetzt aber auf /srv/%D/gls_db gesetzt habe, kann eine Freigabe doch eigentlich gar nicht erst zustande kommen?!?!

Stefan
 
OP
froemken

froemken

Member
Auf der anderen Seite heißt es aber %D gibt den Domainnamen des aktuellen Users zurück und nicht die Domäne des angemeldeten Clients. Somit dürfte mich %D nicht wirklich viel weiter bringen.

Hab ich jetzt eine Sicherheitslücke entdeckt?!

Stefan
 

Frankie777

Advanced Hacker
In der Ecke mal lesen, das Verhalten von Samba ist eigentlich ein Vorteil.

http://us3.samba.org/samba/docs/man/Samba-HOWTO-Collection/winbind.html

This means that winbind is eminently useful in cases where a single Samba PDC on a local network is combined with both domain member and domain non-member workstations. If winbind is not used, the user george on a Windows workstation that is not a domain member will be able to access the files of a user called george in the account database of the Samba server that is acting as a PDC. When winbind is used, the default condition is that the local user george will be treated as the account DOMAIN\george and the foreign (non-member of the domain) account will be treated as MACHINE\george because each has a different SID.



Für Dein Problem, wenn ich es jetzt richtig verstanden habe, würde ich mindestens VLAN zur Abgrenzung nehmen.
Rechner, die nicht in der Domäne sind, sollten auch nicht im gleichen SubNet sein, und wer im sicheren SubNet ist, muß auch in der Domäne sein.
So oder so, ein dazwischen macht aus einen sicheren LAN eine DMZ.
Es geht ja nicht nur darum, dass sich ein lokaler Admin-Rechner an die Domäne mit geklauten Passwort anmelden könnte. Er könnte auch den Betrieb stören, den Switch manipulieren, usw..
Man will eigentlich gar keine fremden AdminRechner im sicheren LAN haben und sperrt sie deswegen auch aus.
 

Frankie777

Advanced Hacker
laut Doko
%D name of the domain or workgroup of the current user

zumindest die workgroup kann ich beliebig editieren und somit kann das kein Schutz sein.
Das Passwort soll schützen, nicht die UserID..

Wenn wirklich sicher sein soll, managebare Switches oder sogar OpenVPN im LAN.
 
OP
froemken

froemken

Member
Hab gerade eine alte Telefonnummer von einem Klassenlehrer rausgesucht, der uns den ganzen Kram seinerzeit begebracht hat.

Er meint bei einem Samba-Server geht es um das Thema Authentifizierung!. Ich muss mich am Sambe-Server authentifizieren, um entsprechende Dienste in Anspruch nehmen zu können. Fertig. Ich identifiziere mich nicht mit dem Client, sondern mit meinem Benutzernamen und meinem Kennwort. Mehr nicht.

Na...dann lass ich die Sache jetzt einfach mal ruhen und versuche einfach zu akzeptieren wie es ist.

Vielen Dank für Eure Mühen, Links und vor allem Geduld.

Stefan
 
Oben