我正在尝试针对Active Directory启用Nagios Web GUI(https://localhost/nagios)的LDAPS身份验证。我之前用LDAP设置它没有太多麻烦,但是LDAPS很头疼。 我认为我的证书是有效的,因为Active Directory中的事件查看器显示了我认为成功的凭据验证。 在我的浏览器中,为AD输入用户名和密码后,它会旋转一段时间并最终到达内部服务器错误页面。 我的日志都没有给我任何有用的信息。
这是我到目前为止所做的:
ldap.conf - 添加了以下行:
HOST“主机名”
636号港口
TLS_CACERT /etc/httpd/conf.d/rootcert.pem
从来没有TLS_REQCERT
(仅供参考,rootcert.pem是通过获取根CA颁发的证书并转换为pem格式创建的):
openssl x509 -inform der -in rootcert.cer -out rootcert.pem
这是我的nagios.conf。编辑[方括号]中的内容不包括我的真实信息:
ScriptAlias / nagios / cgi-bin“/ usr / local / nagios / sbin”
< Directory“/ usr / local / nagios / sbin”>
SSLRequireSSL
选项ExecCGI
AllowOverride无 订单允许,否认
允许所有人 AuthBasicProvider ldap
AuthType Basic
AuthzLDAPAuthoritative on AuthLDAPGroupAttribute成员
AuthLDAPGroupAttributeIsDN关闭 AuthName“Active Directory登录1”
AuthLDAPURL“ldaps:// [myActiveDirServerName]:636 / DC = [dc1],DC = [dc2],DC = [dc3],DC = [dc4]?sAMAccountName?sub?(objectClass = *)”NONE > AuthLDAPBindDN“CN = nagiosadmin,OU = [ou1],OU = [ou2],OU = [ou3],DC = [dc1],DC = [dc2],DC = [dc3],dc = [dc4]”
AuthLDAPBindPassword [passwd]
需要有效用户
< /目录>Alias / nagios“/ usr / local / nagios / share”
< Directory“/ usr / local / nagios / share”>
SSLRequireSSL
选项ExecCGI
AllowOverride无 订单允许,否认
允许所有人 AuthBasicProvider ldap
AuthType Basic
AuthzLDAPAuthoritative on AuthLDAPGroupAttribute成员
AuthLDAPGroupAttributeIsDN关闭 AuthName“Active Directory登录2”
AuthLDAPURL“ldaps:// [myActiveDirServerName]:636 / DC = [dc1],DC = [dc2],DC = [dc3],DC = [dc4]?sAMAccountName?sub?(objectClass = *)”NONE > AuthLDAPBindDN“CN = nagiosadmin,OU = [ou1],OU = [ou2],OU = [ou3],DC = [dc1],DC = [dc2],DC = [dc3],dc = [dc4]”
AuthLDAPBindPassword [passwd]
需要有效用户
< /目录>
您可以提供的任何帮助将不胜感激!
答案 0 :(得分:0)
解决。
从636到3269的交换端口。
还使用了不同的证书。我的主机位于与AD服务器不同的网络区域,因此我需要将PEM转换的中间证书和根证书链接在一起:
openssl x509 -inform der -in rootcert.cer -out rootcert.pem
openssl x509 -inform der -in intermediateCert.cer -out intermediateCert.pem
cat intermediateCert.pem rootcert.pem> chainedCert.pem
(然后在ldap.conf中使用chainedCert.pem。你还需要更改该证书的权限)