Назад | Перейти на главную страницу

Ошибка самозаверяющего сертификата SSL на Samba 4

В настоящее время я готовлю переход на Samba 4 в своем офисе и сталкиваюсь с проблемами в моей лабораторной сети. Установленный Samba 4 AD DC на сервере Debian 9, пока он работает правильно, может присоединять машины к домену и получать доступ к внутреннему LDAP Samba из внешних инструментов, используя незашифрованный ldap: // [IP] на порту 389.

Теперь я пытаюсь настроить доступ LDAP через SSL / TLS, следуя инструкциям на этой странице:

https://wiki.samba.org/index.php/Configuring_LDAP_over_SSL_(LDAPS)_on_a_Samba_AD_DC

Wether я использую автоматически сгенерированные самозаверяющие сертификаты или создаю собственный. Он всегда терпит неудачу в момент проверки сертификата:

openssl verify -verbose cert.pem
[...]
error 18 at 0 depth lookup: self signed certificate
error cert.pem: verification failed

Я проверил закрытый ключ:

# openssl rsa -check -in key.pem 
RSA key ok
writing RSA key
-----BEGIN RSA PRIVATE KEY-----
[...]
-----END RSA PRIVATE KEY-----

Я попытался проверить, соответствуют ли закрытый ключ и сертификат:

# openssl x509 -noout -modulus -in cert.pem | openssl md5
   (stdin)= ce3ca7afcfe6a02ded1ed83938954940
# openssl rsa -noout -modulus -in key.pem | openssl md5
(stdin)= ce3ca7afcfe6a02ded1ed83938954940

Вот глобальный раздел моего файла smb.conf:

tls enabled  = yes
tls keyfile  = tls/key.pem
tls certfile = tls/cert.pem
tls cafile   = tls/ca.pem

Я также попытался переместить автоматически сгенерированные файлы из их исходного места назначения

/ вар / библиотека / самба / частный / tls /

к

/ и т.д. / самба / tls /

и

/ USR / местные / самба / частные / TLS /

Команда curl отвечает на это:

#curl ldaps://host.domain.fr
curl: (60) SSL certificate problem: unable to get local issuer certificate

Но я успешно подключился к

# curl --insecure ldaps://host.domain.fr

# curl --cacert /usr/local/samba/private/tls/ca.pem ldaps://host.domain.fr

Что ж, мы тепло приветствуем любые советы по настройке или поиску и устранению неисправностей!

Хорошо, я решил свою проблему.

Выполнили эту процедуру, чтобы создать самоподписанный сертификат для Samba 4

Перейдите в каталог автоматически сгенерированных сертификатов, удалите существующие и создайте свои собственные в том же каталоге. затем перезапустите самбу

# cd /usr/local/samba/private/tls ## if you compiled samba from sources
# cd /var/lib/samba/private/tls ## if you installed samba from repos

# rm *.pem
# openssl req -newkey rsa:2048 -keyout myKey.pem -nodes -x509 -days 365 -out myCert.pem

Добавьте это в свой /etc/samba/smb.conf

tls enabled  = yes
tls keyfile  = tls/myKey.pem
tls certfile = tls/myCert.pem
tls cafile   = 

Затем перезапустите Samba

Для успешного выполнения команды ldapsearch выполните Эта тема совет и добавить

TLS_REQCERT ALLOW

в ваш файл ldap.conf.

Одна вещь, которая заставляла меня ошибаться, заключалась в том, что

openssl verify myCert.pem

никогда не будет работать с моей конфигурацией (Debian 9.0 «Stretch» ​​- OpenSSL 1.1.0f). Я повторил попытку ввода ключей под OpenSSL 1.0.2 и работал нормально. Я не уверен, вызвано ли это ос или просто версией openssl ...