博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux下搭建SVN服务
阅读量:7040 次
发布时间:2019-06-28

本文共 2465 字,大约阅读时间需要 8 分钟。

  SVN有几种方式进行访问,比较常见的是通过自带协议访问(svn://),配置很简单,还有一种就是http协议访问,需要结合apache服务,配置相对繁琐。

安装svn

yum -y install subversion

 

创建仓库DEV 

mkdir /opt/svnsvnadmin create /opt/svn/DEV

 

配置用户和权限

1. 增加用户和密码

   在/opt/svn/DEV/conf已经有passwd和authz配置文件了,但是如果将来需要建立多个版本库时就不方便了,建议建立统一的passwd和authz配置文件。

vim /opt/svn/passwd

[users]svndmin = 123456user1 = 123456user2 = 123456

 

2.配置权限和用户分组

vim  /opt/svn/authz
[groups]                           #建立dev和admin两个分组   dev  = uesr1,user2admin = svnadmin[/]                    @dev = r@admin = rw * =                  #表示其它用户没有任何权限[/]                  #对单个用户授权user1 = rw * =

 

 

3.配置svnserve.conf

vim /opt/svn/DEV/conf/svnserve.conf

[general]anon-access = noneauth-access = writepassword-db = /opt/svn/passwdauthz-db = /opt/svn/authzrealm = DEV

 

4.启动和关闭SVN服务

killall svnservesvnserve -d -r /opt/svn/DEV

测试连接:

svn co svn://localhost/DEV

会提示输入用户名和密码,并下载该版本,至此使用svn协议访问的方式就安装完成。

========================================================================

 

二、使用Http方式访问

1. 安装apache和openssl和相关模块

yum  install httpd httpd_devel  mod_dav_svn mod_ssl openssl  mod_auth_mysql

确认安装如下模块:

ls /etc/httpd/modules/|grep svnmod_authz_svn.somod_dav_svn.so

2. 新增http的验证用户

创建http的用户和密码文件,增加用户两个用户

注意第一次使用需要-c,后面再增加用户一定不要增加-c,否则会把以前的用户全删除。

上述需要注意的是:/opt/svn/svn_http_passwd不应该与svn共同使用一个用户文件,原因是httpd与svn用户都是单独的,前者会对用户文件中的密码进行加密,后者则不会加密。authz文件是可以共用的。

3.配置访问的虚拟主机

vim /etc/httpd/conf.d/subversion.conf

LoadModule dav_svn_module     modules/mod_dav_svn.soLoadModule authz_svn_module   modules/mod_authz_svn.so
DAV svn SVNParentPath /opt/svn/ SVNListParentPath on AuthType Basic AuthName "Authorization Realm" AuthUserFile /opt/svn/svn_http_passwd AuthzSVNAccessFile /opt/svn/authz Require valid-user

 

4.重启httpd服务,并进行访问

service httpd restart

http://IP/svn/DEV

 

三、使用https方式访问

 制作证书,得到证书和私钥

参考:

修改:

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

#SSLCertificateFile /etc/pki/tls/certs/localhost.crtSSLCertificateFile /etc/httpd/ssl/httpd.crt#SSLCertificateKeyFile /etc/pki/tls/private/localhost.keySSLCertificateKeyFile /etc/httpd/ssl/httpd.key

vim /etc/httpd/conf.d/subversion.conf

LoadModule dav_svn_module     modules/mod_dav_svn.soLoadModule authz_svn_module   modules/mod_authz_svn.so
DAV svn SVNParentPath /opt/svn/ SVNListParentPath on AuthType Basic AuthName "Authorization Realm" AuthUserFile /opt/svn/svn_http_passwd AuthzSVNAccessFile /opt/svn/authz Require valid-user SSLRequireSSL

重启httpd服务,就可以使用https的方法访问到SVN了

 

转载地址:http://qcxal.baihongyu.com/

你可能感兴趣的文章
TCP/IP详解卷1:第六章(ICMP:internet控制报文协议)
查看>>
Duplicate数据库 RMAN-05001 RMAN-06026
查看>>
如何让你mac osx的eclipse中debug JDK1.7时显示本地变量
查看>>
mitmproxy使用
查看>>
RIP总结(转自鸿鹄论坛)
查看>>
看东方明珠新媒体如何基于阿里视频云,构建完整的视频OTT平台SaaS服务
查看>>
Sersync实时同步企业应用配置实战
查看>>
循环 for while do - while
查看>>
003-文本处理、排序、统计及bash特性、用户组权限、用户管理配置文件
查看>>
String java.lang.String.intern()的作用
查看>>
Linux零基础入学之1-3 RHEL7基本命令操作和启动级别设置
查看>>
大型网站技术架构-2. 大型网站架构模式
查看>>
学习笔记-小甲鱼Python3学习第十一讲:一个打了激素的数组2
查看>>
MXNet 源码解读系列之一 C++端如何解析NDArray参数文件
查看>>
shell编程变量及变量类型
查看>>
Go & Assembly
查看>>
linux 修改挂载目录
查看>>
yield---迭代集合的不同方式
查看>>
MySQL主库复制中Slave_SQL_Running_State参数详解
查看>>
Linux常用的基本命令12
查看>>