目前有两个常用的 ldap 认证模块,分别是 mod_auth_ldap 和 auth_ldap,其中 auth_ldap 是 apache 默认安装的,在配置 require group 时使用 mod_auth_ldap 并没有配置成功。
官方网站地址:http://www.rudedog.org/auth_ldap/
可以在官方网站下载源代码后编译安装,也可以直接下载rpm包安装。rpm包的名称是auth_ldap。如果配置文件中包行指令ClearModuleList,就必须在ClearModuleList后添加AddModule auth_ldap.c指令。
LoadModule auth_ldap_module modules/mod_auth_ldap.so AddModule auth_ldap.c <Directory "/var/www/html/usage"> Options Indexes FollowSymLinks AllowOverride None order allow,deny allow from all AuthName "Web publishing" AuthType Basic AuthLDAPBindDN cn=Manager,dc=abc,dc=com AuthLDAPBindPassword shanghai123 AuthLDAPURL ldap://ldap.abc.com/dc=abc,dc=com require user pcnsh074 require group cn=webgroup,ou=ITgroups,dc=abc,dc=com </Directory>
AuthLDAPBindDN和AuthLDAPBindPassword是搜索LDAP时使用的DN和Password,如果不设置将使用匿名用户。AuthLDAPURL指定LDAP服务器的地址和BaseDN。在require user指令中,这里指定的用户名称是”uid”并不是”cn”。
在require group中,group DN应该写上完整路径,并且格式必须与 sun iplanet 兼容。
dn: cn=phxbasic,ou=webgroups,ou=wuerth-phoenix.cn,o=wuerth-phoenix.com objectClass: groupOfUniqueNames objectClass: top cn: phxbasic description: Phoenix Basic Developer Stuff #creatorsname: cn=Daniel Liao,ou=wp-cn,ou=wuerth-phoenix.cn,o=wuerth-phoenix.com uniquemember: cn=Daniel Liao,ou=wp-cn,ou=wuerth-phoenix.cn,o=wuerth-phoenix.com
creatorsname本来是要求的,但是无法添加,不使用这个属性也能使用。
mod_auth_ldap 是另外一个可以用于 ldap 认证的模块,但是我在实现 require group 时出错。
网站地址:http://www.muquit.com/muquit/software/mod_auth_ldap/mod_auth_ldap.html
LoadModule ldap_auth_module modules/mod_auth_ldap.so AddModule mod_auth_ldap.c LDAP_Server pshldap.cn.phoenix.wuerth.com LDAP_Port 389 Base_DN "o=wuerth-phoenix.com" UID_Attr uid Bind_DN cn=ldapauth,ou=wuerth-phoenix.cn,o=wuerth-phoenix.com Bind_Pass shanghai123 require user pcnsh074
配置文件和 auth_ldap 类似,特别应该注意的时 LoadModule 后为 ldap_auth 而不是 auth_ldap 应该特别注意拼写。
Comments
There are currently no comments
New Comment