Subversion über https mit WebDAV und Client-Zertifikat
Anna Lehmann
- webserver
Hallo
ich möchte, dass der WebDAV Zugriff über eine verschlüsselte Verbindung abläuft und der Client ein Client-Zertifikat benötigt.
Der WebDAV Zugriff über eine verschlüsselte Verbindung ist soweit eingerichtet und funktioniert.
CA-, Server- und Client-Zertifikate habe ich erzeugt.
Das Serverzertifikat und die Client-Zertifikate wurden mit dem CA-Zertifikat signiert. Die Client-Zertifikate wurden in das PKCS#12 Format konvertiert.
<VirtualHost xxx.xxx.xxx.xxx:443>
ServerName svn.example.com
SSLEngine On
#SSLCertificateFile /etc/apache2/ssl/server.pem
SSLCertificateFile /etc/apache2/ssl/server.crt
SSLCertificateKeyFile /etc/apache2/ssl/server.key
<Location /projekt1>
DAV svn
SVNPath /var/lib/svn/projekt1
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/apache2/dav_svn.passwd
AuthzSVNAccessFile /var/lib/svn/projekt1/conf/authz
#<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
#</LimitExcept>
</Location>
</VirtualHost>
Jetzt fehlt mir nur noch, dass der Zugriff nur mit dem signiertes Client-Zertifikat möglich ist.
Wie kann/muss ich das realisieren?
Muss das Client Zertifikat dafür mit dem CA- oder dem Server-Zertifikat signiert werden?
Anna
Hallo Anna,
Zunächst musst Du das SSL-Modul dazu bringen, Client-Zertifikate zu verlangen. Dazu musst du u.A. festlegen, welche CAs Du überhaupt akzeptierst.
Dann gibt es eine Option "FakeBasicAuth", die dazu führt, dass der Benutzername aus dem Client-Zertifikat verwendet wird. Die Passwörter werden dann irrelevant.
Dort gibt es eine Anleitung dazu: http://httpd.apache.org/docs/2.2/ssl/ssl_howto.html#accesscontrol
Grüße
Daniel