我有一台运行RHEL 6.5且httpd 2.2的服务器,我对网页进行了LDAP身份验证,完全符合以下条件:
<Directory /var/www/html/restricted>
AuthType Basic
AuthName "Restricted files"
AuthBasicProvider file ldap
AuthUserFile /etc/httpd/local_users
AuthGroupFile /etc/httpd/local_groups
AuthLDAPBindDN CN=bind,OU=Generic-Logon,OU=Generic,DC=example,DC=com
AuthLDAPBindPassword lamepassword
AuthLDAPURL ldaps://ldap.example.com:636/dc=example,dc=com?sAMAccountName?sub
AuthzLDAPAuthoritative off
require group restricted
require ldap-group CN=ug-employees,OU=Dept,OU=Dept-Groups,DC=example,DC=com
require ldap-group CN=ug-others,OU=Dept,OU=Dept-Groups,DC=example,DC=com
</Directory>
用户在访问受限制的页面时遇到了500多个错误,一些Google搜索告诉我从httpd 2.2到2.4可以解决这个问题。我安装了一台带有RHEL 7和httpd 2.4的新服务器,并且完全相同。但现在......
[~]$ sudo apachectl configtest
AH00526: Syntax error on line 426 of /etc/httpd/conf/httpd.conf:
Unknown Authn provider: ldap
这里发生了什么? RHEL 7手册说,LDAP身份验证已经发布到httpd 2.4和AFAICT,我按照apache.org的说明进行了操作。 FWIW,我不能在yum中安装任何LDAP模块或安装在我的/ etc / httpd / modules中。
思考?我知道我错过了一些小事。
谢谢!
答案 0 :(得分:8)
根据Redhat的支持网站,你应该运行
# subscription-manager repos --enable rhel-7-server-optional-rpms
# yum install mod_ldap -y
答案 1 :(得分:2)
使用Centos 7或RHEL 7:sudo yum install -y mod_ldap 这应该可以解决问题。
答案 2 :(得分:2)
These instructions on the Red Hat website说明了如何启用相应的yum
存储库来公开mod_ldap
,以及其可能依赖的或在您的情况下可能有用的其他包。
另外,简而言之,这是我必须要做的才能让它在RHEL 7上运行:
---- Displays which repos are enabled/disabled
$ sudo yum repolist all
---- Enable these two repos to get mod_ldap and other things...
$ sudo yum-config-manager --enable rhel-server-rhscl-7-rpms
$ sudo yum-config-manager --enable rhel-7-server-optional-rpms
答案 3 :(得分:0)
如果是Oracle Linux 7,这应该可以帮助您:
yum --enablerepo = ol7_optional_latest安装mod_ldap
答案 4 :(得分:0)
如果您使用的是 Debian / Ubuntu 并因为遇到错误而来到此页面:
<块引用>未知身份验证提供程序:ldap
那么这个命令应该修复它(如果不是以 root 身份运行,则以 sudo
为前缀):
a2enmod authnz_ldap