TLSCRLFile
在TLS服务器日志中,若对端使用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"
在TLS服务器日志中,若对端使用GnuTLS时:
接受传入连接失败:来自127.0.0.1:与127.0.0.1的TLS握手返回错误代码1:
file rsa_pk1.c第103行:错误:0407006A:rsa例程:RSA_padding_check_PKCS1_type_1:
块类型不是01 file rsa_eay.c第705行:错误:04067072:rsa例程:RSA_EAY_PUBLIC_DECRYPT:填充
OpenSSL,在服务器日志中:
无法连接到proxy "proxy-openssl-1.0.1e":TCP连接成功,但无法与[[127.0.0.1]:20004]建立TLS连接:
SSL_connect()返回SSL_ERROR_SSL:file s3_clnt.c第1253行:错误14090086:
SSL例程:ssl3_get_server_certificate:证书验证失败:
TLS写入致命警报"证书已吊销"
无法连接到proxy "proxy-openssl-1.0.1e":TCP连接成功,但无法与[[127.0.0.1]:20004]建立TLS连接:
SSL_connect()返回SSL_ERROR_SSL:file s3_clnt.c第1253行:错误14090086:
SSL例程:ssl3_get_server_certificate:证书验证失败:
TLS写入致命警报"证书已过期"
关键在于:当CRL有效时,被吊销的证书会报告为"证书已吊销"。而当CRL过期后,错误信息会变为"证书已过期",这相当具有误导性。
GnuTLS,在服务器日志中:
无法连接到proxy "proxy-openssl-1.0.1e":TCP连接成功,但无法与[[127.0.0.1]:20004]建立TLS连接:
无效的对等证书:该证书不受信任。证书链已被吊销。
OpenSSL,日志中显示:
error:'self signed certificate: SSL_connect() set result code to SSL_ERROR_SSL: file ../ssl/statem/statem_clnt.c\
line 1924: error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed:\
TLS write fatal alert "unknown CA"'
当服务器证书错误地具有相同的颁发者和主体string时(尽管它是由CA签名的),就会观察到这种情况。在Top级别的CA证书中,颁发者和主体是相同的,但在服务器证书中它们不能相同。(同样适用于proxy和agent证书。)