Created attachment 19399 [details] examples.md Шаги ==== 1. Развернуть Samba DC с BIND9_DLZ DNS (ALT Server 11.0 x86_64 minimal) и реплику к нему. 2. Ввести клиентов с помощью команды вида: # system-auth write ad "SAMBA.TESTDOMAIN" "client" "SAMBA" "Administrator" "Pa##word" --winbind Фактический результат ===================== Часто (~3/4 случаев), но не всегда, в выводе `system-auth` выводится ошибка. Вид ошибки: (1) (stdout) kinit: Client 'CLIENT$@SAMBA.TESTDOMAIN' not found in Kerberos database while getting initial credentials или (может быть как для `ldap/dc.samba.testdomain`, так и `ldap/dc2.samba.testdomain`): (2) (stderr) gensec_gse_client_prepare_ccache: Kinit for CLIENT$@samba.testdomain to access ldap/dc2.samba.testdomain failed: Client not found in Kerberos database: NT_STATUS_LOGON_FAILURE При этом, когда ошибка (2) (stderr), часто всё равно есть вывод: > (stderr) Successfully registered hostname with DNS и выполнение `system-auth` завершается успешно, несмотря на ошибки kinit. Ожидаемый результат =================== Нет ошибок. Успешная регистрация hostname в DNS. Дополнительно ============= Воспроизводится только в связке bind9_dlz + winbind. С internal dns + sssd, internal dns + winbind и bind9_dlz + sssd такой проблемы не наблюдалось. В p11 воспроизводился только (1) (stdout) вид ошибки - возможно, что-то поменялось в p11+387440.10 / sisyphus. Подробные примеры см. в прикреплённом файле `examples.md`: * Пример 1 (p11+387440.10 / sisyphus): (2) gensec dc2 , success * Пример 2 (p11+387440.10 / sisyphus): (2) gensec dc , success * Пример 3 (p11+387440.10 / sisyphus): (2) gensec dc2 + (1) kinit, fail * Пример 4 (p11 ): (1) kinit, fail Воспроизводимость ================= Воспроизводится на виртуальных машинах: [sisyphus] alterator-auth-0.48-alt1.x86_64 samba-4.21.7-alt4.x86_64 [p11+387440.10] alterator-auth-0.48-alt1.x86_64 samba-4.21.7-alt4.x86_64 На виртуальных машинах p11 ошибка в целом воспроизводится, но поведение отличается - см. выше в разделе Дополнительно. [p11] alterator-auth-0.45-alt1.x86_64 samba-4.20.8-alt2.x86_64
Данное поведение вполне возможно связано с неполнотой и скриптовой природой system-auth. Причина в синхпонизации и несогласованности данных на разных КД в момент сразу после join'а. Возможно, в кешах плагина bind_dlz.
Наблюдаю аналогичное поведение и с SSSD, т. е. проблема не специфична для Winbind. [p11] samba-4.21.7-alt4 alterator-auth-0.48-alt1.x86_64 [p11+394751] samba-4.21.9-alt1 alterator-auth-0.48-alt1.x86_64