1、安装svn
yum -y install subversion
2、创建初始化版本库
mkdir /svn
svnadmin create /svn/b2b #b2b为版本库名称,会在/svn下自动创建一个b2b文件夹
3、配置 /svn/b2b版本库
cd /svn/b2b/
ls
authz # 权限配置文件
[groups] # 定义了组中的成员
admin = dave,tom
dev = tianlesoftware
test = flodertest
[/] # 根据目录定义每个组的读写权限
@admin = rw
@dev = rw
[/floder] # 根据目录定义每个组的读写权限
@test = r
passwd # 用户名口令文件
svnserve.conf # svn服务配置文件
[general]
anon-access = none # 控制匿名用户访问版本库的权限
auth-access = write # 控制鉴权用户访问版本库的权限
password-db = passwd # 指定用户名扣篮文件名,明文保存密码,如要加密,注释掉这行
authz-db = authz # 指定权限配置文件名
realm = b2b # 指定版本库的认证域名称,sasl 指定加密密码用到
[sasl]
use-sasl = true # 开启sasl加密
min-encryption = 128 # 最小加密长度
max-encryption = 256 # 最大加密长度
4、启动、停止svn服务
svnserve -d -r /svn # 启动svn,-r 指定根目录
ps aux | grep svnserve # 查看svn服务的pid,然后kill
5、使用加密的svn密码文件
在svnserve.conf 中开启sasl区域,并且注释掉general中的password-db
新建一个svn.conf文件,一般放在/usr/Lib/sasl2或者/etc/sasl2,内容如下:
pwcheck_method: auxprop # 指明检查的方法,这里是 auxprop
auxprop_plugin: sasldb #
sasldb_path: /svn/b2b/conf/sasldb
mech_list: DIGEST-MD5
6、创建加密的用户名和密码
saslpasswd2 -c -f /svn/b2b/conf/sasldb -u b2b dave -p
新建用户,或者修改用户口令,-f 指定保存加密后的密码文件路径,-u b2b dave 指定域和用户,这个域为svnserve.conf 中[general]区域下的realm
saslpasswd2 -d -f /svn/b2b/conf/sasldb -u b2b dave
删除用户,-u b2b dave 指定域和用户,这个域为svnserve.conf 中[general]区域下的realm
sasldblistusers2 -f /svn/b2b/conf/sasldb
查询用户
7、其他问题
如果访问库的时候出现以下提示 "Could not obtain the list of SASL mechanisms",原因是Linux默认没有安装DIGEST-MD5,此时,可用以下命令安装更新:yum install cyrus-sasl-md5
yum install cyrus-sasl-md5