在Ubuntu上安装配置Subversion + Aapache + SSL以及权限设置


1,首先需要安装所需要的软件,在Unbuntu上输入以下命令完成Subversion,Apache2以及连接驱动模块的安装。

sudo apt-get install subversion libapache2-svn apache2

2,启用SSL使其有效:

sudo a2enmod ssl
sudo echo “Listen 443″ >> /etc/apache2/ports.conf



3,生成SSL加密证书:

sudo apache2-ssl-certificate

这部操作会有许多基于命令行方式的提问,只要任意输入即可,目的是为了能生成唯一的证书

4,在apache中新建一个虚拟主机,用于通过web来访问svn档案库中的内容。
复制一个现有的apache虚拟主机配置文件,然后对其进行编辑,虚拟主机配置文件名假定为svn:

cp /etc/apache2/sites-available/default /etc/apache2/sites-available/svn

对其进行编辑:

vim /etc/apache2/sites-available/svn

做以下相应的修改和添加:

NameVirtualHost *:443
<VirtualHost *:443>
SSLEngine
SSLCertificateFile /etc/apache2/ssl/apache.pem
SSLProtocol all
SSLCipherSuite HIGH:MEDIUM
……

5,使虚拟主机生效:

a2ensite svn
/etc/init.d/apache2 restart

6,新建一个SVN Repository档案库

sudo mkdir /var/svn
sudo svnadmin create /var/svn/newRepo
sudo chown -R www-data:www-data /var/svn/newRepo
chmod -R g+ws /var/svn/newRepo

7,为SVN Repository档案库设置访问权限

sudo htpasswd2 -c -m /etc/apache2/dav_svn.passwd 用户名

该命令会将该“用户名”添加到权限列表中去

8,修改WebDAV和SVN配置,使权限设置有效
在/etc/apache2/mods-available/dav_svn.conf文件中添加以下内容

DAV svn
SVNParentPath /var/svn
AuthType Basic
AuthName “Subversion Repository”
AuthUserFile /etc/apache2/dav_svn.passwd
Require valid-user
SSLRequireSSL

若不允许匿名访问,则将以下内容注释掉

#<LimitExcept GET PROPFIND OPTIONS REPORT>
#</LimitExcept>

9,重启apache,完成!

sudo /etc/init.d/apache2 restart
 

相关内容

    暂无相关文章