Project

General

Profile

Subversion Installation on Debian Etch

Installing Subversion

Currently, Subversion 1.4.2 is included within the stable release of Debian Etch. It can be installed easily with the following command line:

# apt-get install subversion subversion-tools

Installing the Apache2 Module for Subversion

In order to use the Apache2 web server as Subversion backend, the module libapache2-svn must be installed.

# apt-get install libapache2-svn

Configuring Subversion

Create Repository

First, we have to create a subversion repository.

# svnadmin create /svn

Integrating Subversion for Apache

Before enabling subversion for Apache, Apache should be SSL-enabled.

Next, the configuration of the subversion module takes place in the file /etc/modules-available/davsvn.conf_.

The following configuration expects multiple SVN repositories below the path /svn/ and uses SSL Client Authentication to grant access to the repositories for the example users "Peter Miller" and "Claus Burger". The user name variabel is set to the Common Name of the certificate presented by clients. So. their full name should appear in the subversion logs.

<Location /svn>

  # Enables dav hanling of this path
  DAV svn

  # Set this to the path to your repository
  #SVNPath /var/lib/svn
  # Alternatively, use SVNParentPath if you have multiple repositories under
  # under a single directory (/var/lib/svn/repo1, /var/lib/svn/repo2, ...).
  # You need either SVNPath and SVNParentPath, but not both.
  SVNParentPath /svn


  # Authentication based on client certificates
  SSLRequireSSL
  SSLOptions +ExportCertData
  SSLVerifyClient require
  SSLVerifyDepth 2
  SSLUserName SSL_CLIENT_S_DN_CN
  SSLRequire %{SSL_CLIENT_S_DN_CN} in {"Peter Miller", "Claus Burger"}

</Location>

Nevertheless, you can use any other Apache Authentication mechanism to authenticate users. Replace the directives below the "Authentication" comments to change thisbehaviour.

Add picture from clipboard (Maximum size: 40 MB)