Sur nos serveurs, nous utilisons haproxy pour vérifier les certificats côté client. Nous construisons un fichier ca-bundle en combinant les certificats intermédiaires G1 et EV et les certificats racine G1 et EV. Nous avons également un certificat de serveur sans les certificats intermédiaires.

Maintenant, nous avons un problème. Lorsqu'un utilisateur appelle le serveur avec un certificat client, cela fonctionne correctement. Mais le problème est que lorsque le certificat serveur est retourné, ce certificat contient également les certificats intermédiaires ET le certificat racine. Nous ne devons renvoyer notre certificat qu'avec les certificats intermédiaires ET PAS le certificat racine.

Pour activer le ssl, nous utilisons cette option de configuration haproxy:

frontend https
    mode http
    bind *:443 accept-proxy ssl verify optional crt-ignore-err all crt <SERVER-CERT>.pem-key ca-file <COMBINDED-CERTS>.ca-bundle crl-file <CRL-FILE>.crl

    default_backend ssl-proxy

    # rest of the configuration

Nous avons essayé de supprimer les certificats racine du bundle CA et cela a abouti à ce que le certificat racine ne soit pas ajouté au certificat serveur, mais une fois supprimé du bundle CA, les certificats clients ne peuvent pas être vérifiés. Cette option n'est pas utilisable.

La question est maintenant de savoir pourquoi cela se produit et comment peut-on changer le fait que le certificat racine ne soit pas ajouté au certificat de serveur.

0
botenbreuk 10 févr. 2021 à 17:32

1 réponse

Meilleure réponse

Je pense que vous recherchez ca-verify-file, qui a été introduit dans HAProxy 2.2.

ca-verify-file

Ce paramètre désigne un fichier PEM à partir duquel charger les certificats CA utilisés pour vérifier le certificat du client. Il désigne les certificats CA qui ne doivent pas être inclus dans les noms CA envoyés dans le message Hello du serveur. En règle générale, "ca-file" doit être défini avec des certificats intermédiaires et "ca-verify-file" avec des certificats pour terminer la chaîne, comme l'autorité de certification racine.

0
dcorbett 10 févr. 2021 à 14:49