2 Problemes de certificat

OpenSSL emprat amb CRLs i per algunes autoritats de certificació dins la cadena de certificats no té el CRL inclòs a TLSCRLFile

Al registre del servidor TLS, en cas de peer OpenSSL:

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"

Al registre del servidor TLS, en cas de peer GnuTLS:

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 caducada o caducarà durant el funcionament del servidor

OpenSSL, al registre del servidor:

  • abans de caducar:
cannot connect to proxy "proxy-openssl-1.0.1e": TCP successful, cannot establish TLS to [[127.0.0.1]:20004]:\
           SSL_connect() returned SSL_ERROR_SSL: file s3_clnt.c line 1253: error:14090086:\
           SSL routines:ssl3_get_server_certificate:certificate verify failed:\
           TLS write fatal alert "certificate revoked"
  • després de caducar:
cannot connect to proxy "proxy-openssl-1.0.1e": TCP successful, cannot establish TLS to [[127.0.0.1]:20004]:\
           SSL_connect() returned SSL_ERROR_SSL: file s3_clnt.c line 1253: error:14090086:\
           SSL routines:ssl3_get_server_certificate:certificate verify failed:\
           TLS write fatal alert "certificate expired"

Cal apuntar que amb una CRL vàlida, un certificat revocat és marcat com a "certificat revocat". Quan la CRL caduqui, el missatge d'error esdevé "certificat caducat", que és força enganyós.

GnuTLS, al registre del servidor:

  • abans i després de caducar:
cannot connect to proxy "proxy-openssl-1.0.1e": TCP successful, cannot establish TLS to [[127.0.0.1]:20004]:\
             invalid peer certificate: The certificate is NOT trusted. The certificate chain is revoked.

Certificat autosignat, CA desconeguda

OpenSSL, al registre:

 error:'certificat autosignat: SSL_connect() estableix el codi de resultat a SSL_ERROR_SSL: fitxer ../ssl/statem/statem_clnt.c\
              línia 1924: error:1416F086:Rutines SSL:tls_process_server_certificate: la verificació del certificat ha fallat:\
              TLS escriu una alerta fatal "CA desconeguda"'

Això s'ha observat quan el certificat del servidor tenia per error el mateix emissor i cadena de subjectes, tot i que era signat per la CA. L'emissor i el subjecte són iguals al certificat CA de nivell superior, però no poden ser iguals al certificat del servidor. (El mateix passa amb els certificats de proxy i d'agent).

Per comprovar si un certificat conté les mateixes entrades d'Emissor i Assumpte, executeu:

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