【原】快速搭建SVN+SSH环境

SVN+SSH的部署方式,主要是使用serve的隧道方式来登陆SVN。

步骤如下

1 添加一个Linux系统用户。并生产密钥,生存authorized_keys文件,并指定command为svnserve的隧道,带上svn用户名。

2 修改svn的config,使用authz,并添加linux用户。

使用中有几点要注意:

1. svn+ssh,需要添加一个linux系统用户,能登录系统的。

2. 用ssh-keygen生成密钥后,需要改为authorized_keys,并且指定command为svnserve的隧道。

3.在checkout时和svn方式不一样,“svn co svn://192.168.11.6/repos”,而后者是“svn co svn+ssh://[email protected]/svnroot/repos”,一定要加上路径,否则会说找不到这个repository.

4.新建一个svn用户,在auth里指定权限,在passwd里指定密码,用svn方式就可以访问;同时它可以作为ssh方式的隧道。

5. 新建一个系统用户,在.ssh/authorized_keys指定隧道

6.需要将svn用户和系统用户都添加到auth里面,否则会说Authorized failed。

具体操作步骤如下:

1 创建linux用户,并指定隧道

#useradd linuxuser 
#printf "123456\n123456" | sudo passwd linuxuser
#su - aaron
#mkdir -p .ssh && cd .ssh
#ssh-keygen -t rsa -b 1024  
#echo -n 'command="/usr/bin/svnserve -t -r /localdisk/svndata --tunnel-user=svnuser"' >> authorized_keys  
#echo -n ',no-port-forwarding,no-pty,no-agent-forwarding,no-X11-forwarding' >> authorized_keys  
#echo -n ' ' >> authorized_keys  
#cat id_rsa.pub >> authorized_keys 

2 配置svn repos

# cat svnserve.conf 
anon-access =none
auth-access = write
password-db = passwd
authz-db = authz


#cat authz
[/]
svnuser = rw
linuxuser = rw

#cat passwd
[users]
svnuser=123456

3 访问svn库

svn co svn+ssh://[email protected]/svnroot/repos  //全路径

猜你喜欢

转载自www.cnblogs.com/zhengminjie/p/8987010.html
今日推荐