测试环境: CentOS 5.1
已经安装了apache2.2.3
ls /etc/httpd/modules
mod_authnz_ldap.so和mod_ldap.so均已安装
more /etc/httpd/conf/httpd.conf
LoadModule ldap_module modules/mod_ldap.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
mod_authnz_ldap.so和mod_ldap.so均已加载
开始测试
创建一个测试目录 /var/www/html/ldap, 放一个文件test.htm
vi /etc/httpd/conf.d/ldap.conf
内容
Alias /ldap /var/www/html/ldap
<Directory /var/www/html/ldap/>
Order Deny,Allow
Allow from all
</Directory>
重启httpd, 访问http://127.0.0.1/ldap/test.htm可以访问
下面修改/etc/httpd/conf.d/ldap.conf,内容为:
Alias /ldap /var/www/html/ldap
<Directory /var/www/html/ldap/>
Order deny,allow
Deny from All
AuthName "Company.com Intranet"
AuthType Basic
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLDAPUrl ldap://192.168.100.10/ou=People,dc=example,dc=com?uid
Require valid-user
Satisfy any
</Directory>
AuthLDAPUrl一定要配置正确
重启httpd, 访问http://127.0.0.1/ldap/test.htm需要认证,输入testuser1/testuser1认证成功。
以上这个例子比较简单,任何合法用户都能通过认证,如果要指定只有某些用户或组可以认证通过,情参考 http://www.linux.com/feature/120050