MAL - Memória Auxiliar do Lutieri

sexta-feira, agosto 10, 2007

Apache 2.2.4 + LDAP = Mudanças [updated]

Recentemente instalei o Apache 2.2.4 no FreeBSD para rodar o Nagios. Porém algumas modificações ocorreram nas versões mais recentes. Já falo mais sobre isso.

A instalação foi tranqüila:

cd /usr/ports/www/apache22
make WITH_LDAP_MODULES=yes install clean

Preciso de suporte a LDAP pois uso autenticação no AD do Windows.
Pra minha surpresa tive alguns erros na autenticação. Alterei o nível do log para degub.

vi /usr/local/etc/apache22/httpd.conf
LogLevel debug
:x

/usr/local/etc/rc.d/apache22 restart ; tail -f /var/log/httpd-error.log

Acompanhando o log de erro, com o comando acima, encontrei essas mensagens ao tentar me autenticar no navegador:
Internal error: pcfg_openfile() called with NULL filename
[client x.x.x.x] (9)Bad file descriptor: Could not open password file: (null)
Googlin' encontrei uma GRANDE quantidade de pessoas com o mesmo problema e encontrei a solução que seria inserir isso no arquivo .htaccess ou na configuração de diretório, enfim no mesmo lugar onde está a configuração da autenticação LDAP:

AuthBasicProvider ldap
AuthUserFile /dev/null

Finalmente não apareceram mais erros no logo, however, a opção "require valid-user" não funciona mais. Encontrei a solução na documentação do apache http://httpd.apache.org/docs/2.2/mod/mod_authnz_ldap.html.en#reqvaliduser.

Para funcionar a diretiva "require valid-user" a opção "AuthzLDAPAuthoritative" precisa ser setada para off.

Outra coisa que mudou foi a opção "require group". Agora se está usando ldap e quer se fazer consulta por grupos deve substituir por "require ldap-group".

Resumindo, meu arquivo de autenticação contra o AD que era assim:

<directory /usr/local/www/nagios/cgi-bin>
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all


AuthType Basic
AuthName "Acesso ao Nagios"

AuthLDAPUrl "ldap://ad.xyz.com.br/ou=sede,dc=xyz,DC=com,DC=br?sAMAccountname?sub?(objectClass=*)"

AuthLDAPBindDN algumuser@xyzcom.br
AuthLDAPBindPassword *******

require group CN=TI,OU=Groups,OU=SEDE,DC=xyz,DC=com,DC=br

</directory>



Acabou ficando assim:

<directory /usr/local/www/nagios/cgi-bin>
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all

AuthBasicProvider ldap
AuthUserFile /dev/null

AuthType Basic
AuthName "Acesso ao Nagios"

AuthLDAPUrl "ldap://ad.xyz.com.br/ou=sede,dc=xyz,DC=com,DC=br?sAMAccountname?sub?(objectClass=*)"

AuthLDAPBindDN algumuser@xyzcom.br
AuthLDAPBindPassword *******

require ldap-group CN=TI,OU=Groups,OU=SEDE,DC=xyz,DC=com,DC=br
</directory>


Fonte: Google :-D
http://www.mail-archive.com/debian-apache@lists.debian.org/msg08106.html


----

Depois de mais uma instalação agora no FreeBSD 7.0 tive o seguinte warning quando iniciava o apache:

[warn] (2)No such file or directory: Failed to enable the 'httpready' Accept Filter

Numa busca rápida encontrei a solução no VOL. Carregar o módulo accf_http ou usando o comando kldload:

kldload accf_http


ou pra sempre, inserindo no arquivo /boot/loader.conf a seguinte linha:

accf_http_load="YES"


Fonte:
http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=5277&pagina=3

Marcadores: , , ,

3 Comentários:

Postar um comentário

<< Home



Chat with Lutieri G. B.

Subscribe in a reader