这个
      
      
        LDAP
      
      
        认证搞了我很久,也郁闷了很久,可能自己菜的原因吧,不过,终于成功了!原来也没有相像中那么复杂。这次重新做一次,把过程写下来,给大家参考学习。
      
    
    
    
      
               
      
      
        服务器平台
      
      
        centOS 5.1 
      
      
        ,部分包是
      
      
        yum install 
      
      
        安装,部分是源码安装,
      
      
        yum
      
      
        安装的是默认源的包,源码安装是
      
      
        2009
      
      
        年
      
      
        1
      
      
        月份最新的包。
      
    
    
    
      
               
      
      
        安装前的准备工作
      
      
         
      
    
    
    
      
        
        # mkdir ?p /data/packages
        
        //
      
      
        习惯性的把一些包放在一个位置
      
    
    
    
      
        
        # yum install openldap-devel zlib-devel expat-devel
        
        #
      
      
        为什么要装这些?因为我配置的时候没装这些,结果报错,或许你的系统已经安装了这些,但有些我已经安装但你没安装的,到时出错报错可以放狗找(
      
      
        http://g.cn
      
      
        ),相信很容易找到的!
      
    
    
    
      
        到官方下载
      
      
        subversion-1.5.5.tar.bz2
        
        httpd-2.2.11.tar.gz
      
    
    
    
      
        LDAP
      
      
        安装可以按照我
      
      
        BLOG
      
      
        上的教程
      
    
    
      
        
          http://hi.baidu.com/%B7%AC%C7%D1%B5%B0/blog/item/6d1e15514e5120888d543018.html
        
      
    
    
    
      
        
          
                  
          
        
      
      
        
          
            安装
          
        
      
      
        
          
            apache
          
        
      
    
    
    
      
        
        # cd /data/packages
      
    
    
    
      
        
        # tar zxvf httpd-2.2.11.tar.gz
      
    
    
    
      
        
        # cd httpd-2.2.11
      
    
    
    
      
        
        # ./configure --prefix=/usr/local/apache2 --enable-so --enable-mods-shared=all --enable-dav=share --enable-dav-fs --with-ldap --enable-ldap --enable-authnz-ldap
      
    
    
    
      
        
        # make
      
    
    
    
      
        
        # make install
      
    
    
    
      
               
      
      
        
          
            安装
          
        
      
      
        
          
            subversion
          
        
      
    
    
    
      
               
      
      
        安装
      
      
        subversion 
      
      
        前先安装
      
      
        zlib 
      
      
        ,之前安装低版本的
      
      
        SVN
      
      
        ,
      
      
        zlib 
      
      
        是用
      
      
        yum install 
      
      
        来安装的,但这个版本提示找不到
      
      
        zlib
      
      
        所以要源码安装,再指定路径!
      
    
    
    
      
        
        # cd /data/packages
      
    
    
    
      
        
        # tar zxvf zlib-1.2.3.tar.gz
      
    
    
    
      
        
        # cd zlib-1.2.3
      
    
    
    
      
        
        # ./configure ?prefix=/usr/local/zlib
      
    
    
    
      
        
        # make && make install
      
    
    
    
      
        
        OK 
      
      
        开始安装
      
      
        SVN
      
    
    
    
      
        # cd /data/packages
      
    
    
    
      
        
        # tar jxvf subversion-1.5.5.tar.bz2
      
    
    
    
      
        
        # cd /subversion-1.5.5
      
    
    
    
      
        
        # ./configure --with-apxs=/usr/local/apache2/bin/apxs --prefix=/usr/local/subversion --with-apr=/usr/local/apache2 --with-apr-util=/usr/local/apache2 --with-ssl --with-zlib=/usr/local/zlib --enable-maintainer-mode
        
        //
      
      
        配置完后会提示没有安装
      
    
    
    
      
        
        # make
      
    
    
    
      
        
        # make install
      
    
    
    
      
               
      
      
        如果
      
      
        make install 
      
      
        有以下错误,关闭
      
      
        SELINUX 
      
      
        既可
      
    
    
    
      
        /data/packages/subversion-1.5.5/subversion/svnversion/.libs/lt-svnversion: error while loading shared libraries: /data/packages/subversion-1.5.5/subversion/libsvn_subr/.libs/libsvn_subr-1.so.0: cannot restore segment prot after reloc: Permission denied
      
    
    
    
      
        make: *** [revision-install] Error 127
      
    
    
    
      
               
      
      
        执行
      
    
    
    
      
        
        # vi /etc/selinux/config 
      
    
    
    
      
               
      
      
        找到
      
      
        SELINUX=enforcing 
      
      
        改为
      
      
         SELINUX=disabled
      
    
    
    
      
        
        # vi /etc/sysconfig/selinux
      
    
    
    
      
               
      
      
        如果找到
      
      
        SELINUX=enforcing 
      
      
        也改为
      
      
         SELINUX=disabled
      
    
    
    
      
               
      
    
    
    
      
        
        # /usr/local/subversion/bin/svnadmin create /data/svn
        
      
      
        创建
      
      
        svn
      
      
        资料库
      
    
    
    
      
               
      
      
        当你发现
      
      
         /data/svn 
      
      
        下多了几个文件,就证明成功了!
      
    
    
    
      
        
        # /usr/local/subversion/bin/svn import /data/packages file:///data/svn -m “Rookie-HAO”
      
    
    
    
      
        
        /data/packages 
      
      
        的位置是填你要导入的目录
      
    
    
    
      
        
        -m 
      
      
        后面
      
      
         “ ” 
      
      
        里的是说明文字
      
    
    
    
      
        
        
          
            SVN
          
        
      
      
        
          
            通过
          
        
      
      
        
          
            apache
          
        
      
      
        
          
            访问、
          
        
      
      
        
          
            SVN
          
        
      
      
        
          
            通过
          
        
      
      
        
          
            LDAP
          
        
      
      
        
          
            认证
          
        
      
    
    
    
      
               
      
      
        最重要的环节到了!
      
    
    
    
      
        
        # vi /usr/local/apache2/conf/httpd.conf
        
        //
      
      
        修改
      
      
        apache 
      
      
        的配置文件以达到标题的效果
      
    
    
    
      
               
      
      
        添加以下内容到
      
      
        httpd.conf 
      
      
        中
      
    
    
    
      
        <Location /svn>
        
        DAV svn                    //
        
          开启
        
        sbuversion
        
        SVNPath /data/svn       //
        
          库的目录
        
        
        AuthType Basic           //
        
          使用基本的密码认证
        
        
        AuthBasicProvider ldap
        
        AuthzLDAPAuthoritative off
        
        AuthLDAPURL 
        
          ldap://10.44.100.150:389/ou=People,dc=rookie,dc=com?uid
        
          //LDAP
        
          访问目录
        
        
        AuthName "ok"        //
        
          网站说明文字
        
        
        Require valid-user       //
        
          允许合法用户登录
        
        
        
          </Location>
        
      
    
    
    
    
      
        我这种是比较简单的
      
      
        SVN
      
      
        单版本库通过
      
      
        LDAP
      
      
        认证的方法,具体哪一行有哪些作用大家可以到
      
      
        apache 
      
      
        的官方查看!
      
    
    
    
      
        # /usr/local/apache2/bin/apachectl start 
      
      
        开启
      
      
        apache
      
    
    
    
      
        然后在其它的内网的机主打开浏览器,地址输入
      
    
    
      
        
          http://10.44.100.150/svn
        
      
    
    
      
         
      
    
    
      
        就可以使用在
      
      
        ldap 
      
      
        中创建的用户登录
      
      
        svn
      
      
        了!
      
    
    
    
      
        登录失败的话注意
      
      
        AuthLDAPURL 
      
      
        有没有写错,我的服务器上的
      
      
        ldap
      
      
        新建了
      
      
        ou=People
      
      
        的!这一行不能完全按照我写!
      
    
    
    
      
        教程中哪里有错误或有问题可以在我的
      
      
        BLOG
      
      
        中留言!谢谢
      
    
  


 
					 
					