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

Problem: Integration Debian Samba in Windows 2008R2 Domäne

Hallo,

ich habe eine Windows AD Domäne basierend auf Windows Server 2008 R2, die eine NT Domäne ablösen wird.
Jetzt versuche ich den Samba-Server aus der NT-Domäne in die neue Ad-Domäne zu migrieren.

Samba läuft auf einem Debian Lenny.

Soweit hat das auch funktioniert, Samba ist Mitglied der Domäne, allerdings gibt es kleine Probleme:

1. Mit der aktuellen "stable" Samba Version für Lenny (3.2.5) kann ich NUR noch von Rechnern in der neuen AD-Domäne auf den Server zugreifen. Weder der Zugriff von einem Windows-Client in der alten NT-Domäne, noch der Zugriff von einem Linux-Client ist möglich.
=> Bug, bzw. eine fehlende Funktion der "alten" Samba Version! Also Update auf neue Version:

2. Mit der aktuellen "backports" Samba Version für Lenny (3.4.3) funktioniert der Zugriff wunderbar, allerdings kann mir Samba die Windows-User nicht sauber auf die Unix-User mappen.
Kurz zum Hintergrund: Es gibt lokale Unix-User auf der Debian-Maschine, auf die die Windows Domäne-User gemappt werden sollen (anhand Username). Dabei sollen die Windows-User logischerweise die Zugriffsrechte der entsprechenden Unix-Usern und deren Gruppen erhalten und genau hier liegt das Problem: Die Gruppen der Unix-User werden nicht auf den Windows-User übertragen. Der Windows-User erhält eine Gruppe mit der ID des Unix-Benutzers, welche natürlich nicht existiert.
Bsp: Windows-User kommt rein als "username" und wird auf den Unix-User "username" (ID: 500, Hauptgruppen-ID: 30, weitere Gruppen: 32, 33, 35) gemappt. Soweit so gut. Nun soll er als Hauptgruppen-ID die 30 bekommen, bekommt aber die 500. Ergo kann er nicht auf Dateien der Gruppe 30 (geschweige denn 32, 33, 35) zugreifen.
=> Konfigurationsproblem??? Bug???

Hat vielleicht jemand spontan eine Idee zur Lösung des 2. Problems?

Ich bedanke mich vielmals! ;)
 
Oh hoppla, das habe ich ja total vergessen.... Sorry!

Hier ein Auszug der Config:

Code:
[global]
        workgroup = AD
        realm = AD.LOCAL
        netbios name = debiantest1
        server string = "DEBIANTEST Samba Server"
        security = ads
        encrypt passwords = yes
        password server = 192.168.1.1
        wins support = no
        domain master = no
        local master = no
        preferred master = no
        os level = 0
        log level = 3
        log file = /var/log/samba/%m
        max log size = 50
        printcap name = cups
        printing = cups
        winbind enum users = yes
        winbind enum groups = yes
        winbind separator = /
        winbind use default domain = yes
        winbind cache time = 5
        winbind trusted domains only = yes
        idmap uid = 10000-20000
        idmap gid = 10000-20000
        idmap config AD : backend = ad
        idmap config AD : range = 1000-9999
        idmap cache time = 5
        template shell = /bin/bash
        client use spnego = yes
        client ntlmv2 auth = yes
        create mask = 0755
        preserve case = yes
        getwd cache = yes
        obey pam restrictions = yes
        pam password change = yes
        smb passwd file = /etc/samba/smbpasswd
        update encrypted = no
        encrypt passwords = yes
        valid users = @AD/domänen-benutzer
        guest account = nobody
        template homedir = /home/users/%U
        restrict anonymous = 2

[testfs]
	  comment = TESTFS
	  path = /projekte/testfs
	  public = no
	  writable = yes
	  printable = no
	  valid users = @AD/group1, @AD/group2	# Domäne-Gruppen
	  #valid users = @group1, @group2	# Unix Gruppen
	  short preserve case = yes
	  create mode = 0770
	  directory mode = 0770
 
Warum setzt du die Rechte nicht direkt im Dateisystem mit Hilfe der ACLs im Dateisystem, dann kannst du den Kram mit den Rechten in der smb.conf ganz umgehen.
 
Hi Meischder,

also ich habe dein Posting jetzt ein paar mal gelesen, blicke aber immer noch nicht ganz durch ;)

Aber ich kenne grundsätzlich die Problematik ...

Punkt1 : Samba Version ... je höher desto besser .. wenn du dir die Release Notes von z.B. 3.4.5 anschaust wirst du sehen das gerade die Kombination winbind -> ADS immer wieder Probleme macht.

Punkt2 : Wie sieht es denn mit deinem ADS Server aus ? Hast du dort das Identity Managment für Unix installiert ? Hast du den Usern dort die Unix Attribute zugewiesen ?

