【原】快速搭建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://linuxuser@192.168.11.6/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://linuxuser@192.168.11.6/svnroot/repos  //全路徑

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM