PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Samba und Windows ActiveDirectory (AD)



pibi
27.04.11, 11:54
Hallo zusammen

Folgendes Szenario: Unser Samba-Server (Version 3.0.xx mit BS CentOS 4.8) authentisiert seine Windows-User gegen ein ActiveDirectory, welches auf einem "Windows Server 2003" laeuft. Funktioniert ganz gut.

Nun kommt die zentrale Informatikabteilung auf die Idee, die Windows-Maschine auf "Windows Server 2008" zu updaten. Seither funktioniert nichts mehr:-( Fehlermeldung beim Versuch, ein Share auf einem Windows-Arbeitsplatz einzubinden, sinngemaess "kein File am anderen Ende der Pipe" oder so aehnlich.

Laut Recherche im Internet ist unsere Samba-Version zu alt. Also habe ich alle Samba-Pakete deinstalliert und die aktuelle Version 3.5.8 heruntergeladen und selber compiliert mit dem normalen Prozedere:
./configure --with-ldap –with-ads
make
make install

Dies hat erstaunlich reibungslos geklappt. Sicherheitshalber habe ich den Sambaserver aus dem AD geloescht und mit
net ads join -U username wieder aufgenommen. Ein
wbinfo -uzeigt mit auch schoen alle User im AD an. Soweit, so gut.

Leider kann ich auf den Arbeitsplaetzen aber keinerlei Shares einbinden. Das Konfigurationsfile smb.conf habe ich "eins zu eins" uebernommen. Fehlermeldung: "Das Kennwort oder der Benutzername ist ungueltig.....".

Auch wenn ich zB. auf dem Sambaserver ein File mit
chown Domain\\username filename einem AD-User zuweisen will, kommt die Meldung "invalid user". Fuer mich sieht es so aus, als ob noch irgendeine Kleinigkeit fehlt und die im AD definierten User nicht an die lokalen User angekoppelt werden. Auch
getent passwdzeigt nur die lokalen User.

Interessant scheint mir auch das File log.winbindd-idmap zu sein

[2011/04/27 11:03:55.298676, 0] winbindd/idmap.c:201(smb_register_idmap_alloc)
idmap_alloc module ldap already registered!
[2011/04/27 11:03:55.298710, 0] winbindd/idmap.c:201(smb_register_idmap_alloc)
idmap_alloc module tdb already registered!
[2011/04/27 11:03:55.298722, 0] winbindd/idmap.c:149(smb_register_idmap)
Idmap module passdb already registered!
[2011/04/27 11:03:55.298733, 0] winbindd/idmap.c:149(smb_register_idmap)
Idmap module nss already registered!
[2011/04/27 11:03:55.298747, 1] winbindd/idmap_tdb.c:214(idmap_tdb_load_ranges)
idmap uid missing
[2011/04/27 11:03:55.298758, 0] winbindd/idmap_tdb.c:341(idmap_tdb_alloc_init)
idmap will be unable to map foreign SIDs: NT_STATUS_UNSUCCESSFUL
[2011/04/27 11:03:55.298769, 0] winbindd/idmap.c:599(idmap_alloc_init)
ERROR: Initialization failed for alloc backend, deferred!Allerdings weiss ich nicht, was hier faul ist.

Wie gesagt: Es hat funktioniert, ich habe nur das alte Samba geloescht und durch eine neuere selber compilierte Version ersetzt.

Frage:
Hat jemand schon etwas aehnliches gemacht? Kann jemand bestaetigen, dass Samba v.3.5.8 mit einer AD auf "Windows Server 2008" funktioniert? Wie kann ich den Fehler weiter einkreisen? Muss ich smb.conf anpassen?

Pit. (ratlos)

pibi
29.04.11, 21:00
Wie gesagt: Es hat funktioniert, ich habe nur das alte Samba geloescht und durch eine neuere selber compilierte Version ersetzt.Die Loesung ist eigentlich so trivial wie aergerlich: Die Library "libnss_winbind.so" wird zwar beim "make" erzeugt, aber beim "make install" nicht zu den anderen spezifischen Libs copiert. Und da sie anscheinend ohne jegliche Fehlermeldung einfach nicht verwendet wird, wenn sie nicht vorhanden ist, gehen alle nsswitch-Einstellungen betreffend "winbind" ins Leere.

Nachdem ich sie haendisch copiert und noch einen Symlink nach
"libnss_winbind.so.2" angelegt hatte, funktionierte auf einmal alles.

Gruss Pit.

PS: Ich will mich nicht mit fremden Federn schmuecken, ein Arbeitskollege hatte die zuendende Idee. Danke auch an ihn;-)