Autenticação LDAP com apache2
Bem, precisei configurar autenticação usando mod_auth_ldap, aqui vai o procedimento.
Primeiro precisamos garantir que os módulos necessários sejam carregados na inicialização do apache2; no SLES9 devemos modificar /etc/sysconfig/apache2 adicionando “ldap” e “auth_ldap” à variável APACHE_MODULES. Esses módulos já vêm embutidos no apache2, então não precisamos instalá-los.
Como estamos usando SSL, vamos precisar do certificado da CA que assina o certificado do servidor LDAP, e também é preciso configurar duas variáveis: LDAPTrustedCAType, que especifica o tipo de certificado (BASE64_FILE serve na maioria das vezes; a outra opção seria DER_FILE) e LDAPTrustedCA, que aponta para o arquivo do certificado.
Criei um arquivo chamado “ldapcert.conf” em /etc/apache2/conf.d/ configurando-as; este é o conteúdo:
LDAPTrustedCAType BASE64_FILE
LDAPTrustedCA /etc/ssl/certs/infra.ldap.pemAgora devemos configurar o requisito de autenticação para as páginas desejadas; normalmente isso vai em um arquivo .htaccess, este é o conteúdo:
AuthName "My WebApp Auth"
AuthType Basic
AuthLDAPURL "ldaps://server1 server2/ou=people,dc=my,dc=comain,dc=com?uid"
require valid-userNo nosso caso, temos dois servidores de diretório por redundância; eles devem ficar entre ldaps:// e / separados por espaços; se você usar apenas um, ficaria algo como ldaps://server1/ou=people,dc=my,dc=comain,dc=com?uid.
Caso você use usuário/senha para fazer bind no diretório, deve usar “AuthLDAPBindDN” e “AuthLDAPBindPassword”; não consegui testar isso, então é só uma nota informativa.
Bem, estamos quase lá, agora precisamos reiniciar o apache; no sles: rcapache2 restart.
Nos logs devemos encontrar estas linhas:
LDAP: Built with OpenLDAP LDAP SDK <- ldap modules loaded successfully
LDAP: SSL support available <- CA cert found and read successfullyIsso é tudo…
Editar este post no GitHub · achou um erro? Pull requests são bem-vindos.