/ 中存储网

Debian Linux系统安装配置Apache2和SVN服务

2014-03-18 08:26:01 来源:kejihao
一,环境:

Debian Liunx(5.x / 6.x) + apache2(2.2.16)+ Subversion(1.6.12)

二,配置:

1,apt-get 安装 apache

2, openssl(https) 和 svn reistlin:~# apt-get install apache2 apache2-mpm-worker openssl subversion libapache2-svn

2,新建 svn 目录(/home/svn),配置目录所有者(www-data)以及权限 reistlin:~# mkdir /home/svn

reistlin:~# chown www-data:www-data -R /home/svn/

reistlin:~# chmod 770 -R /home/svn/

3,创建 svn 用户密码配置文件:/etc/apache2/dav_svn.passwd reistlin:~# /usr/bin/htpasswd -c /etc/apache2/dav_svn.passwd admin

New password:

Re-type new password:

Adding password for user admin

密码文件默认加密方法:CRYPT encryption,密码文件格式:用户名:密码

基于安全考虑,建议加密方法使用 SHA encryption:htpasswd -s 用户名

reistlin:~# cat /etc/apache2/dav_svn.passwd

admin:{SHA}0DPiKuNIrrVmD8IUCuw1hQxNqZc=

reistlin:{SHA}QL0AFWMIX8NRZTKeof9cXsvbvu8=

test1:{SHA}qUqP5cyxm6YcTAhz05Hph5gvu9M=

test2:{SHA}Y2fEjdGT1W6nsLqtJbGUVeUp9e4=

4,创建 svn 目录权限配置文件:/etc/apache2/dav_svn.authz reistlin:~# cat /etc/apache2/dav_svn.authz

[groups]

admin=admin,reistlin

guest=test1,test2

[reistlin:/]    # 版本库 reistlin 权限配置

*=              # 默认禁止所有用户访问

@admin=rw       # admin 组有 rw 权限

test1=r         # 用户 test1 有 r 权限

5,配置 /etc/apache2/mods-available/dav_svn.conf reistlin:~# vim /etc/apache2/mods-available/dav_svn.conf

创建 svn location,指定 svn 目录,认证方式,认证信息;

指定 dav_svn.passwd 用户密码配置文件路径;

指定 dav_svn.authz 目录权限配置文件路径。

<Location /svn>

  DAV svn

  SVNParentPath /home/svn

  AuthType Basic

  AuthName "Subversion Repository"

  AuthUserFile /etc/apache2/dav_svn.passwd

  AuthzSVNAccessFile /etc/apache2/dav_svn.authz

  Require valid-user

</Location>

6,创建 svn 版本库(reistlin) reistlin:~# su - www-data

reistlin:~$ svnadmin create /home/svn/reistlin

7,配置完成,重新启动 apache2 服务 reistlin:~$ su - root

reistlin:~# /etc/init.d/apache2 restart

8,启动浏览器,访问 http://localhost/svn/reistlin

svn_http.gif

三,管理:

1,新建用户(htpasswd SHA 加密方法,参数:-s)

reistlin:~$ sudo /usr/bin/htpasswd -s /etc/apache2/dav_svn.passwd 用户名

2,删除用户(vi/vim 编辑)

reistlin:~$ sudo vim /etc/apache2/dav_svn.passwd

查找指定用户名:/用户名

删除用户指定行:dd

保存退出::wq

3,Subversion 客户端 [TortoiseSVN](开源软件:支持英文/简体中文/繁体中文)