Muitas empresas utilizam um servidor Active Directory/LDAP para manter o acesso e as senhas dos usuários centralizados.
Isso facilita a administração dos gerentes de TI e também a vida do usuário, que possue apenas uma única senha, que é utilizada para todos os tipos de autenticação dos sistemas em uma empresa.
Configurações no servidor Active Directory/LDAP
Verifique se existe algum grupo específico ao qual irá permitir acesso ao Bweb com autenticação LDAP, ou então crie um novo, por exemplo “G_TI” e também crie um usuário, por exemplo “bweb” e adicione a este grupo.
Para pegar o filtro LDAP correto, utilize o comando abaixo no powershell no servidor Active Directory/LDAP utilizando o grupo G_TI. O valor de “DistinguishedName” que será utilizado no filtro.
Get-ADGroup -Identity G_TI
DistinguishedName : CN=G_TI,OU=Grupos,DC=dominio,DC=local
GroupCategory : Security
GroupScope : Global
Name : G_TI
ObjectClass : group
ObjectGUID : edfb6f27-9b35-486e-8d75-aee5b67b8d1d
SamAccountName : G_TI
SID : S-1-5-21-2301264539-1335648919-2092242634-1163
Configurando o Lighttp
Edite o arquivo /opt/bweb/etc/httpd.conf, e insira as seguintes linhas, lembrando de susbtituir as informações de acordo com o seu domínio:
# Auth LDAP
auth.backend = "ldap"
auth.backend.ldap.hostname = "IP_SERVIDOR:PORTA"
auth.backend.ldap.base-dn = "DC=dominio,DC=local"
# Nesta linha que se inclui após o "memberOf=" o resultado do "DistinguishedName" obtido no servidor Active Directory/LDAP.
auth.backend.ldap.filter = "(&(objectClass=user)(sAMAccountName=$)(memberOf=CN=G_TI,OU=Grupos,DC=dominio,DC=local))"
# Caso a autenticação não funcionar pode ser algum erro no filtro. Então comente a linha anterior e descomente a linha abaixo.
#auth.backend.ldap.filter = "(&(objectClass=user)(sAMAccountName=$))"
# Preencher com o usuário e senha do usuário criado no servidor Active Directory/LDAP
auth.backend.ldap.bind-dn = "bweb"
auth.backend.ldap.bind-pw = "xRBIZwFGYmSVh4I29VzNXWNDrjJMpZ"
auth.require = ( "/" =>
(
"method" => "basic",
"realm" => "Password protected area",
"require" => "valid-user"
)
)
No mesmo arquivo, acrescente o módulo “mod_authn_ldap” nos componentes a serem carregados:
server.modules = ("mod_cgi", "mod_alias", "mod_setenv",
"mod_accesslog", "mod_auth", "mod_authn_ldap" )
Salve e saia.
Configuração BWeb
No menu de configuração do BWeb habilite a opção Security, para passar a exigir autenticação do Lighttp.
Reinicie o serviço do BWeb:
service bweb restart
Em caso de problemas, inicie o BWeb pelo script:
/opt/bweb/etc/starthttp
Referências
[1] https://redmine.lighttpd.net/projects/lighttpd/wiki/docs_modauth