2 Certificate problems

OpenSSL used with CRLs and for some CA in the certificate chain its CRL is not included in TLSCRLFile

In TLS server log in case of OpenSSL peer:

failed to accept an incoming connection: from 127.0.0.1: TLS handshake with 127.0.0.1 returned error code 1: \
           file s3_srvr.c line 3251: error:14089086: SSL routines:ssl3_get_client_certificate:certificate verify failed: \
           TLS write fatal alert "unknown CA"

In TLS server log in case of GnuTLS peer:

failed to accept an incoming connection: from 127.0.0.1: TLS handshake with 127.0.0.1 returned error code 1: \
           file rsa_pk1.c line 103: error:0407006A: rsa routines:RSA_padding_check_PKCS1_type_1:\
           block type is not 01 file rsa_eay.c line 705: error:04067072: rsa routines:RSA_EAY_PUBLIC_DECRYPT:paddin

CRL verlopen of verloopt tijdens de serverwerking

OpenSSL, in serverlog:

  • voor verloop:
kan geen verbinding maken met proxy "proxy-openssl-1.0.1e": TCP succesvol, kan geen TLS tot stand brengen met [[127.0.0.1]:20004]:\
           SSL_connect() gaf SSL_ERROR_SSL terug: bestand s3_clnt.c regel 1253: fout:14090086:\
           SSL-routines:ssl3_get_server_certificate: certificaatverificatie mislukt:\
           TLS schrijft fataal waarschuwingsbericht "certificaat ingetrokken"
  • na verloop:
kan geen verbinding maken met proxy "proxy-openssl-1.0.1e": TCP succesvol, kan geen TLS tot stand brengen met [[127.0.0.1]:20004]:\
           SSL_connect() gaf SSL_ERROR_SSL terug: bestand s3_clnt.c regel 1253: fout:14090086:\
           SSL-routines:ssl3_get_server_certificate: certificaatverificatie mislukt:\
           TLS schrijft fataal waarschuwingsbericht "certificaat verlopen"

Het punt hier is dat met een geldige CRL een ingetrokken certificaat wordt gemeld als "certificaat ingetrokken". Wanneer de CRL verloopt, verandert de foutmelding in "certificaat verlopen", wat nogal misleidend is.

GnuTLS, in serverlog:

  • voor en na het verlopen hetzelfde:
kan geen verbinding maken met proxy "proxy-openssl-1.0.1e": TCP succesvol, kan geen TLS tot stand brengen met [[127.0.0.1]:20004]:\
             ongeldig peer-certificaat: het certificaat is NIET vertrouwd. De certificaatketen is ingetrokken.

Zelfondertekend certificaat, onbekende CA

OpenSSL, in logboek:

fout:'zelfondertekend certificaat: SSL_connect() heeft de resultaatcode ingesteld op SSL_ERROR_SSL: bestand ../ssl/statem/statem_clnt.c\
             regel 1924: fout:1416F086:SSL-routines:tls_process_server_certificate: certificaatverificatie mislukt:\
             TLS schrijft fataal waarschuwingsbericht "onbekende CA"'

Dit werd waargenomen toen het servercertificaat per ongeluk dezelfde Issuer- en Subject-string had, hoewel het was ondertekend door een certificaatautoriteit (CA). Issuer en Subject zijn gelijk in het top-level CA-certificaat, maar ze mogen niet hetzelfde zijn in het servercertificaat. (Dit geldt ook voor proxy- en agentcertificaten.)

Om te controleren of een certificaat dezelfde Issuer- en Subject-vermeldingen bevat, voert u het volgende uit:

openssl x509 -in <jouwcertificaat.crt> -noout -text

Het is acceptabel dat het root (top-level) certificaat identieke waarden heeft voor Issuer en Subject.