linux下使用apache+svn+ssl配置安全版本控制平台
环境:
Red Hat Enterprise Linux Server release 6.3 (Santiago)_ 64
apache 2.4.4
subversion--1.7.5
openssl-1.0.1e
安装过程:
1,apache安装
# ./configure --prefix=/usr/local/apache --enable-so --enable-dav=shared --enable-dav-fs=shared --enable-dav-lock=shared --enable-ssl=shared
编译时出现错误
checking for APR... no
configure: error: APR not found . Please read the documentation解决办法:
1.下载所需软件包:
- wget http://archive.apache.org/dist/apr/apr-1.4.5.tar.gz
- wget http://archive.apache.org/dist/apr/apr-util-1.3.12.tar.gz
- wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.10/pcre-8.10.zip
2.编译安装:
- yum remove apr-util-devel apr apr-util-mysql apr-docs apr-devel apr-util apr-util-docs
具体步骤如下:
a:解决apr not found问题>>>>>>
- [root@xt test]# tar -zxf apr-1.4.5.tar.gz
- [root@xt test]# cd apr-1.4.5
- [root@xt apr-1.4.5]# ./configure --prefix=/usr/local/apr
- [root@xt apr-1.4.5]# make && make install
b:解决APR-util not found问题>>>>
- [root@xt test]# tar -zxf apr-util-1.3.12.tar.gz
- [root@xt test]# cd apr-util-1.3.12
- [root@xt apr-util-1.3.12]# ./configure --prefix=/usr/local/apr-util -with- apr=/usr/local/apr/bin/apr-1-config
- [root@xt apr-util-1.3.12]# make && make install
c:解决pcre问题>>>>>>>>>
- [root@xt test]#unzip -o pcre-8.10.zip
- [root@xt test]#cd pcre-8.10
- [root@xt pcre-8.10]#./configure --prefix=/usr/local/pcre
- [root@xt pcre-8.10]#make && make install
4.最后编译Apache时加上:
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util/ \
--with-pcre=/usr/local/pcre
再次编译:
# ./configure --prefix=/usr/local/apache --enable-so --enable-dav=shared --enable-dav-fs=shared --enable-dav-lock=shared --enable-ssl=shared --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --with-ssl=/usr/local/openssl
make
make install
如果这台apache不做其他使用,这个配置就已经足够
2,subversion安装
subversion-1.4.2]# ./autogen.sh #建议先执行此领命。
subversion-1.4.2]# ./configure --prefix=/usr/local/subversion/ --with-apxs=/usr/local/apache/bin/apxs --with-apr=/usr/local/apache/bin/apr-1-config --with-apr-util=/usr/local/apache/bin/apu-1-config --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-ssl --with-zlib --enable-maintainer-mode
subversion-1.4.2]# make
subversion-1.4.2]# make install
到此,如果没有出错,安装工作就已经完成了,下面进入配置阶段
1,apache的配置
正常安装下有如下文件 并在 /usr/local/apache/conf/httpd.conf中配置,并且保证没有注销如没配置则手动配置。
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule dav_lock_module modules/mod_dav_lock.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule ssl_module modules/mod_ssl.so
这几个module保证不是被注释的,另外找到
Include conf/extra/httpd-dav.conf
Include conf/extra/httpd-ssl.conf
这两行,去掉前面的注释。
编辑conf/extra/httpd-dav.conf,加入如下内容,其余内容可以全部删除
<Location /svn>
DAV svn
#SSLRequireSSL
SVNListParentPath on
SVNParentPath /opt/svn
AuthType Basic
AuthName "Subversion Repositories"
AuthUserFile /opt/svn/conf/passwd
AuthzSVNAccessFile /opt/svn/conf/authz
Require valid-user
</Location>
编辑完成后保存退出,由于http访问的方式密码传输是明文的,所以还需要配置ssl进行加密传输
接下来配置ssl,需要以下几个步骤:
第一步,创建key和request:
openssl req -new > new.cert.csr第二步,从key中删除passphrase(可选):
openssl rsa -in privkey.pem -out new.cert.key第三步,把request转换成signed sert:
openssl x509 -in new.cert.csr -out new.cert.cert -req -signkey new.cert.key -days 1825第四步,把cert和key文件拷贝到适当的位置:
cp new.cert.cert /usr/local/apache/conf/server.crt
cp new.cert.key /usr/local/apache/conf/server.key
注:如果你没有在第二步从key中把passphrase删除,那么每次你启动apache的时候你都要输入密码。这也就意味着如果你的服务器因为某些原因重新启动了,除非你在服务器旁手动敲入了密码,否则你的web服务器就不会启动。
到此,apache的配置就完成了,接下来对subversion来进行配置
2,subversion的配置
在/opt/svn/conf下创建authz文件,内容如下
[group]
test=abc[test:/]
@test=rw保存退出。
设置abc的密码
/usr/local/apache/bin/htpasswd –bc /opt/svn/conf/passwd abc 12345678
这样就会在/opt/svn下创建passwd文件,内容如下:
abc:gtnqpowogqB/Y
密码采用加密的方式。
创建test库:
/usr/local/subversion/bin/svnadmin create /data3/svn/test
Error:
1.Prce-8.00 安装问题 libtool: line 990: g++: command not found的解决
感觉是gcc没有编译完整,于是yum -y install gcc+ gcc-c++。。漫长的等待。完成后再次执行make命令错误消失。。
2..libs/pcrecpp.o:could not read symbols: Bad value
collect2: ld returned 1 exit status
make[1]: *** [libpcrecpp.la] 错误 1
make[1]: Leaving directory `/usr/app/pcre-8.00'
make: *** [all] 错误 2解决办法:./configure --disable-shared --with-pic 之后执行:make 没有错误
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:https://dhexx.cn/news/show-2.html
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网进行投诉反馈,一经查实,立即删除!