Linux上svn+ssh服务的搭建

来源:岁月联盟 编辑:exp 时间:2012-04-05

创建版本库svnadmin create path为svnusers用户组赋予权限chown -R root:svnusers path chmod -R g+rws path /*给svnusers组赋予读写权限,可以根据需要更改相应权限*/ chmod -R o-rwx path /*删除其他无关人员的读、写、执行权限,默认情况下可能其他人有读权限*/为svn用户生成密匙切换到用户环境下:su 用户生成密匙对:ssh-keygen -b 1024 -t rsa -N passwd -f keyname其中,passwd为密钥关键字(相当于密码),由用户自定义;keyname为密钥文件名生成之后会产生两个文件,keyname和keyname.pub其中前者为密钥,后者为公钥  www.2cto.com  rsa指定使用rsa进行加密,如果该成dsa,则使用dsa加密在用户home目录创建.ssh目录,把公钥拷贝并重命名成authorized_keys到该目录下:cp keyname.pub /home/username/ .ssh/authorized_keys 将私钥交给用户使用更改资源访问权限修改 版本库/conf/svnserve.conf文件,在general中加入以下几行anon-access = none // 未认证的用户没有任何访问权限 auth-access = write // 认证的用户有写权限 authz-db = authz // 认证文件为conf目录下的authz文件修改 版本库/conf/authz文件(如果没有则创建),在其中加入:[/] //访问权限为本资源的根目录(以及以下目录) username = rw //用户的访问权限为“读+写”还可以采用以下方法进行认证:[groups] svn = fify,sim // 定义用户组svn包含两个用户:fify和sim [/]@svn = rw // svn用户组的成员访问权限为“读+写”客户端链接方法:生成PuTTY密钥:将username文件(密钥)拷贝到windows中,打开puttygen.exe文件,选择菜单:conversions->Import key,选择username文件,输入之前设定的passphrase,此时可以看到该密钥的一些信息点击Save private key,生成ppk文件(假设保存为username.ppk文件),即PuTTY使用的密钥设置TortoiseSVN登录方式:  www.2cto.com  在即将要存储svn文件的目录中(空白处)点击右键,选择TortoiseSVN->Settings->Network->SSH client,输入:C:/Program Files/TortoiseSVN/bin/TortoisePlink.exe开启pageant: 打开pageant.exe,右键点击任务栏右侧中的小图标,选择Add Key,将刚才生成的username.ppk加入co资源: 在即将要存储svn文件的目录中(空白处)点击右键,checkout:svn+ssh://username@host:path,此时便可看到svn的资源列表   作者 showcolors