Replies: 1 comment
-
RabbitMQ runs on the Erlang VM, as you probably know, and it's Erlang that provides CRL support. Questions / requests:
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hello RabbitMQ team,
We are using RabbitMQ in a cloud environment deployed by Helm Chart - Helm Chart. To fulfill the requirements of the project we have to use mTLS so the clients of the broker to authenticate via client certificates.
The certificate infrastructure is as follows Root CA -> Intermediate CA A -> Intermediate CA B -> Server Certificate (used by RabbitMQ Broker)/ Client Certificates. Server and Client certificate are issued by same certificate chain. It's also mandatory for us to use CRL, so we can revoke certificates in every stage of the Certificate chain. All the certificates in the chain (except the Root CA cert) have valid working CRL Distribution Points. Server certificate have 1 distribution point, Intermediate CA A have 2, Intermediate CA B have 2 distribution points also. Our configuration in the Helm chart is as follows:
In server_certificate.pem we have the certificate chain - Server Certificatre, Intermediate CA B, Intermediate CA A, In ca_certificate.pem we have only Root CA Certificate and server_key.pem is server private key as follows. So we are expecting the CRL chain to work and every CRL to be checked along the chain. But when we try to connect to the broker via valid client certificate we get and error that the handshake is not successful. And we see the following error log in RabbitMQ:
We try to set
{crl_check, best_effort}
and then manage to authenticate via the same client certificate, but CRLs are not checked correctly.We also try the setup without intermediate CAs - Root CA -> Server Cert/Client Cert and when we use
{crl_check, true}
its working without errors.So our question is are Multiple CRLs checked and supported by RabbitMQ?
P.S.: Intermediate CAs have two CRL distribution points each, but only one endpoint per CA is working. As far as we know we can have multiple distribution points for failsafe and shouldn't be a problem if one it now working if there is still accessible and working endpoint. What do you think can this cause a problem for RabbitMQ and Erlang?
Thanks,
Vasil
Beta Was this translation helpful? Give feedback.
All reactions