Eu tenho um servidor OpenLDAP no CentOS 7.8 e estou tentando carregar a sobreposição ppolicy. Estou tentando carregar no módulo com este comando:
ldapmodify -Y EXTERNAL -H ldapi:/// -f ppolicy_load.ldif
e recebo este erro:
add olcModuleLoad:
ppolicy
modifying entry "cn=module{0},cn=config"
ldap_modify: Type or value exists (20)
additional info: modify/add: olcModuleLoad: value #0 already exists
O conteúdo de ppolicy.ldif:
dn: cn=module{0},cn=config
changetype: modify
add: olcModuleLoad
olcModuleLoad: ppolicy
cn=module{0},cn=config.ldif conteúdo:
dn: cn=module{0}
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/lib64/openldap
olcModuleLoad: {0}back_bdb
olcModuleLoad: {1}syncprov
informação adicional:
ldapsearch de cn=module{0},cn=config produz o seguinte:
# module{0}, config
dn: cn=module{0},cn=config
objectClass: olcModuleList
cn: module{0}
olcModulePath: /usr/lib64/openldap
olcModuleLoad: {0}back_bdb
olcModuleLoad: {1}syncprov
olcModuleLoad: {2}ppolicy
O esquema ppolicy foi carregado. Infelizmente, também apliquei a sobreposição ppolicy
dn: olcOverlay=ppolicy,olcDatabase={2}hdb,cn=config
objectClass: olcOverlayConfig
objectClass: olcPPolicyConfig
olcOverLay: ppolicy
olcPPolicyDefault: cn=default,ou=policies,dc=mydomain,dc=com
e agora, slapcat -n 0 produz o seguinte erro:
5ede54b5 UNKNOWN attributeDescription "OLCPPOLICYDEFAULT" inserted.
5ede54b5 config error processing olcOverlay={1}ppolicy,olcDatabase={2}hdb,cn=config:
slapcat: bad configuration file!
Suponho que isso seja devido ao módulo não estar carregado corretamente e agora ter um problema.
Alguém pode dar uma orientação de como fazer isso funcionar? Configurei isso em servidores de teste derivados do meu servidor ldap principal sem problemas.
Obrigado.
A solução para esse problema foi importar o backup do banco de dados de configuração que eu havia feito antes de iniciar o trabalho no ppolicy:
O problema aqui parece ter sido que a entrada:
não tinha os metadados de criação que todas as outras entradas têm. Aqui está a seção relevante do slapcat do banco de dados de configuração antes de começar a trabalhar na aplicação do ppolicy
aqui está a mesma parte de um dump que tirei logo após a restauração
e assim, depois de restaurar o banco de dados de configuração, consegui prosseguir sem problemas com a configuração do ppolicy. Naturalmente eu testei isso em um clone do meu servidor LDAP (yay ESX).
Eu suponho que eu poderia estar fora da base, mas já que todos os problemas parecem estar centrados em cn=module{0},cn=config e agora está corrigido... Eu vou com isso.