st0627 发表于 2018-11-27 07:56:20

Linux下部署apache+svn+ldap验证

Linux下部署apache+svn+ldap验证

一:相关版本
subversion在安装的时候,要求相关软件的版本一致,而不是说软件版本最新就最好.下面是我安装的相关版本.
下载地址:http://httpd.apache.org/download.cgi
httpd-2.2.17.tar.gz
下载地址:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=260&expandFolder=74
subversion-deps-1.6.15.tar.gz
subversion-1.6.15.tar.gz

二:安装准备
#cd /opt
# tar zxvf httpd-2.2.17.tar.gz
# tar zxvf subversion-deps-1.6.15.tar.gz
# tar zxvf subversion-1.6.15.tar.gz
到这一步,如果是32位的linux系统,可以直接安装httpd了,如果地64位的linux,需要进行以下操作,进行重新编译:
1、删除安装目录下的configure文件,在我的环境中是httpd-2.2.6/configure
2、删除“httpd-2.2.17/srclib/apr-util/configure”
3、通过以下命令重建编译文件(以下命令在http-2.2.17/目录下运行)
#./buildconf
通过以上重建编译文件,现在可以拥有64位的apr-util了

三:httpd的安装.
# cd /subversion/httpd-2.2.17
# ./configure --prefix=/opt/apache --enable-so --enable-dav --enable-dav-fs --enable-ldap --enable-authnz-ldap --with-included-apr --with-ldap --with-ldap-include=/usr/lib64/evolution-openldap/include --with-ldap-lib=/usr/lib64 --with-apr=/opt/software_install/httpd-2.2.17/srclib/apr/apr-1-config --with-apr-util=/opt/software_install/httpd-2.2.17/srclib/apr-util/apu-1-config
注:编译过程中必须要使用openldap的一些库文件,本例中使用的是系统自带的openldap版本
# make
# make install
# cd /opt/apache/bin/
# ./apachectl start   (该命令可能会出现类似 Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName的错误,不用管它,服务实际上已经启动了 停止和重启也一样)
这个时候,打开浏览器,输入http://localhost/,如果浏览器出现It Works,则说明httpd安装成功了

四:subversion的安装
# cd /opt/subversion-1.6.15
# ./configure --with-apxs=/opt/apache/bin/apxs --with-apr=/opt/apache/ --with-apr-util=/opt/apache/ --prefix=/opt /subversion --with-ssl --with-zlib=/opt/subversion-1.6.15/zlib --enable-maintianer-mode
# make && make install
( 如果出现错误:make: *** Error 1
解决方法 在neon/src/Makefie 的 CFLAGS中增加 -fPIC选项 一定要加到最前面,例如 CFLAGS = -fPIC -g -O2
重新make)

五:建立和导入版本库
# cd /opt/subversion/bin/
# mkdir /opt/ccxesvn
# ./svnadmin create /opt/ccxesvn/test
# ls /opt/ccxesvn/test/
//如果ls /opt/ccxesvn /test/ 出现了下面的内容,就说明subversion安装成功了.
conf   dav   db   format   hooks   locks   README.txt
导入版本库
# mkdir /opt/project /opt/project/server /opt/project/client /opt/project/test
# ./svn import /opt/project/ file:///opt/ccxesvn/test/ -m "初始化SVN目录"
//命令成功执行,会有如下的提示信息:
新增         /opt/project/server
/opt/project/client
/opt/project/test
提交后的修订版为 1。

六:修改目录权限
# cd /opt
# chown -R apache:apache ccxesvn
# chmod –R 757 ccxesvn


七:修改Apache的配置文件
1):打开apache/conf/httpd.conf文件
2):修改httpd.conf文件,在文件的最后添加下面几行

DAV svn
SVNParentPath /opt/ccxesvn/

3):保存退出
现在访问SVN不需要权限,即任何匿名用户都可以访问、修改、提交,下面进行ldap验证的配置

同上在httpd.conf文件最后加入如下内容:

DAV svn
SVNParentPath /opt/ccxesvn/
# authentication
AuthType Basic
AuthName "ccxe.svn"
AuthBasicProvider ldap
AuthzLDAPAuthoritative off
AuthLDAPBindDN "uid=zmpostfix,cn=appaccts,cn=zimbra"
AuthLDAPBindPassword 3skemZGlp0
AuthLDAPURL "ldap://119.254.64.5:389/dc=ccxe,dc=com,dc=cn?uid?sub?(objectClass=*)"
require valid-user

#下面这段配置可以不要
# authorization
#AuthLDAPGroupAttributeIsDN on
#Require ldap-group cn=SVNUsersou=Groupdc=xliu-homedc=org
#AuthLDAPGroupAttribute memberUid

保存退出,重启apache即可
这样访问svn就开始使用ldap进行验证了



页: [1]
查看完整版本: Linux下部署apache+svn+ldap验证