2 votes

Comment exclure certains chemins/page de la certification du client dans Apache 2

J'essaie de configurer un serveur Apache avec la certification du client activée. Pour que les clients puissent accéder au contenu avec un certificat client valide.

Disons que le serveur fonctionne en tant que

https://myserver/myservice/

Je dois également fournir une interface à mes clients pour qu'ils puissent obtenir leurs certificats de client en fournissant des informations d'authentification à l'adresse suivante

https://myserver/myservice/register

Une fois les informations téléchargées vérifiées, il renvoie un certificat client.

Si je comprends bien, ce chemin devrait être exclu du mécanisme de certification du client, simplement parce qu'il est utilisé pour générer des certs. La question est donc la suivante : comment puis-je spécifier la configuration de httpd pour y parvenir ?

Ma configuration actuelle est la suivante :

ProxyPass /myservice/register http://localhost:4444/register

<Virtualhost *:443>
    ServerName myserver
    DocumentRoot /path/to/my/server/root
    ProxyPass /myservice/ ajp://localhost:8009/myservice/
    SSLEngine on
    SSLProtocol all -SSLv2
    SSLCertificateFile /path/to/server.cert
    SSLCertificateKeyFile /path/to/server.key
    ...
    SSLVerifyClient require
    SSLVerifyDepth 10
    SSLCACertificateFile /path/to/ca.buddle.pem
</Virtualhost>

Avec cette configuration, je peux obtenir le certificat du client à partir de

http://myserver/myservice/register

puis accéder au service en l'utilisant. Pourtant, je n'ai pas réussi à le configurer en https, afin de pouvoir fermer le port 80.

2voto

Arun R Points 3385

J'ai maintenant la solution, il suffit d'utiliser ou pour exclure le chemin de l'URL cible.

<Virtualhost *:443>
    ServerName myserver
    DocumentRoot /path/to/my/server/root
    ProxyPass /myservice/register http://localhost:4444/register
    ProxyPass /myservice/ ajp://localhost:8009/myservice/
    SSLEngine on
    SSLProtocol all -SSLv2
    SSLCertificateFile /path/to/server.cert
    SSLCertificateKeyFile /path/to/server.key
    ...
    SSLVerifyClient require
    SSLVerifyDepth 10
    SSLCACertificateFile /path/to/ca.buddle.pem

    <LocationMatch ^/myservice/register$>
        SSLVerifyClient none
    </LocationMatch>

</Virtualhost>

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X