• SVN服务搭建


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

    安装svn

     yum -y install subversion

    创建仓库DEV 

    mkdir /opt/svn
    svnadmin create /opt/svn/DEV

    配置用户和权限

    1. 增加用户和密码

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

    vim /opt/svn/passwd

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

    2.配置权限和用户分组

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

     

    3.配置svnserve.conf

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

    [general]
    anon-access = none
    auth-access = write
    password-db = /opt/svn/passwd
    authz-db = /opt/svn/authz
    realm = DEV

    4.启动和关闭SVN服务

    killall svnserve
    svnserve -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 svn
    mod_authz_svn.so
    mod_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.so
    LoadModule authz_svn_module   modules/mod_authz_svn.so
    <Location /svn>
       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
    </Location>

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

    service httpd restart

    http://IP/svn/DEV

    三、使用https方式访问

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

    参考:

    基于openssl的https服务配置

    修改:

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

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

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

    LoadModule dav_svn_module     modules/mod_dav_svn.so
    LoadModule authz_svn_module   modules/mod_authz_svn.so
    <Location /svn>
       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
    </Location>

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

  • 相关阅读:
    洛谷
    洛谷
    洛谷
    洛谷
    洛谷
    模板
    模板
    模板
    洛谷
    模板
  • 原文地址:https://www.cnblogs.com/zydev/p/6048067.html
Copyright © 2020-2023  润新知