OpenLDAP cn=구성 데이터베이스 액세스가 차단되었습니다.

OpenLDAP cn=구성 데이터베이스 액세스가 차단되었습니다.

저는 Alpine과 함께 OpenLDAP 2.4.54를 사용합니다. 내 LDAP 구성은 다음과 같습니다.

$ sudo slapcat -n0
dn: olcDatabase={-1}frontend,cn=config
objectClass: olcDatabaseConfig
objectClass: olcFrontendConfig
olcDatabase: {-1}frontend
structuralObjectClass: olcDatabaseConfig
entryUUID: afb8286a-68e7-426d-8a9f-91f52935c4af
creatorsName: cn=config
createTimestamp: 20200807074746Z
entryCSN: 20200807074746.355242Z#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 20200807074746Z

dn: olcDatabase={0}config,cn=config
objectClass: olcDatabaseConfig
olcDatabase: {0}config
olcAccess: {0}to *  by * none
olcAddContentAcl: TRUE
olcLastMod: TRUE
olcMaxDerefDepth: 15
olcReadOnly: FALSE
olcRootDN: cn=config
olcSyncUseSubentry: FALSE
olcMonitoring: FALSE
structuralObjectClass: olcDatabaseConfig
entryUUID: 570fed11-408d-42a2-bf96-3e063cc8276e
creatorsName: cn=config
createTimestamp: 20200807074746Z
entryCSN: 20200807074746.355548Z#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 20200807074746Z

dn: olcDatabase={1}mdb,cn=config
objectClass: olcDatabaseConfig
objectClass: olcMdbConfig
olcDatabase: {1}mdb
olcDbDirectory: /var/lib/openldap/openldap-data
olcSuffix: dc=mydomain,dc=tld
olcRootDN: cn=admin,dc=mydomain,dc=tld
olcRootPW:: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
olcDbIndex: objectClass eq
structuralObjectClass: olcMdbConfig
entryUUID: 5e4e308d-3243-4dd0-aa45-d289eb5575ab
creatorsName: cn=config
createTimestamp: 20200807074746Z
entryCSN: 20200807074746.355490Z#000000#000#000000
modifiersName: cn=config
modifyTimestamp: 20200807074746Z

SASL 인증을 사용하여 cn=config 데이터베이스를 편집할 수 없습니다.

ldapmodify -Y EXTERNAL -H ldapi:/// -f anything.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=1000+uidNumber=1000,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "cn=config"
ldap_modify: Insufficient access (50)

루트 DNS를 사용하여 cn=config인증할 수 없습니다.

ldapmodify -H ldapi:/// -D cn=config -f anything.ldif
ldap_bind: Server is unwilling to perform (53)
    additional info: unauthenticated bind (DN with no password) disallowed

지금. 이 데이터베이스에 대한 권한이 없는 것으로 보이는데 어떻게 편집할 수 있습니까? gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth에 대한 액세스 권한을 부여 olcAccess하거나 olcRootPWfor를 추가할 수 있지만 cn=config이 작업을 수행할 수 있는 액세스 권한이 없습니다.

닭고기와 달걀의 문제를 어떻게 해결할 수 있나요?

답변1

이것이 좋은 습관인지는 잘 모르겠지만 수동으로 in을 추가하여 이 문제를 해결할 수 있습니다 olcRootPW./etc/openldap/slapd.d/cn=config/olcDatabase={0}config.ldif

관련 정보