Após a migração para o diretório de configuração slapd.d
, o arquivo slapd.conf
é convertido em alguns arquivos LDIF.
Para cada banco de dados que foi configurado em slapd.conf
, agora há um novo arquivo ldif em slapd.d/cn=config/
. O nome desses arquivos consiste em olcDatabase={Number}NameOfDatabase.ldif
.
Abaixo está a estrutura de slapd.d
no meu caso (no Debian):
slapd.d/
├── cn=config
│ ├── cn=module{0}.ldif
│ ├── cn=schema
│ │ └── cn={0}core.ldif
│ ├── cn=schema.ldif
│ ├── olcDatabase={0}config.ldif
│ ├── olcDatabase={1}bdb.ldif
│ └── olcDatabase={-1}frontend.ldif
└── cn=config.ldif
O mais importante são os arquivos olcDatabase={1}bdb.ldif
e olcDatabase={0}config.ldif
que incluem a configuração de dois back-ends do banco de dados: bdb
- minha base primária do ldap e banco de dados config
virtual usado para modificação dinâmica de slapd
config.
Cada banco de dados tem sua própria senha e usuário root que estão configurados no arquivo ldif. O usuário root e a senha são definidos por esses atributos:
olcRootDN: cn=Manager,cn=config
olcRootPW:: c2VjcmV0
O primeiro método de alterar a senha é apenas alterar o valor de olcRootPW
. Nesse exemplo, a senha é definida para a palavra secret
e é codificada por base64.
Podemos alterar a linha olcRootPW
para:
olcRootPW: plaintextpassword
olcRootPW:: base64decodedtext (in base64 method there is double ':' after attribute name)
olcRootPW: {SSHA}8IAb01fZAtNBH5F0n4x5t2WkmQbhZnWm (SSHA encoded password generated by 'slappaswd' command)
Então, se você editar seu arquivo de banco de dados, isso é feito (não tenho certeza se slapd
pode estar em execução ao editar arquivos ldif - é mais seguro pará-lo) ... mas há outra opção ...; )
Se você tiver habilitado o banco de dados config
, você pode se vincular a ele usando qualquer cliente ldap (eu recomendo Apache Directory Studio o que é realmente ótimo cliente / editor ldap). É claro que, para vincular a esse banco de dados, você deve saber olcRootDN
e olcRootPW
configurado para esse back-end. Nesse caso, o BaseDN deve ser definido como cn=config
. Depois de conectar o nome de usuário e a senha, os valores editáveis são normais em olcDatabase={1}bdb,cn=config
.