`
newspringwork
  • 浏览: 102950 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论
阅读更多

RT, 软件采用yum方式安装。

一、软件安装

1. 安装SVN、Apache及其他相关

yum install httpd mod_dav_svn subversion mod_ssl

 

2. 测试安装是否成功

Apache: 


 SVN:



出现截图所示内容表示安装成功,下面开始配置

 

二、配置SVN

1.初始化版本仓库

新建SVN目录

mkdir /www/svn

新建SVN仓库

svnadmin create /www/svn/project

初始化版本仓库

cd /www/svn/project

mkdir project project/server project/client project/test

svn import project/ file:///home/svn/project -m “Init the repository”

删除临时目录

rm -rf /www/svn/project/project

 

2.配置配置权限、用户等

修改/www/svn/project/conf/下的authz和passwd文件,添加账户并设置目录权限

passwd如:

 

[users]
usera=888888
userb=888888

 

 

auth如:

 

[groups]
super=usera
normal=userb

[/]
@super=rw
*=

[project:/]
@super=rw
@normal=r
*=

启用自定义配置:

vi /www/svn/project/conf/svnserve.conf 

 

启用[general]的几行

anon-access = read

auth-access = write

password-db = passwd

authz-db = authz

 

3.启动测试SVN

启动SVN

svnserve -d -r /home/svn

svn co svn://machine_ip/project

按提示输入最后出现类似“Checked out revision 2”表示成功

 

三、Apache+SVN整合

编辑Apache的Subversion配置文件

 

<Location /project>
   DAV svn
   SVNPath /www/svn/project/
      #SSLRequireSSL

      AuthType Basic
      AuthName "Subversion for project"
      AuthUserFile /www/svn/project/conf/passwd_httpd
      AuthzSVNAccessFile /www/svn/project/conf/authz
      Satisfy all
      Require valid-user
</Location>

Apache的账户不支持SVN的明文密码,我们用下面的命令来添加SVN账户:

 

htpasswd -bcm /www/svn/project/conf/passwd_httpd usera 888888

 

设置资源库文件所属账户

chown -R apache.apache /www/svn

 

重启Apache:

service httpd restart

 

现在就可以在浏览器尝试访问了:

http://svn_machine_ip/project

按提示输入用户名密码。

访问不了?查看下apache日志:

tail -100f /etc/httpd/logs/error_log

 

[Mon Oct 07 01:20:37 2013] [error] [client 192.168.1.108] (13)Permission denied: Could not open password file: /home/svn/project/conf/webpasswd
[Mon Oct 07 01:20:37 2013] [error] [client 192.168.1.108] access to /project failed, reason: verification of user id 'usera' not configured
[Mon Oct 07 01:20:45 2013] [error] [client 192.168.1.108] (13)Permission denied: Could not open password file: /home/svn/project/conf/webpasswd
[Mon Oct 07 01:20:45 2013] [error] [client 192.168.1.108] access to /project failed, reason: verification of user id 'usera' not configured
[Mon Oct 07 01:21:26 2013] [error] [client 192.168.1.108] (13)Permission denied: Could not open password file: /home/svn/project/conf/webpasswd
[Mon Oct 07 01:21:26 2013] [error] [client 192.168.1.108] access to /project failed, reason: verification of user id 'usera' not configured
[Mon Oct 07 01:22:02 2013] [error] [client 192.168.1.108] (13)Permission denied: Could not open password file: /home/svn/project/conf/webpasswd
[Mon Oct 07 01:22:02 2013] [error] [client 192.168.1.108] access to /project failed, reason: verification of user id 'usera' not configured

 

对于这个问题有人说关掉SElinux,个人没试过,不过肯定不好,影响主机安全性。

执行如下命令即可:

 

chcon -R -h -t httpd_sys_content_t /www/svn

  

四、配置Https方式访问版本仓库

需要用到OpenSSL工具。

1.生成需要的证书、密钥

上面是以http方式访问的,安全性低,下面设置强制https访问svn:

 

2.配置Apache的Subversion强制使用Https

生成私钥

cd /etc/httpd/conf

openssl genrsa -out httpd.key 1024

用前面的私钥生成证书

openssl req -new -key httpd.key -out httpd.pem -days 3650 -x509

 

修改Apache的SSL配置文件

# vim /etc/httpd/conf.d/ssl.conf

 

SSLCertificateFile /etc/httpd/conf/httpd.pem

SSLCertificateKeyFile /etc/httpd/conf/httpd.key

配置subversion强制使用https访问

# vim /etc/httpd/conf/httpd.conf

启用SSLRequireSSL配置(去掉前面的注释符)

 

五、Eclipse中使用https连接svn

其实这点也没啥好说的,之所以列出来是因为中间出现了一点小问题,记录下:

1、Eclipse中https连接svn失败

首先之前用小乌龟客户端和浏览器是能够连接svn的,既然小乌龟客户端可以连接为什么Eclipse不能连接呢?

猜测可能和SVN插件版本(1.6)有关, 升级到1.8后,可以正常访问了^_^至于有人介绍的说什么修改Apache配置的SSL协议之类的也试过,也会出现错误,如:

    RA layer request failed

svn: OPTIONS of 'https://xxxxx/project': SSL negotiation failed: SSL error: sslv3 alert handshake failure (https://xxxxx)

 

参考文章:

http://www.linuxidc.com/Linux/2013-03/81007p7.htm

http://zhumeng8337797.blog.163.com/blog/static/100768914201292642655560/

http://www.ha97.com/4467.html

  • 大小: 3.1 KB
  • 大小: 17.6 KB
  • 大小: 49.3 KB
  • 大小: 7.3 KB
分享到:
评论

相关推荐

    在centos6.4下编译64位的hadoop 2.4.1.docx

    "在 CentOS 6.4 下编译 64 位的 Hadoop 2.4.1" ...本文详细介绍了在 CentOS 6.4 下编译 64 位的 Hadoop 2.4.1 的步骤,包括环境准备、安装依赖包、下载和安装 Maven 和 Ant、配置环境变量、编译 Hadoop 和安装 Hadoop。

    linuxsvn离线安装

    在没有网络连接的情况下,即离线状态下安装Linux SVN,需要提前下载好所有必要的依赖包,然后在本地进行安装。以下是详细的操作步骤和相关知识点: 1. **了解SVN**: SVN是一种集中式版本控制系统,它允许用户跟踪...

    关于Linux下svn的安装(成功)最新版本

    本文将详细介绍如何在 CentOS 6.4 上安装最新版本的 SVN(Subversion),包括安装前的准备、依赖项安装、 SVN 的安装和配置等步骤。 前提条件 * 操作系统:CentOS 6.4 * 虚拟机安装 依赖项安装 1. APR(Apache ...

    Centos-6.4 64位 Subversion-1.8.5 编译安装完成代码开发环境搭建

    本教程将详细讲解如何在CentOS-6.4 64位系统上编译安装Subversion-1.8.5,以创建一个完整的开发环境。 首先,确保系统已经安装了必要的基础工具,例如GCC和C++编译器。在CentOS中,可以使用`yum`命令来安装这些工具...

    daytrader:Apache Geronimo 示例项目,使用 `git svn clone http 从 SVN 克隆

    日间交易者安装要在运行 CentOS 6.4 的 EC2 实例上安装 Daytrader,您将: 安装 Docker 启动daytrader-mysql容器启动daytrader容器初始化mysql数据库部署应用安装 Docker 以 root 身份运行以下命令以在 CentOS 6 上...

    WAF-nginx

    用途:防止sql注入,本地包含,部分溢出,fuzzing测试,xss,SSRF等web攻击 防止svn/备份之类文件泄漏 防止ApacheBench之类压力测试工具的攻击 ...系统:centos 6.4_x64 需要的软件:LuaJIT-2.0.3.tar.gz

    puppet2.6配置手册

    探讨Puppet WebGUI的安装配置,以及如何创建Init脚本来自动启动Dashboard服务,为用户提供图形化界面,便于监控和管理Puppet环境。 ##### 7.2 Foreman Foreman是另一个与Puppet集成的WebGUI工具,提供了更高级的...

Global site tag (gtag.js) - Google Analytics