我最近刚刚安装了一个 Nagios 实现,我正在尝试让 LDAP 身份验证在 Red Hat 上为 httpd 工作。(下面的 Apache 配置的 nagios.conf,当然已经过清理)
ScriptAlias /nagios/cgi-bin "/usr/local/nagios/sbin"
<Directory "/usr/local/nagios/sbin">
#SSLRequireSSL
Options ExecCGI
AllowOverride none
AuthType Basic
AuthName "LDAP Authentication"
AuthLDAPURL "ldap://my.domain.controller:389/OU=Users,DC=my,DC=domain,DC=controller?sAMAccountName?sub?(objectClass=user)" NONE
AuthzLDAPAuthoritative off
AuthLDAPBindDN "CN=NagiosAdmin,DC=my,DC=domain,DC=controller"
AuthLDAPBindPassword "myPassword"
require valid-user
</Directory>
Alias /nagios "/usr/local/nagios/share"
<Directory /usr/local/nagios/share>
#SSLRequireSSL
Options None
AllowOverride none
AuthBasicProvider ldap
AuthType Basic
AuthName "LDAP Authentication"
AuthzLDAPAuthoritative off
AuthLDAPURL "ldap://my.domain.controller:389/OU=Users,DC=my,DC=domain,DC=controller?sAMAccountName?sub?(objectClass=user)" NONE
AuthLDAPBindDN "CN=NagiosAdmin,DC=my,DC=domain,DC=controller"
AuthLDAPBindPassword "myPassword"
require valid-user
</Directory>
现在,初始身份验证有效,因此当您第一次点击该页面时,您可以正常登录。但是,当您去其他任何地方时,它会提示您进行身份验证,失败(要求重新提示),并给出以下错误消息:
[Mon Oct 21 14:46:23 2013] [error] [client 172.28.9.30] access to /nagios/cgi-bin/statusmap.cgi failed, reason: verification of user id '<myuseraccount>' not configured, referer: http://<nagiosserver>/nagios/side.php
我几乎可以肯定它是一个简单的标志或选项,但我找不到它,而且我没有很多使用 Apache 的经验。任何帮助或帮助将不胜感激。
愚蠢的 apache 配置,我漏掉了一行:
在下面
我忽略了放入
那很烦人。希望未来任何其他人都可以从中受益。