Я пытаюсь добавить ssl-сертификаты в olcTLSCertificateFile
.
dn: cn=config
changetype: modify
replace: olcTLSCertificateFile
olcTLSCertificateFile: /etc/openldap/certs/file.crt
dn: cn=config
changetype: modify
replace: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/openldap/certs/file.key
Я создал эти сертификаты как Single Sign-on
, используя OpenSSL на CentOS7.
openssl req -new -x509 -nodes -out /etc/openldap/certs/file.crt -keyout /etc/openldap/certs/file.key -days 3650
Здесь это разрешения ACL, которые я добавил к using
#monitor.ldif
dn: olcDatabase={1}monitor,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external, cn=auth" read by dn.base="cn=Manager,dc=domain,dc=com" read by * none
. В конце я изменяю файл и получаю сообщение об ошибке:
ldapmodify -x -W -D "cn=Manager,dc=domain,dc=com" -H ldapi:/// -f certs.ldif
Enter LDAP Password:
modifying entry "cn=config"
ldap_modify: Недостаточный доступ (50)
Наконец-то я нашел решение. Просто изменил порядок ключей и файла crt, и все заработало.
dn: cn=config
changetype: modify
replace: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/openldap/certs/file.key
dn: cn=config
changetype: modify
replace: olcTLSCertificateFile
olcTLSCertificateFile: /etc/openldap/certs/file.crt