Como forçar (corretamente) o uso de SSL ou STARTTLS no OpenLDAP?

Como forçar (corretamente) o uso de SSL ou STARTTLS no OpenLDAP?

Consegui configurar com êxito meu OpenLDAP (que é uma variante do Apple Open Directory, mas isso não importa) para funcionar com SSL (ldaps na porta 636) e também com STARTTLS (na porta 389).

No entanto, ainda é possível que um cliente se conecte sem criptografia e estou tentando desabilitar isso. Admito que tenho um conhecimento muito limitado do OpenLDAP.

Com base nissoesta respostaeeste tutorial, eu tentei com

dn: olcDatabase={1}bdb,cn=config
changetype: modify
add: olcSecurity
olcSecurity: tls=1

Depois de aplicar isso ao meu ldap, as tentativas de conexão sem STARTTLS foram realmente rejeitadas. No entanto, não consegui mais autenticar, obtendo

LDAP: error code 50 - Insufficient Access Rights

O acesso anônimo funciona, mas quando testo a autenticação de um usuário, recebo o mesmo erro acima.

Depois de reverter minhas alterações (= excluir a entrada olcSecurity), tudo voltará ao normal.

Parece que minha alteração afetou a autorização de acesso, mas não entendo como isso está conectado e o que pode estar errado.

informação relacionada