一. 安装环境

  • 使用Centos7环境
  • 使用yum命令安装相关组件,了解yum相关问题请移步:yum源离线挂载和服务搭建

二. 安装svn组件

yum install mod_dav_svn subversion

三. 创建仓库及其用户(HTTP)

1. 创建仓库

  • 在服务器home路径下创建svn文件夹
  • 在svn文件夹下创建test仓库
  • 授权apache用户svn文件夹操作权限
mkdir /home/svn
cd /home/svn
svnadmin create test
chown -R apache:apache /home/svn

2. 查看配置文件

  • authz 是权限控制文件
  • passwd 是帐号密码文件
  • svnserve.conf 是SVN服务配置文件
cd /home/svn/test/conf
ls

3. 新增用户

  • 编辑passwd文件,添加
  • user1=123456
  • user2=123456
vi passwd
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
[users]
# harry = harryssecret
# sally = sallyssecretuser1=123456
user2=123456

4. 配置authz权限

  • 编辑authz权限文件
  • 新增
    [/]
    user1=rw
    user2=r
    *=
vi authz
[groups]
#代表仓库下文件所有权限
[/]
#读写权限
user1=rw
#读权限
user2=r
#其它用户无权限
*=

5. 配置svnserve.conf

  • 编辑svnserve.conf文件
vi svnserve.conf
  • 打开修改以下参数
#匿名可读
anon-access = read
#权限用户可写入
auth-access = write
#使用账号密码的文件名
password-db = passwd
#使用权限的文件名
authz-db = authz
#认证空间名
realm = /home/svn/test

6. 启动和停止

svnserve -d -r /home/svn/test
kill all svnserve

7. 访问

  • 默认的端口是3690,在检出提交操作之前请检测此端口是否允许出站入站。如不允许,请设置好防火墙
  • http://[ip:3690]/test

三. 创建HTTPS访问模式

1. 安装httpd组件

yum install httpd httpd-devel
yum install mod_ssl  openssl

2. 设置公共config

  • 在/home/svn 下创建配置文件夹 config
cd /home/svn
mkdir config

3. 新增公共subversion.conf

vi /etc/httpd/conf.d/subversion.conf
  • 增加以下内容
<Location  /svn>DAV  svnSVNParentPath /home/svn/SVNListParentPath onAuthType BasicAuthName "Authorization Realm"AuthUserFile /home/svn/config/httpd-passwdAuthzSVNAccessFile /home/svn/config/httpd-authzRequire valid-userSSLRequireSSL
</Location>

4. 创建用户

  • 创建usertest用户和密码(密码以123为示例)文件,已有文件把 -c 参数去掉
htpasswd -c /home/svn/config/http-passwd usertest
# 或者
htpasswd /home/svn/config/http-passwd usertest
  • passwd 文件,增加用户
vi /home/svn/config/passwd
#增加以下内容
[users]
usertest=123
  • httpd-authz 文件,增加权限
vi /home/svn/config/httpd-authz#增加以下内容
[groups]
group1=usertest  # 用户组,多个用户用逗号隔开
[test:/]  # 设置test库的权限
@group1=rw  # group1组里的用户有读写权限
*=  # 其他用户没有任何权限

5. 配置HTTPS

cd /etc/pki/tls/private
openssl genrsa -out svn.key 1024
openssl req -new -key svn.key -out svn.csr
cd /etc/pki/tls/certs
openssl x509 -req -days 365 -in /etc/pki/tls/private/svn.csr -signkey /etc/pki/tls/private/svn.key -out svn.crtvi /etc/httpd/conf.d/ssl.conf
#修改参数:
SSLCertificateFile /etc/pki/tls/certs/svn.crt
SSLCertificateKeyFile /etc/pki/tls/private/svn.key#如需修改端口
Listen 61237 https

6. 授权

chown -R apache:apache /home/svn

7. 启动

svnserve -d -r /home/svn
systemctl start httpd

8. 访问

  • 在检出提交操作之前请检测此端口是否允许出站入站。如不允许,请设置好防火墙
  • http://[ip:61237]/svn/test

