私はMIT KerberosとOpenLDAPバックエンドを備えた2つのDebianサーバーを実行します。 TLSを適用し、複製を暗号化したいと思います。だから証明書を生成して追加しました...
dn: cn=config
changetype: modify
add: olcTLSCACertificateFile
olcTLSCACertificateFile: /etc/ssl/ca.crt
-
add: olcTLSCertificateFile
olcTLSCertificateFile: /etc/ssl/server1.crt
-
add: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/ssl/server1.key
…そしてこれを行いますSTARTTLS
dn: olcDatabase={1}mdb,cn=config
changeType: modify
add: olcSecurity
olcSecurity: tls=1
わずかな調整の後、私はこれがIPC()でも動作ldapi
し、すべてのデーモンがルート証明書にアクセスする必要があることを発見しました。例えば/etc/nslcd.conf
:
ssl start_tls
tls_cacertfile /etc/ssl/ca.crt
そしてもちろん/etc/ldap/ldap.conf
:
TLS_CACERT /etc/ssl/ca.crt
Kerberosを除いて。彼にルート証明書の場所を知らせるオプションが見つかりません。私はそれが次の中にあることを望みます/etc/krb5.conf
:
[dbmodules]
LDAP = {
db_library = kldap
ldap_kdc_dn = cn=kdc,ou=daemons,dc=example,dc=com
ldap_kadmind_dn = cn=adm,ou=daemons,dc=example,dc=com
ldap_service_password_file = /etc/krb5kdc/service.keyfile
ldap_servers = ldapi:///
ldap_conns_per_server = 5
}
したがって、次のように文句を言います。
kadmind: connection with LDAP-server »ldapi:///«
as »cn=adm,ou=daemons,dc=example,dc=com« can not be established:
Confidentiality required
それでは、Kerberosにルート証明書を見つける場所をどのように伝えることができますか?