[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Apache2 und Client-Zertifikate



Hallo,

ich versuche mich gerade an eine Apache2 (Debian/Sarge) Installation die 
_optional_ über Client-Zertifikate authentifiziert.

Folgendermassen sieht meine derzeitige Konfiguration aus:

#Server CA-Chain
SSLCertificateChainFile /etc/apache2/globalsign.pem
#Server Zertifikat
SSLCertificateFile /etc/apache2/servercert.pem
#Server Zertifikat-Key
SSLCertificateKeyFile /etc/apache2/servercert.pem

#CAs der Clients-Auth
SSLCACertificateFile /etc/apache2/ClientServerCA.chain.pem
SSLCARevocationFile /etc/apache2/ClientServerCA-crl.pem
SSLVerifyDepth  2
SSLOptions +StdEnvVars
SSLEngine on

in der zentralen httpd.conf

und anschliessend in einer virtual Host Config:
<VirtualHost *>
        ServerName <DOMAIN>
        Documentroot <PATH>
        CustomLog /www/logs/<DOMAIN>.log "%v %h %l %u %t 
\"%r\" %>s %b  %{SSL_PROTOCOL}x %{SSL_CIPHER}x %{SSL_CLIENT_S_DN_CN}x"

        <Directory <PATH>/smartcard>
                SSLRequireSSL
                SSLVerifyClient require
        </Directory>
        SSLUserName SSL_CLIENT_S_DN_CN
</VirtualHost>

Mein Problem ist folgendes, ich möchte eigentlich "SSLVerifyClient 
optional" haben. 

Leider wird bei Optional das Client-Zertifikat (konqueror fragt nach und 
ich erlaube das Senden) einfach vom Server ignoriert.
Ebenfalls ignoriert wird es, wenn ich die "SSLVerifyClient require" 
Option nicht in das <Directory> verpacke, sondern nur im VirtualHost 
mit drin habe. Das sieht mir dann eigentlich nach einem Bug aus, denn 
laut Dokumentation ist SSLVerifyClient innerhalb der VirtualHost Config 
auch erlaubt.

Zusätzlich würde ich gern Revoked Zertifikate nicht direkt abweisen, 
sondern über die SSL_CLIENT_VERIFY Variable in der benutzten 
Skriptsprache erkennen und normale Login/Password Authentifizierung 
anbieten. Dafür habe ich bisher allerdings noch keine Option gefunden. 
Der Apache bricht die Verbindung zum Client dann jedenfalls einfach ab.

Jemand eine Idee dazu?

-- 
Markus Schulz - msc@antzsystem.de



Reply to: