Интеграция OpenLDAP SSL - права доступа ACL для изменения cn = config - PullRequest
0 голосов
/ 06 июля 2018

Я пытаюсь добавить 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, которые я добавил к использованию

#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)

Ответы [ 2 ]

0 голосов
/ 16 июля 2018

Есть ли причина, по которой вы используете два отдельных запроса LDAP?

Я бы настоятельно рекомендовал использовать один запрос на изменение LDAP, поскольку одна операция записи LDAP является атомарной:

dn: cn=config
changetype: modify
replace: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/openldap/certs/file.key
-
replace: olcTLSCertificateFile
olcTLSCertificateFile: /etc/openldap/certs/file.crt
-
0 голосов
/ 06 июля 2018

Я наконец нашел решение. Просто изменил порядок файлов ключей и 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
...