Versuche bitte ein bisschen genauer zu erklären wo welche User sind und was du möchtest ...
Falls dem noch nicht so ist würde ich dir empfehlen "alle" User in der ADS zu halten

Hier mal meine smb.conf wie wir sie bei uns verwenden :

Code:
[global]                               
        workgroup = TEST
        realm = TEST.DOMAIN.DE

        encrypt passwords = true          
        security = ads                    
        allow trusted domains = no        
        passdb backend = tdbsam           

        auth methods = winbind

        local master = false
        os level = 20       
        domain master = false
        preferred master = false

        password server = *

        kerberos method = secrets and keytab
        dedicated keytab file = /etc/krb5.keytab

        wins server = 192.168.1.1
        wins proxy = Yes                                  

        name resolve order =  host bcast lmhosts

        idmap backend = ad
        idmap alloc backend = tdb
        idmap alloc config:range = 500001 - 599999

        idmap config TEST:default = yes
        idmap config TEST:backend = ad 
        idmap config TEST:range = 0 - 500000
        idmap config TEST:schema_mode = rfc2307

        winbind use default domain = yes

        winbind trusted domains only = No
        winbind nested groups = yes      
        winbind nss info = rfc2307

        winbind enum users = yes
        winbind enum groups = yes

        template shell = /bin/bash

        winbind separator = +

        winbind offline logon = Yes
        winbind refresh tickets = Yes

# Logging ########################################

        log file = /var/log/samba/log.%m
        max log size = 1000
        syslog = 0
        loglevel = 3

Und wie gesagt bei uns liegen alle User in der ADS, was auch bedeutet das das Mapping vollständig von dort kommt ... Die primäre Gruppe kann dort auch bei den Unix-Attributen angegeben werden.

Wenn du eine andere Form des Mappings umsetzten möchtest kannst du das über "idmap uid/gid" , "idmap alloc config:range" und "idmap config TEST:range" steuern ... interessant ist auch die Option "idmap backend" ... -> http://www.semibyte.de/dokuwiki/informatik:referenzen:samba:idmap_backend

aber das wird definitiv recht kompliziert ;)

So long

ThomasF
 
Ich muss die Unix-User beibehalten. Also brauche ich einen Weg über den ich den Windows-User auf einen vorhanden Unix-User (und zwar für jeden Mitarbeiter einen eigenen Unix-User) mappen kann. Dabei soll der gemappte User sowohl die Gruppen des Windows-Users (nicht zwingend notwendig!), als auch die des Unix-Users (zwingend notwendig!) haben. Primärgruppe soll die Primärgruppe des Unix-Users sein.

Hinzu kommt die Forderung, dass der User, sobald er sich in einer Samba-Freigabe befindet, auf die nur bestimmte Gruppen (ungleich der Primärgruppe) Zugriff haben, dort auch Dateien unter dieser bestimmten Gruppe anlegt.

Hinter dem Konstrukt steckt ein über Jahre gewachsener Fileserver, auf dem unzählige Dateien in unzähligen Verzeichnissen mit den unterschiedlichsten Dateirechten (basierend auf den Unix-Gruppen) liegen. Diese Dateirechte müssen auch so gesetzt bleiben, da sie von weiteren Anwendungen (Unix-Anwendungsentwicklung) genutzt werden. Das ganze ist also sehr komplex und lässt sich leider nicht auf die Schnelle erklären.

Mit der alten NT-Domäne klappte es wunderbar. Mit der 3.2.5er Samba Version lief auch alles prima bis ich dann wie gesagt von einem Client aus der alten NT-Domäne, bzw. von einem Unix-Client auf die Freigaben zugreifen wollte. Da kam ne saftige Fehlermeldung, wo normalerweise die Authentifizierungsaufforderungen erscheinen soll.

Ich werde idmap nochmal genauer anschauen, wobei ich da schon Stunden mit verbracht habe... :???:

Vielleicht hat ja jemand spontan noch eine Idee. Ich habe den Verdacht es ist nur eine kleine Config-Änderung.

Ich danke euch trotzdem schonmal!
 
Hat niemand einen spontanen Lösungsvorschlag in der Hand?
Ich habe die Tipps von oben leider ohne Erfolg getestet.
 
Hallo,

ich versuche mich auch gerade an der Integration von Samba als Fileserver in eine Active Directory Domäne Server 2008 R2.

Ich suche jetzt schon 2 Stunden nach einem gescheitem HowTo, allerdings finde ich immer nur Konfigurationen mit Server 2003.
Die Authentifizierung soll über Kerberos stattfinden und hier hat sich ja wohl etwas von 2003 auf 2008 mit Kerberos geändert.

Kann mir hierzu evtl. jemand einen guten Link aufzeigen? Ich kauf mir auch ein Buch, wenn's mich weiterbringt, möchte ja was dazulernen ;)

Gruß
TiTux

PS: Nutze Debian 5.05
 
Oben