1、安装 svn 及 依赖
yum install mod_dav_svn subversion
2、创建版本库
svnadmin create /data/svndata/rd
不出意外,此时,可以用 svn://协议访问了
3、安装apache
yum -y install httpd
4、修改第二步创建的版本库配置文件
[general] anon-access = none auth-access = write password-db = /data/svndata/passwd.conf #httpd鉴权使用 authz-db = /data/svndata/authz.conf #svn版本库权限文件 realm = rd #版本库 # force-username-case = none [sasl] # use-sasl = true # min-encryption = 0 # max-encryption = 256
5、创建第四步提到的鉴权文件并添加一个用户
touch /data/svndata/passwd.conf htpasswd -c /data/svndata/passwd.conf unclecode #添加第二个用户的时候,不要-c,否则会被覆盖
6、创建第四步提到的svn版本库权限文件
vi /data/svndata/authz.conf [groups] rd= unclecode [rd:/] @rd=rw
7、http 方式
vi /etc/httpd/conf/httpd.conf Listen 8088 vi /etc/httpd/conf.d/subversion.confDAV svn SVNListParentPath on SVNParentPath /data/svndata AuthType Basic AuthName "Authorization" AuthUserFile /data/svndata/passwd.conf AuthzSVNAccessFile /data/svndata/authz.conf Require valid-user 启动 apache: systemctl restart httpd.service 启动svn : svnserve -d -r /data/svndata/
8、http方式看效果
http://127.0.0.1:8088/svn 输入第五步创建的用户名和密码即可
9、https 方式
9.1、安装openssl
yum install mod_ssl openssl
9.2、生成证书
cd /etc/pki/tls/private openssl genrsa -out svn_server.key 1024 openssl req -new -key my.key -out svn_server.csr cd /etc/pki/tls/certs openssl x509 -req -days 365 -in /etc/pki/tls/private/svn_server.csr -signkey /etc/pki/tls/private/svn_server.key -out svn_server.crt
9.3、配置apache ssl
vi /etc/httpd/conf.d/ssl.conf SSLCertificateFile /etc/pki/tls/certs/svn_server.crt SSLCertificateKeyFile /etc/pki/tls/private/svn_server.key vi /etc/httpd/conf.d/subversion.conf 前添加一行 SSLRequireSSL
vi /etc/httpd/conf/httpd.conf 最下面加2行 LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so
10、重启apache
systemctl restart httpd.service
11、https方式看效果
https://127.0.0.1:8088/svn 输入第五步创建的用户名和密码即可