linux 安装SVN(http、https访问)相关推荐

  1. SVN配置https访问 - linux服务器

    CentOS服务器部署svn+apache http + ssl https访问 一.配置https请求访问SVN 1.1 安装SSL模块 1.2 生成服务端数字证书 1.3 生成客户端数字证书 1. ...

  2. Linux安装svn服务器和权限配置_亲测成功

    Linux安装svn服务器和权限配置_亲测成功 SVN简介 SVN是Subversion的简称,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目 ...

  3. Linux 安装 SVN

    Linux 安装 SVN 1-SVN 下载 2-SVN 安装 3-SVN 配置 1-SVN 下载 服务端: http://subversion.apache.org/packages.html 客户端 ...

  4. linux下svn配置http访问

    linux 服务器部署svn+apache http + ssl https访问 一.其他链接 二.安装配置HTTP访问 2.1 安装Apache HTTP服务 2.2 安装svn模块 2.3 配置 ...

  5. linux安装svn

    linux安装SVN 1. 安装svn # yum install subversion # mkdir /software/project #自定义数据根目录 2.创建代码仓库 # svnadmin ...

  6. CentOS6.5 安装SVN 及http访问

    安装: [root@moshi ~]# yum -y install mod_dav_svn #会自动安装mod_dav_svn及其依赖包:mod_dav_svn-1.6.11-9,neon-0.29 ...

  7. linux安装svn(yum安装)

    我的系统环境是CentOS 6.9 64 安装的方式是 yum intall 先检查已安装版本 rpm -qa subverion 如果有请先卸载(我也不知道为什么要卸载) yum remove su ...

  8. linux非yum安装svn,linux安装svn(yum安装)

    我的系统环境是CentOS 6.9 64 安装的方式是 yum intall 先检查已安装版本 rpm -qa subverion 如果有请先卸载(我也不知道为什么要卸载) yum remove su ...

  9. Linux 安装SVN服务器 图解教程

    前言: 现在主流企业常见的代码管理就是SVN,GIT,此文是在自己服务器上搭建仓库,其实远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改.如GitHub就是一个免费托管开源代 ...

最新文章

  1. vue中点击第一次没有触发按钮怎么操作_vue如何触发某个元素的单击事件?
  2. string 相等 java_java中string相等问题(==与.equal的具体区别。求详细解释)
  3. 为什么读完博士反而逃离科研?中科院博导:因为我们的科研让人乏味!
  4. cal css,CSS calc计算属性
  5. django filter查询多选_django model filter查询
  6. 刷脸即可解锁让iDevice取证不再难如登天
  7. iOS直播点赞动画,iOS直播心型点赞动画
  8. 吐血干货,直播首屏耗时400ms以下的优化实践
  9. kafka-spark-streaming-mysql(scala)实时数据处理案列
  10. RxJava -- 从 create 开始 (一)
  11. 奥维中如何关闭gcj02坐标_QGIS入门知识:啥是坐标系
  12. 【开发/调试工具】【串口工具】不同串口软件如何生成带时间戳的日志
  13. 碎碎念No.03 我这个程序员终于去看了心理医生做了心理咨询
  14. audio接线图解_5.1家庭影院布线之音响如何接线(图文教程)
  15. python 四象限图_「四象限图」excel制作四象限图的方法图解步骤 - seo实验室
  16. CCF 202206-4 光线追踪 python
  17. 《IT项目经理成长手记》读后感
  18. C#之 正则表达式和特殊字符
  19. 如何阅读一本专业书?
  20. ERD Online 4.0.3数据库在线建模(免费、更美、更稳定)

热门文章

  1. js 深度赋值deepVal
  2. 3DMAX中的7个基本建模小窍门
  3. PS学习-曝光与色彩处理(一)--校正曝光不足
  4. oracle11g tmpfs参数设置
  5. 美团4.8后端开发笔试
  6. MacBook笔记本安装win10后cpu被锁频,无法以满速运行的解决办法
  7. IntelliJ IDEA最新破解版2018.3.1(附2018.2.2 完美破解教程)
  8. 【实用手记】linux下命令行查看图片
  9. html5 表单必填项,javascript - HTML5表单必填属性。 设置自定义验证消息?
  10. 妖狐显示连接备用服务器,妖狐9剑配置安全个人电脑语音教程