Univention Bugzilla – Bug 25393
Re-Join eines Samba 4 Servers
Last modified: 2012-12-12 21:08:01 CET
Ich habe einen Samba 4 Server mit den gleichen Daten nochmal installiert. Anschließend sehe ich die folgende Meldung in der Logdatei (log.samba): [2011/12/09 15:09:47, 1] ../source4/auth/gensec/gensec_gssapi.c:612(gensec_gssapi_update) GSS server Update(krb5)(1) Update failed: Miscellaneous failure (see text): Failed to find SLAVE493$@DEADLOCK49.LOCAL(kvno 2) in keytab FILE:/etc/krb5.keytab (arcfour-hmac-md5) [2011/12/09 15:09:48, 1] ../source4/auth/gensec/gensec_gssapi.c:612(gensec_gssapi_update) GSS server Update(krb5)(1) Update failed: Miscellaneous failure (see text): Failed to find SLAVE493$@DEADLOCK49.LOCAL(kvno 2) in keytab FILE:/etc/krb5.keytab (arcfour-hmac-md5)
Das konnte ich bisher nicht nachstellen, dafür aber: ================================================================ Adding TXT record "_kerberos ARUCS3I8.QA" to zone arucs3i8.qa... done ERR: (Attribute or value exists) "SINGLE-VALUE attribute operatingSystem on CN=SLAVE12,OU=Domain Controllers,DC=arucs3i8,DC=qa specified more than once" on DN CN=slave12,OU=Domain Controllers,DC=ARUCS3I8,DC=QA Modified 0 records with 1 failures Starting Samba 4 daemon: samba. Adding dns-slave12 account removing sAMAccountName=dns-slave12 Waiting for RID pool Waiting for RID pool Waiting for RID pool Waiting for RID pool ================================================================ Man kann auf dem frisch neu gejointen Slave einfach keine Benutzer anlegen (Fehlermeldung scheint auf den erstem Blick nicht korrekt zu usein): ================================================================ root@slave12:~# samba-tool user add foo1 univention ERROR(ldb): Failed to add user 'foo1': - ../ldb_tdb/ldb_index.c:1189: Failed to re-index objectSid in CN=foo1,CN=Users,DC=arucs3i8,DC=qa - ../ldb_tdb/ldb_index.c:1121: unique index violation on objectSid in CN=foo1,CN=Users,DC=arucs3i8,DC=qa ================================================================ Wenn man im Joinscript --keep-existing entfernt, dann tritt dieses Problem nicht auf. Allerdings kann der Master nach diesem Reinstall den Slave nicht mehr per DRS-Replikation erreichen, Fehlermeldung von showrepl auf dem Master ist WERR_GENERAL_FAILURE und der slave zeigt keine outgoing connection. Im log.samba des Slave steht mehrfach: ==================================================================== [2012/07/03 17:31:36, 1] ../source4/auth/gensec/gensec_gssapi.c:612(gensec_gssapi_update) GSS server Update(krb5)(1) Update failed: Miscellaneous failure (see text): Decrypt integrity check failed ==================================================================== Die Sitation löst sich durch restart von samba auf dem Master.
Comment 1 bezieht sich auf ucs3.0-1 unter UCS 3.1-0/beta4 konnte ich das noch nicht nachstellen. Statt dessen konnte ich unter UCS 3.1-0 jetzt die Fehlermeldung aus der original Bug Description nachstellen. Anscheinend hat die gensec-Kommunikation zwischen Master und Slave noch nicht die aktuelle kvno, ein samba4 restart auf dem Master (!) behebt das Problem. Auf dem Master konnte ich im Fehlerzustand wiederholt auch eine Fehlfunktion von samba-tool drs showrepl beobachten: root@master10:~# samba-tool drs showrepl Default-First-Site-Name\MASTER10 DSA Options: 0x00000001 DSA object GUID: 574e4b59-3adf-48ad-8ba7-cd769c141ca4 DSA invocationId: 4f2c553c-e823-4ed2-8120-6048c84b569e ==== INBOUND NEIGHBORS ==== ERROR(runtime): DsReplicaGetInfo of type 0 failed - (8442, 'WERR_DS_DRA_INTERNAL_ERROR') Suboptimaler workaround ist aktuell, auf allen anderen DCs samba4 neu zu starten.
1. Für das in Comment 1 beschriebene "RID Pool"-Problem, das mit der Samba4-Version aus ucs3.0-2 auftritt, gibt es jetzt Bug 28371. 2. Für das in Comment 1 beschriebene "unique index violation on objectSid" beim Anlegen von Benutzern nach Re-Join, das mit der Samba4-Version aus ucs3.0-2 auftritt, gibt es jetzt Bug 28373. 3. Die in Comment 1 beschriebene Meldung "GSS server Update(krb5)(1) Update failed: Miscellaneous failure (see text): Decrypt integrity check failed" tritt nur mit der Samba4-Version aus ucs3.0-x auf, mit beta4 (UCS 3.1-0 interim-1) lässt sich das nicht nachstellen. Damit ist der Bug hier wieder ausschließlich der KVNO-Meldung gewidmet. Comment 2 gibt den aktuellen Stand wieder, wobei festzustellen war, dass die WERR_DS_DRA_INTERNAL_ERROR Meldung "samba-tool drs showrepl" anscheinend temporärer Natur ist.
Das Problem scheint zu sein, dass nach dem Join (per Re-Join oder per Re-Install) die alten Keys nicht mehr in /etc/krb5.keytab stehen (z.B. nicht die mit KVNO-1), weil von Samba4 eine neue angelegt wird. Die anderen DCs verwenden aber noch die alten Key Versionen (sie werden laut upstream Aussage 10 Stunden gecached - wo ist noch unklar). Bei einem Re-Join mit --keep-existing steigt die KVNO immer und man kann vorher ein Backup der alten krb5.keytab machen und die darin enthaltenen Keys per ktutil in die neue Keytab übernehmen. Dadurch tritt die Fehlermeldung as dem ersten Bugreport nicht mehr periodisch auf, sondern es erscheint nur kurz beim Starten eine Fehlermeldung zu einem temporären keytab File: ====================================================================== [2012/09/05 19:15:12, 0] ../source4/smbd/server.c:368(binary_smbd_main) samba version 4.0.0beta4 started. Copyright Andrew Tridgell and the Samba Team 1992-2012 [2012/09/05 19:15:12, 0] ../source4/smbd/server.c:470(binary_smbd_main) samba: using 'standard' process model [2012/09/05 19:15:12, 1] ../file_server/file_server.c:136(s3fs_task_init) Started file server smbd with config /var/lib/samba/private/smbd.tmp/fileserver.conf [2012/09/05 19:15:15, 1] ../source4/auth/gensec/gensec_gssapi.c:645(gensec_gssapi_update) GSS server Update(krb5)(1) Update failed: Miscellaneous failure (see text): Failed to find SLAVE12$@ARUCS3I8.QA(kvno 3) in keytab FILE:/tmp/tmp.XCKPUnCiHv (arcfour-hmac-md5) [2012/09/05 19:15:15, 1] ../source4/auth/gensec/gensec_gssapi.c:645(gensec_gssapi_update) GSS server Update(krb5)(1) Update failed: Miscellaneous failure (see text): Failed to find SLAVE12$@ARUCS3I8.QA(kvno 3) in keytab FILE:/tmp/tmp.XCKPUnCiHv (arcfour-hmac-md5) ====================================================================== Danach tritt dann auf dem Master die in Comment 2 beobachtete showrepl Fehlermeldung 'WERR_DS_DRA_INTERNAL_ERROR' auf, die mit folgender Logmeldung einhergeht: ====================================================================== [2012/09/05 20:10:37, 0] ../source4/dsdb/kcc/kcc_drs_replica_info.c:543(fill_neighbor_from_repsFrom) ../source4/dsdb/kcc/kcc_drs_replica_info.c:543: Failed to find DN for neighbor GUID f3a00c8f-8f3e-4a3e-a0a9-3bd2c1058c54 ====================================================================== Der hier fehlende DN bezieht sich auf das beim Join gelöschte alte NTDS-Objekt des DC Slave: root@slave12:~# host f3a00c8f-8f3e-4a3e-a0a9-3bd2c1058c54._msdcs f3a00c8f-8f3e-4a3e-a0a9-3bd2c1058c54._msdcs.arucs3i8.qa is an alias for slave12.arucs3i8.qa. slave12.arucs3i8.qa has address 10.200.8.12 Diese Fehlermeldung von showrepl lässt sich mer samba-tool drs kcc beheben. Danach zeigt showrepl die neuen NTDS objectGUIDS für den Slave an, z.B. ====================================================================== CN=Configuration,DC=arucs3i8,DC=qa Default-First-Site-Name\SLAVE12 via RPC DSA object GUID: 26baa2af-0d3f-45ff-b7b8-66e0d039a76d Last attempt @ NTTIME(0) was successful 0 consecutive failure(s). Last success @ NTTIME(0) ======================================================================
Der in Comment 4 beschriebene Workaround funktioniert aber nicht für das hier an diesem Bug behandelte allgemeinere Problem der Neuinstallation eines DCs under gleichem Namen (wo dann die alte keytab nicht zur Verfügung steht). Unter AD sollte das eigentlich gehen: http://technet.microsoft.com/en-us/library/cc785849%28v=ws.10%29.aspx
Warten auf Upstream.
Comment 5 wurde abgespalten als Bug 29083. In diesem Bug geht es also nur um den Re-Join per univention-join. Changelog ist angepasst.
OK, ein erneuter Join ist erfolgreich. Changelog: OK
UCS 3.1-0 has been released: http://forum.univention.de/viewtopic.php?f=54&t=2125 If this error occurs again, please use "Clone This Bug".