4. Exemplo de configuração
Bom, abaixo iremos apresentar um exemplo de configuração de replicação para o
OpenLDAP fazendo uso da estrutura Master x Slave. Consideraremos que já possuímos dois servidores configurados com o servidor OpenLDAP instalado e funcionando, assim apenas demonstraremos os parâmetros relacionados as replicações entre os servidores. A distribuição
Linux utilizada foi
Debian 5 e o OpenLDAP na versão 2.4.9.
4.1 Configuração Master x Slave
4.1.1 Configurando o servidor MASTER
Inicialmente o arquivo a ser alterado é o arquivo principal de configuração do OpenLDAP o
/etc/ldap/slapd.conf. Alterando o parâmetro
modulepath para
syncprov e inserindo as seguintes linhas logo abaixo da opção "index":
overlay syncprov
syncprov-checkpoint 100 10
syncprov-sessionlog 100
Devemos Inserir também junto a ACL responsável pelos atributos de senha, userPassword e shadowLastChange a seguinte linha:
by dn="cn=replicator,dc=dominio,dc=com,dc=br" read
Assim inserimos a permissão para o usuário replicador, ao qual deve ser criado anteriormente para ler os campos de senha dos usuários, pois sem o acesso a leitura ele não conseguiria efetuar a replicação completa da base.
Neste ponto foi reiniciado o servidor com o comando:
# /etc/init.d/slapd restart
4.1.2 Configurando o servidor SLAVE
Iniciaremos a configuração do servidor slave editando o arquivo de configuração
/etc/ldap/slapd.conf e removendo o caractere "#" antes da linha "rootdn", e logo após inserimos as seguintes linhas abaixo de "index":
syncrepl rid=1
provider=ldap:// servidor1.dominio.com.br:389
type=refreshAndPersist
retry="5 + 5 +"
interval=00:00:00:10
searchbase="dc=dominio,dc=com,dc=br"
filter="(objectClass=*)"
scope=sub
attrs="*"
schemachecking=on 41
bindmethod=simple
binddn="cn=replicator,dc=dominio,dc=com,dc=br"
credentials=senha_do_usuario_replicator
Após os procedimentos acima citados, paramos o servidor OpenLDAP, removemos os diretórios e novamente iniciamos o servidor. Para isso utilizamos as seguintes linhas de comando:
# /etc/init.d/slapd stop
# rm /var/lib/ldap/*
# /etc/init.d/slapd start
Assim temos agora os dois servidores configurados, sendo que os dados do servidor1.dominio.com.br estão sendo replicados para o servidor2.dominio.com.br, porém o mesmo não tem autoridade sobre os dados fazendo com que para alterarmos qualquer informação na base, teremos que fazer isso no servidor1.dominio.com.br e essa atualização será replicada de imediato para o servidor slave.
Artigo originalmente publicado em: