这个
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
中留言!谢谢