`

CentOS 部署Subversion + Apache版本控制服务器

 
阅读更多
  • 安装前提
  • 安装步骤
  • 配置subversion

一、安装前提

 

1.关闭防火墙

# service iptables stop

# chkconfig iptables off

# service ip6tables stop

# chkconfig ip6tables off

 

2.关闭SElinux

# perl -i -p -e 's/=enforcinig/=disabled/g' /etc/selinux/config

 

重启系统

 

 

二、安装步骤

 

/***

apache 2.2  -> openssl 0.9.8 -> subversion 1.6

apache 2.4  -> openssl 1.0.0 -> subversion 1.7/8

***/

 

1.安装相应软件包

# yum install zlib*

# yum install openssl* 

# yum install dev*

# yum install pcre*

  

2.查看openssl版本

# openssl version
OpenSSL 1.0.0-fips 29 Mar 2010

 

3.安装apache

确保本机rpm安装的apache已被移除

http://mirror.bit.edu.cn/apache/httpd/下载apache源码包

http://apr.apache.org/download.cgi下载apr、apr-util源码包

# tar -zxvf httpd-2.4.7.tar.gz

# tar -zxvf apr-1.5.0.tar.gz

# tar -zxvf apr-util-1.5.3.tar.gz

# mv apr-1.5.0 httpd-2.4.7/srclib/apr
# mv apr-util-1.5.3 httpd-2.4.7/srclib/apr-util

# cd httpd-2.4.7

# ./configure --prefix=/usr/local/apache  --enable-mods-shared=most  --with-mpm=worker  --with-apr=/usr/local/apr/bin/apr-1-config  --with-apr-util=/usr/local/apr-util/bin/apu-1-config  --enable-so --enable-ssl --enable-http  --enable-dav  --enable-mime-magic --enable-expires  --enable-cache --enable-file-cache --enable-cache-disk  --enable-info --enable-log-forensic  --enable-suexec --enable-cgi --enable-deflate  --enable-vhost-alias --enable-rewrite  --enable-maintainer-mode

# make

# make install

 

4.安装subversion

http://subversion.apache.org/download/下载subversion源码包

# tar -zxvf subversion-1.7.14.tar.gz

# cd subversion-1.7.14

# ./get-deps.sh

# cd neon/

# ./configure

# make

# make install

# cd ..

# ./configure  --prefix=/usr/local/svn  --with-apr=/usr/local/apr/bin/apr-1-config  --with-apr-util=/usr/local/apr-util/bin/apu-1-config  --with-apxs=/usr/local/apache/bin/apxs  --with-apache-libexecdir=/usr/local/apache/modules/   --enable-shared  --enable-static  --with-ssl  --without-berkeley-db  --with-neon=/usr/local/neon/bin/neon-config

# make

# make install

 

 

三、配置subversion

 

1.添加至系统命令

# cp /usr/local/svn/lib/* /usr/lib/

# cp /usr/local/svn/bin/* /usr/bin/

 

2.编辑httpd.conf

去除注释

Include conf/extra/httpd-dav.conf

Include conf/extra/httpd-ssl.conf

添加两行

LoadModule dav_svn_module modules/mod_dav_svn.so

LoadModule authz_svn_module modules/mod_authz_svn.so

 

3.配置apache

在httpd.conf增加

<Location />
DAV svn
SVNParentPath /svnroot
SVNListParentPath On
AuthzSVNAccessFile /svnroot/acl.conf
AuthType Basic
AuthName "Subversion"
AuthzForceUsernameCase Lower
AuthUserFile /svnroot/auth.conf
Require valid-user
SSLRequireSSL#若增加此行只支持https
</Location>

 

4.创建证书

# cd /usr/local/apache/conf

创建证书 

# openssl genrsa -des3 -out ca.key 1024

# openssl req -new -x509 -days 365 -key ca.key -out ca.crt

# openssl genrsa -des3 -out server.key 4096

# openssl req -new -key server.key -out server.csr

# openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out server.crt

重启apache时不需要密码

# cp server.key server.key.org

# openssl rsa -in server.key.org -out server.key

# chmod 400 server.key

客户端证书

# openssl genrsa -out client.key 1024

# openssl req -new -out client.csr -key client.key

# openssl x509 -req -in client.csr -out client.crt -signkey client.key -CA ca.crt -CAkey ca.key -CAcreateserial -days 3650

# openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.p12

 

# cp ca.crt /svnroot/

# cp client.p12 /svnroot/

 

5.创建权限控制文件

# /usr/local/apache/bin/htpasswd -cm /svnroot/svn-auth-conf yumeng #第一次创建使用-cm参数 后续均使用-m即可

# vim /svnroot/acl.conf

增加

[groups]
admin = yumeng

[/]
@admin = rw

 

6.启动apache

# /usr/local/apache/bin/apachectl -t

# /usr/local/apache/bin/apachectl start

 

 

分享到:
评论

相关推荐

    Centos下Subversion 服务器安装配置

    配置Apache服务器以支持Subversion。编辑Apache的配置文件`/etc/httpd/conf/httpd.conf`,确保以下两行未被注释(即去掉行首的#): ```bash LoadModule dav_module modules/mod_dav.so LoadModule dav_svn_module ...

    centos 7 安装Apache和svnadmin

    Apache HTTP Server是世界上最流行的Web服务器软件,而Subversion(SVN)则是一个版本控制系统,用于跟踪和控制文件和目录的变更。`svnadmin`是Subversion的一部分,它提供了对Subversion仓库的管理功能。在持续集成...

    linux+svn+apache安装配置部署

    根据提供的文件信息,我们可以将整个过程分为两个主要部分:第一部分是关于如何在Linux系统上...这样的服务器不仅可以提供版本控制服务,还可以通过Web界面方便地管理和操作SVN仓库,极大地提高了开发团队的工作效率。

    Centos+Jenkins+Maven+SVN的搭建.pdf

    总结起来,这个环境集合了CentOS操作系统、Jenkins持续集成服务器、Tomcat应用服务器、Maven构建工具和Subversion版本控制。这样的组合使得开发者能够自动化地处理代码构建、测试和部署,提高软件开发的效率和质量。...

    SVN + Apache 成功安装部署

    SVN(Subversion)是一种广泛使用的版本控制系统,用于管理软件项目的源代码和其他文件。Apache是世界上最流行的Web服务器软件,它可以与SVN结合,提供通过Web访问版本库的功能。本篇文章将详细阐述如何成功安装和...

    CentOS4 环境apache+svn完全配置(实际配置日记)

    通过上述步骤,你可以在CentOS4环境下成功地配置Apache与Subversion,实现远程团队协作的需求。在实际部署过程中,还需要根据具体情况进行调整,例如权限设置、日志记录等。此外,考虑到安全性,建议在生产环境中...

    CentOS下安装apache和svn并为svn配置http支持

    在CentOS环境下安装Apache服务器和Subversion(SVN)版本控制系统,并配置Apache来支持HTTP协议的SVN服务,是常见的软件部署与配置任务。以下知识点会详细阐述整个过程中涉及的步骤、组件以及潜在的配置问题。 ### ...

    centos上安装jboss+svn+maven客户端

    在Linux系统,特别是CentOS上部署开发环境是常见的任务,本教程将详述如何安装JBOSS应用服务器、Subversion(SVN)版本控制系统以及Maven构建工具。这些组件是许多企业级Java应用开发和部署的核心组成部分。 首先,...

    SVN+apache安装

    在IT行业中,版本控制系统是团队协作开发不可或缺的工具,Subversion(简称SVN)就是其中的一种。本教程将详述如何在Windows操作系统上安装并配置SVN与Apache服务器,以便实现代码的集中式管理。 首先,SVN是分布式...

    CentOS7下svn+tomcat9.0+maven3.3+jenkins实现web项目自动构建与远程发布

    首先,我们需要安装和配置Subversion(svn),这是一个广泛使用的版本控制系统。在CentOS7中,可以通过`yum install subversion`命令来安装。设置好仓库目录后,使用`svnadmin create`创建一个新的仓库,并通过`svn ...

    CentOS 下部署svn

    至此,你已经在CentOS上成功部署了SVN服务器,团队成员现在可以通过提供的URL访问并管理代码仓库,实现代码同步和版本控制。请记住,为了保证数据安全,你应该定期备份SVN仓库,并根据团队需求设置适当的权限和访问...

    subversion

    5. **客户端访问**:现在,开发人员可以使用 Subversion 客户端(如 TortoiseSVN 或命令行工具)连接到服务器,进行版本控制操作,如 checkout、commit、update 等。 6. **维护与升级**:定期检查服务器状态,更新 ...

    阿里云centos7.4安装并部署svn1.10.0版本(配置多仓库,加入开机自启动)

    ### 安装与部署阿里云CentOS 7.4 上的 SVN 1.10.0 版本 ...通过以上步骤,我们可以在阿里云 CentOS 7.4 上成功安装并部署 SVN 1.10.0 版本,同时配置多个仓库并将其设置为开机自启动,实现高效稳定的版本控制系统。

    Centos 7 下安装配置SVN服务器操作文档

    在CentOS 7系统中部署SVN服务器,首先要确保已经安装了Subversion。具体步骤如下: - **检查是否已安装**:通过命令`rpm -qa | grep svn`或`rpm -qa | grep subversion`来检查。如果没有任何显示,则表示SVN未安装...

    medooze MCU CentOS7 部署

    ### medooze MCU CentOS7 部署知识点详解 #### 一、medooze MCU简介 medooze MCU是一款强大的媒体服务器,支持多种媒体格式,包括音频、视频和文本等,能够实现多方会议功能。其核心特性在于允许不同类型的客户端...

    CentOS7下svn tomcat9.0 maven3.3 jenkins实现web项目自动构建与远程发布

    自动构建与自动部署:Web项目的自动构建与自动部署是将源代码通过版本控制系统(如SVN)进行管理,通过构建工具(如Maven)进行自动构建和测试,最后通过持续集成工具(如Jenkins)将构建好的项目自动部署到服务器上...

Global site tag (gtag.js) - Google Analytics