LDAP 하위 트리에 객체를 생성하기 위해 익명 액세스를 허용하는 방법은 무엇입니까?

LDAP 하위 트리에 객체를 생성하기 위해 익명 액세스를 허용하는 방법은 무엇입니까?

PGP 키로 LDAP를 채우는 데 문제가 있습니다. PGP 키 서버 구조에 대해 LDAP(중요한 경우 OpenLDAP)를 설정했습니다.여기에 설명된 대로지금까지 잘 작동했습니다.

이제 다음과 같이 gpg 명령을 사용하여 일부 키를 LDAP에 보내고 싶습니다.

gpg --keyserver ldap://ldap.example.com --send-keys 1234CAFE

하지만 이건 실패했어

Strong(er) LDAP authentication required

LDAP(로그 수준 디버그로 실행) 출력

fd=12 ACCEPT from IP=n.n.n.n:57480 (IP=0.0.0.0:389)
op=0 SRCH base="" scope=0 deref=0 filter="(objectClass=*)"
op=0 SRCH attr=namingContexts
op=0 SEARCH RESULT tag=101 err=0 nentries=1 text=
op=1 SRCH base="cn=pgpServerInfo,dc=example,dc=com" scope=0 deref=0 filter="(objectClass=*)"
op=1 SRCH attr=pgpBaseKeySpaceDN pgpVersion pgpSoftware
op=1 SEARCH RESULT tag=101 err=0 nentries=1 text=
op=2 MOD dn="pgpCertID=9BB4C6C315EA172A,ou=GnuPG Keys,dc=example,dc=com"
op=2 MOD attr=pgpDisabled pgpKeyID pgpKeyType pgpUserID pgpKeyCreateTime pgpSignerID pgpRevoked pgpSubKeyID pgpKeySize pgpKeyExpireTime pgpCertID objectClass pgpKey
op=2 RESULT tag=103 err=8 text=modifications require authentication
op=3 UNBIND
fd=12 closed

"수정하려면 인증이 필요합니다"라는 메시지에서 gpg가 LDAP 서버에 대해 인증되지 않아 키를 보낼 수 없다는 것을 알고 익명 사용자로 키를 추가하려고 시도했지만 거부되었습니다.

gpg를 인증하는 방법을 찾지 못했기 때문에 다음 acl을 추가하여 익명 쓰기 액세스를 허용해 보았습니다.

olcAccess: {0}to dn.subtree="ou=GnuPG Keys,dc=example,dc=com"
  by * write

하지만 별 차이가 없는 것 같습니다. 익명 사용자가 아래 개체를 생성하도록 허용하면 안 되나요?GnuP 키?

내가 뭘 잘못했나요?

답변1

by * write익명 업데이트를 허용하기에는 충분하지 않습니다. 이는 다음을 추가하여 명시적으로 허용해야 합니다.

# Allow any connection to update the PGP keys 
# (including removing them!) 
# This is only needed if the anonymous
# updates from localhost are desired.
dn: cn=config
add: olcAllows
olcAllows: update_anon

관련 정보