天下网吧 >> 网吧天地 >> 网吧技术 >> 网吧软件 >> 正文

利用ldap进行windows ad账号认证

2010-1-21不详佚名

 最近从subversion网站看到apache在处理webdav的bug得到解决(apache 2.2.4),并且apache2.2.X的ldap支持比2.0.X更加稳定,所以决定尝试在windows XP(or 2003)下安装subversion+apache使之支持ldap认证.环境: windows XP(or 2003), Windows AD,

  问题是subversion官方网站上下载到的一个基于Apache 2.2.X的2进制包(svn-win32-1.4.4.zip), 在配合apache官方网站下载的2.2.4版本上出错, 加载ldap模块后访问版本库的时候会发生runtime error.尝试了几种组合后,找到能够正确编译安装subversion1.4.4+apache 2.2.4并使之支持ldap 和SSL的方法.

  1.下载apache 2.2.4的source code.(httpd-2.2.4-win32-src.zip)

  2.下载 apache 2.2.4的windows安装包.(with ssl或者no ssl的都可以).如果下载到with ssl的安装包, 是可以直接使用的,就是说,不用再自己编译apache了. 不过,其实后面编译subversion的时候,还是会编译apapche, 只是编以后的apapche用不着copy到安装目录去替换安装的文件.

  3.下载 subversion1.4.4的windows 安装包(svn-1.4.4-setup.exe)

  4.下载 subversion1.4.4的source code(subversion-1.4.4.zip).

  5.编译环境需要VC6.0以及安装windows 2003 SDK.否则就没有的windows下ldap的SDK.

  6,编译过程可以参考subversion source code 目录下的install文件.按照文件一步一步做就可以了.里面说得很清楚, 我这里再说就是废话了.

  7,编译好以后, 先安装前面下载的apache 和 subversion的安装包,安装过程在另一篇文章中已经有说明.安装完以后先不要去配置httpd.conf

  8, 编译好subversion以后, 找出同安装目录中bin目录 (如:c:\subversion\bin)下同名的文件覆盖到bin目录下.有一些apr的dll文件名字可能略有差异, 后面会多出一个-1(如, libapr.dll, 可能对应的是libapr-1.dll), 也别忘了要覆盖两个so文件.

  9,这个时候就可以先设定不带ldap的版本库访问, 如果能够正常工作, 那么系统就算成功了.

  10,设置ldap.

  设置ldap的时候, 最好能先用一些ldap查看工具浏览一下你的windows domain ,以确定baseDN等等这些基本信息.一个比较好的工具就是LDAPbrowser.用它可以浏览Domain里面的LDAP对象.

  11 httpd.conf的设置

  LoadModule ssl_module modules/mod_ssl.so

  LoadModule ldap_module modules/mod_ldap.so

  LoadModule authnz_ldap_module modules/mod_authnz_ldap.so

  LoadModule dav_svn_module "C:/Subversion/bin/mod_dav_svn.so"

  LoadModule authz_svn_module "C:/Subversion/bin/mod_authz_svn.so"

  …………

  Include C:/Apache/Apache22/conf/extra/httpd-ssl.conf

  …………

  LDAPSharedCacheSize 200000

  LDAPCacheEntries 1024

  LDAPCacheTTL 600

  LDAPOpCacheEntries 1024

  LDAPOpCacheTTL 600

  <Location /repos>

  DAV svn

  SVNParentPath c:/repos

  AuthBasicProvider ldap file

  AuthType Basic

  AuthzLDAPAuthoritative off

  AuthName "Subversion repository"

  AuthLDAPURL "ldap://yourIP:389/dc=nnn,dc=com?sAMAccountName?sub?(objectClass=*)" NONE

  AuthLDAPBindDN "someone@nnn.com"

  AuthLDAPBindPassword 111111

  AuthUserFile c:/repos/passwordfile

  AuthzSVNAccessFile c:/repos/authz

  # Satisfy Any

  Require valid-user

  SSLRequireSSL

  </Location>    下面逐个说明内容

  11.1

  LoadModule ssl_module m9 7 3 1 2 4 8 :

本文来源:不详 作者:佚名

声明
声明:本站所发表的文章、评论及图片仅代表作者本人观点,与本站立场无关。文章是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢。 Email:support@txwb.com,系统开号,技术支持,服务联系微信:_WX_1_本站所有有注明来源为天下网吧或天下网吧论坛的原创作品,各位转载时请注明来源链接!
天下网吧·网吧天下
  • 本周热门
  • 本月热门
  • 阅读排行