Samba 4上的SSL自签名证书错误

我目前正准备在我的办公室迁移到Samba 4,并面临我实验室networking中的问题。 在Debian 9服务器上安装Samba 4 AD DC,到目前为止,它可以正常工作,可以将机器join域,并使用端口389上的未encryption的ldap:// [IP]从外部工具访问Samba内部LDAP。

我正在尝试按照以下页面说明通过SSL / TLSconfigurationLDAP访问:

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

无论我使用自动生成的自签名证书或创build一个自定义的证书它总是在validation证书的点失败:

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 

我也尝试将自动生成的文件从原始目的地移动

在/ var / lib中/桑巴/私营/ TLS /

的/ etc /桑巴/ 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 

那么,关于configuration或故障排除提示的任何build议,都热烈欢迎!

好的,我解决了我的问题。

按照此过程为Samba 4创build自签名证书

转到自动生成的证书目录,删除现有的目录,并创build您的拥有者到同一目录。 然后重新启动桑巴

 # 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命令,请遵循此主题build议并添加

 TLS_REQCERT ALLOW 

到你的ldap.conf文件。

有一件事情让我失望了

 openssl verify myCert.pem 

将永远不会工作在我的configuration(Debian 9.0“Stretch” – OpenSSL 1.1.0f)我重试我的密钥在OpenSSL 1.0.2下工作得很好。 我不知道,如果这是由操作系统或只是openssl版本引起的…