Veit Schiele Communications

Veit Schiele Communications

Apache2-Konfiguration

erstellt von Veit Schielezuletzt verändert: 06.07.2012 18:04 Uhr © Veit Schiele 2006–2011
Artikelaktionen

Vorbedingungen

Apache httpd 2.0 mit mod_dav-Modul wird ebenso erwartet wie Subversion und das mod_dav_svn-Modul. Nun muss httpd mit dem ``mod_dav-Modul gestartet werden, das mod_dav_svn an mod_dav gebunden werden und die httpd.conf-Datei so konfiguriert werden, dass das Repository ausgeliefert wird.

Grundlegende Apache-Konfiguration

/etc/apache2/mods-enabled/dav_svn.conf:

<Location /svn>
    DAV svn
    SVNParentPath /var/lib/svn
</Location>

Anmerkung:

  • Im allgemeinen kann die ServerName-Anweisung in /etc/apache2/httpd.conf angegeben werden:

    ServerName dev.veit-schiele.de
    
  • Wird Apache’s Virtual-Hosting-Unterstützung mit der NameVirtualHost-Anweisung verwendet, muss die ServerAlias-Anweisung zum Spezifizieren der zusätzlichen Servernamen verwendet werden.

Authentifizierung

Nun ist das Repository für anonyme Nutzer zugänglich. Um dies zu verhindern, müssen Richtlinien für die Authentifizierung festgelegt werden.

Die einfachste Möglichkeit der Authentifizierung ist der HTTP-Authentifizierungsmechanismus. Apache bietet ein htpasswd-Hilfsprogramm um eine Liste der Nutzernamen und Passwörter zu verwalten:

$ ### First time: use -c to create the file
$ ### Use -m to use MD5 encryption of the password, which is more secure
$ htpasswd -cm /etc/svn-auth-file veit
New password: *****
Re-type new password: *****
Adding password for user veit
$

Anschließend können die httpd.conf-Anweisungen im Location-Abschnitt angegeben werden, die Apache mitteilen, was mit der neuen Passwort-Datei gemacht werden soll. Wir verwenden das Basic authentication system wobei AuthName ein frei wählbarer Name für die Authentifizierungsdomäne und Require valid-user Apache mitteilt, dass alle Anfragen einen angemeldeten Nutzer erwarten:

<Location /svn>
    DAV svn
    SVNParentPath /usr/local/svn
    AuthType Basic
    AuthName "VSC Repository"
    AuthUserFile /etc/svn-auth-file
    AuthzSVNAccessFile /usr/local/svn/conf/authz
    Satisfy Any
    Require valid-user
</Location>
Artikelaktionen