svn搭建http、https访问

svn搭建http、https访问 &Visual SVN

http访问

[root@svn /]# yum install httpd mod_dav_svn subversion mod_ssl openssl
[root@svn /]#  htpasswd -c /svn/passwd svn  #创建apache登陆的用户svn
[root@svn /]# mkdir -p  /svn/data
[root@svn /]# svnadmin create  /svn/data
[root@svn /]# vi /etc/httpd/conf.d/svn.conf
<Location /svn>
	DAV svn
	SVNParentPath /svn
	AuthType Basic
	AuthName "svn"
	AuthUserFile /svn/passwd
	AuthzSVNAccessFile /svn/auth.conf
	Require valid-user
</Location>
[root@svn /]# vi /svn/auth.conf
[groups]
admin = svn
[/]
svn=rw
[root@svn /]# chown -R apache:apache /svn/data
[root@svn /]# systemctl start httpd
[root@svn /]# svnserve -d -r /svn/data/

http://IP地址/svn/data    #弹出登陆界面登陆,显示

开机启动

[root@svn /]# vim /etc/sysconfig/svnserve
OPTIONS="-rd /svn/data"
[root@svn /]# systemctl enable svnserve.service
[root@svn /]# systemctl enable httpd

配置https访问

[root@svn /]# cd /svn/
[root@svn svn]# openssl genrsa -out httpd.key 1024
[root@svn svn]# openssl req -new -key httpd.key -out httpd.pem -days 3650 -x509
[root@svn svn]# ls
auth.conf  data  httpd.key  httpd.pem  passwd
[root@svn svn]# vi /etc/httpd/conf.d/ssl.conf
...
SSLCertificateFile /svn/httpd.pem
SSLCertificateKeyFile /svn/httpd.key
...
[root@svn svn]# vim /etc/httpd/conf.d/svn.conf
<Location /svn>
	DAV svn
	SVNParentPath /svn
	AuthType Basic
	AuthName "svn"
	AuthUserFile /svn/passwd
	AuthzSVNAccessFile /svn/auth.conf
	Require valid-user
	SSLRequireSSL     #添加此行
</Location>
[root@svn /]# systemctl restart httpd

https://IP地址/svn/data    #弹出登陆界面登陆,显示

备份迁移了解

svnadmin dump /svn/data > full.svn.bak 

svnadmin create /svn/repo1
cd /svn/repo1
svnadmin load repo1 < full.svn.bak 

原始端口访问

[root@svn /]# yum -y install subversion
[root@svn /]# mkdir -p /data/svn/repo
[root@svn /]# svnadmin create  /data/svn/repo
[root@svn /]# cd /data/svn/repo/conf
[root@svn conf]# vi passwd   #创建用户名密码
[users]
hello=world

[root@svn conf]# vi  authz   #配置访问用户及权限
...
[/]
hello = rw
[root@svn conf]# vi svnserve.conf   #服务读取配置
...
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = /data/svn/repo
...

[root@svn conf]# svnserve -d -r /data/svn/repo  --listen-port=3690

#配置开机启动
[root@svn conf]# ps -ef | grep svn
root       185     0  0 06:11 ?        00:00:00 svnserve -d -r /data/svn/repo --listen-port=3690
root       211    85  0 06:23 pts/0    00:00:00 grep --color=auto svn
[root@svn conf]# kill -9  185
[root@svn conf]# vi  /etc/sysconfig/svnserve
OPTIONS="-d  -r /data/svn/repo"    #创建的仓库目录
[root@svn conf]# systemctl enable svnserve.service  --now
[root@svn conf]# systemctl status svnserve.service


#优化调整  更改authz和passwd文件时则不需要重启服务。

[root@8c916fc1e525 conf]# vi passwd
[users]

hello=123
admin1 = 123456
admin2 = 123456
test1 = 123456
test2 = 123456

[root@8c916fc1e525 conf]# vim authz
...
[groups]
admin = admin1,admin2
test = test1,test2

[/]
hello = rw
@admin = rw     #群组使用
@test = r      #test组不能修改文件           #访问控制实际测试并没有实现,待真实需求时了解
* = r

Visual SVN Server windows的企业级svn,下载安装即可,暂时不深入研究

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在外网访问搭建在云上的SVN服务器,可以按照以下步骤进行操作: 1. 首先,确保你已经在Windows云服务上成功安装了VisualSVN Server,并且在本地机器上安装了TortoiseSVN作为客户端。 2. 确认你的云服务器已经具有公网IP地址,并且已经配置好了网络策略允许外部访问。 3. 在云服务器上打开VisualSVN Server管理控制台,点击左侧面板中的“Repositories”选项卡,创建一个新的仓库。 4. 在创建仓库时,可以选择创建空白仓库或者导入已有的仓库数据。选择适合你的需求并按照提示进行操作。 5. 在创建完仓库后,你可以在“Repositories”选项卡中找到你所创建的仓库,并记录下仓库的URL地址。 6. 接下来,需要进行一些配置来实现外网访问。在VisualSVN Server管理控制台中,点击顶部菜单栏中的“Action”选项,在下拉菜单中选择“Properties”。 7. 在弹出的窗口中,点击左侧面板中的“Network”选项,然后在右侧的“Network Settings”部分,找到“ServerName”字段,并填入你的服务器的公网IP地址。 8. 在同一个窗口中,点击左侧面板中的“Authentication”选项,然后在右侧的“Authentication Settings”部分,选择合适的身份验证方式来保护你的仓库。 9. 保存配置并关闭VisualSVN Server管理控制台。 10. 现在你可以在本地机器上打开TortoiseSVN客户端,并通过仓库的URL地址进行访问。在TortoiseSVN的文件资源管理器中,右键点击空白区域,选择“SVN Checkout”并填入仓库的URL地址,按照向导完成仓库的检出。 11. 现在你可以在本地机器上进行SVN操作,并将改动同步到云服务器上。 请注意,为了确保安全性,建议在云服务器上配置适当的防火墙规则,并采取其他安全措施来保护你的仓库和数据。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值