Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-11007

Using OpenShift generated certificates and client auth cause TLS errors

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Major
    • None
    • 13.0.0.Final
    • Security, Web (Undertow)
    • None

    Description

      Summary

      It seems that when using OpenShift generated certificates and client auth (with want-client-auth="true") the TLS handshake fails with RECV TLSv1.2 ALERT: fatal, record_overflow message.

      Explanation

      I'm using oc cluster up and deploying Keycloak (WF 13 based) on OpenShift local cluster using the (1) template. The service in the the template uses OpenShift generated certificates ("service.alpha.openshift.io/serving-cert-secret-name": "keycloak-x509-https-secret"). Both files are mounted in the Keycloak pod and translated into keystore and truststore (see the configuration after the transformation (2)). Once the pod is up and running, I'm issuing a curl command as shown in (3). curl fails saying that * error:1408F092:SSL routines:ssl3_get_record:data length too long. The server logs with TLS Handshake debugging turned on might be found here (4). As shown in the link, the server has written 16384 bytes.

      I also did a test with manually created certificates (5). The result might be found here (6). As shown in the link, we've written 16050 bytes instead of 16384 and the handshake was successful.

      Possible solution

      Perhaps we should cut the list CAs transmitted by the server when asking for client auth when it exceeds certain number of bytes. It would be helpful to write a warn message too.

      Links:

      Attachments

        Activity

          People

            Unassigned Unassigned
            slaskawi@redhat.com Sebastian Ɓaskawiec (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            12 Start watching this issue

            Dates

              Created:
              Updated: