Решаю задачу создания автоматического создания пользователей в домене Active Directory.
Имею Samba 4.19.1 установленную из исходников на Centos 7 и настроенную как контроллер домена по этой инструкции https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controller
Могу создать пользователя из кода (Python и библиотека ldap3), но чтобы задать пароль требуется использовать шифрование (LDAPS), Samba поддерживает это по умолчанию и при запуске даже генерирует сертификаты в /usr/local/samba/private/tls/
Однако когда я пытаюсь подключиться к контроллеру домена командой
openssl s_client -showcerts -connect localhost:636
то получаю ошибку
139681239324560:error:140790E5:SSL procedures:ssl23_write:ssl confirmation error:s23_lib.c:177: peer certificate unavailable
в логах Samba вижу следующее
[2024/04/19 12:37:30.259588, 0] ../../source4/lib/tls/tls_tstream.c:1383(_tstream_tls_accept_send)
_tstream_tls_accept_send: TLS ../../source4/lib/tls/tls_tstream.c:1383 - The request is invalid.. Failed to set default priorities
Исключение бросает вот этот метод в Tls_tstream.c:1383
ret = gnutls_set_default_priority(tlss->tls_session);
if (ret != GNUTLS_E_SUCCESS) {
DBG_ERR("TLS %s - %s. Failed to set default priorities\n",
__location__, gnutls_strerror(ret));
tevent_req_error(req, EINVAL);
return tevent_req_post(req, ev);
}
Перед сборкой Samba я установил зависимости, среди которых были
gnutls, compat-gnutls37-devel, compat-gnutls37-utils
При конфигурировании GnuTLS успешно прошел проверку
Checking for GnuTLS >= 3.7.2 : yes
Конфиг Samba (smb.conf)
[global]
dns forwarder = 8.8.8.8
netbios name = DC1
realm = SAMDOM.COM
server role = active directory domain controller
workgroup = SAMDOM
idmap_ldb:use rfc2307 = yes
[sysvol]
path = /usr/local/samba/var/locks/sysvol
read only = No
[netlogon]
path = /usr/local/samba/var/locks/sysvol/samdom.com/scripts
read only = No
Насколько я понимаю, gnutls не может установить приоритет протоколов шифрования по умолчанию, как можно это исправить?
p.s. Samba с тем же конфигом, но установленная на Ubuntu из репозитория работает без нареканий, но на предприятии Centos 7 в репозитории которого вариант Samba без поддержки AD DC, поэтому собираю из исходников.