Linux上svn服务的搭建及一些特殊需求设置
一、需求
二、Linux上svn服务器的搭建
三、svn客户端的使用
一、需求
我们现在有个需求是,出于安全考虑,我们打算在各Linux服务器上禁止使用scp、sftp等命令和工具进行上传下载文件,而是统一使用svn命令来进行上传下载文件,因为svn有日志记录,方便后期审查。
二、Linux上svn服务器的搭建
我们先搭建一个SVN服务器。
一般我们搭建svn服务器,常用的方法应该是在Windows上,使用VisualSVN server软件,客户端再搭配TortoiseSVN软件使用。这种方案也是比较成熟的方案。
不过我们这里直接使用Linux来搭建SVN服务。
1. 服务器环境
环境:CentOS7.2
IP:172.28.6.183
2.安装软件
#yum install subversion
安装完,服务默认是关闭的
#systemctl status svnserve svnserve.service - Subversion protocol daemon Loaded: loaded (/usr/lib/systemd/system/svnserve.service; disabled; vendor preset: disabled) Active: inactive (dead)
3.创建版本库
创建一个版本库,可根据项目创建不同的版本库
# svnadmin create /opt/svn/binglog
执行命令后,会在/opt/svn目录下创建一个binglog的版本库目录
# ls /opt/svn
binglog
创建的版本库目录中有如下几个文件:
# ls /opt/svn/binglog
conf db format hooks locks README.txt
4.配置conf
进入到前面创建的版本库binglog目录下,其中有个conf目录,配置文件即在里面。
# ls /opt/svn/binglog/conf
authz passwd svnserve.conf
文件的作用:
authz:负责账号权限的管理,控制账号是否读写权限
passwd:负责账号和密码的用户名单管理
svnserve.conf:svn服务器配置文件
13.1 配置authz
主要有三个段:
[aliases]:用于域账号、LDAP账号时使用
[groups]:多个用户组成一个组,方便用组进行赋权
组名 = 用户1,用户2,用户3
[目录]:指定用户需要访问的目录路径,如果是整个目录,直接使用 /
[\]
账号1 = rw
账号2 = rw
…….
前往微信公众号查看全文:
https://mp.weixin.qq.com/s/VtDaDcemmxOrF2chS8kG1g