web-dev-qa-db-ja.com

Samba4でのSSL自己署名証明書エラー

現在、オフィスでSamba 4への移行を準備しており、ラボネットワークで問題に直面しています。インストールされたSamba4 AD DC Debian 9サーバーは、これまでのところ正常に動作しており、マシンをドメインに参加させ、暗号化されていないldap:// [IP]を使用して外部ツールからSamba内部LDAPにアクセスできます。ポート389。

このページの指示に従って、SSL/TLSを介してLDAPアクセスを構成しようとしています。

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

自動生成された自己署名証明書を使用しているか、カスタム証明書を作成しているかにかかわらず、証明書を検証する時点で常に失敗します。

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/samba/private/tls /

/ etc/samba/tls /

そして

/ usr/local/samba/private/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

設定やトラブルシューティングのヒントに関するアドバイスは大歓迎です!

1
Sam C

OK、問題を解決しました。

この手順に従って、Samba4の自己署名証明書を作成しました

自動生成された証明書ディレクトリに移動し、既存の証明書を削除して、同じディレクトリに独自の証明書を作成します。その後、sambaを再起動します

# 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でキーを再試行しましたが、正常に動作しました。それがOSによるものなのか、opensslバージョンによるものなのかわかりません...

0
Sam C