tls.cert.sct_missing

No Certificate Transparency (SCT Missing)

What we check

We check every RFC 6962 Signed Certificate Timestamp (SCT) delivery channel: embedded in the leaf certificate, the TLS handshake extension, and the stapled OCSP response. This finding fires when no SCTs are found in any channel.

What this finding means

No Signed Certificate Timestamps were found. The certificate was either not submitted to a public Certificate Transparency log, or the SCTs are not being delivered to connecting clients.

Why it matters

How to fix

  1. Use a CA that publishes to CT logs. Let's Encrypt and all major commercial CAs embed SCTs automatically — renewing your certificate is usually all it takes:

    certbot renew --force-renewal
    systemctl reload postfix
    
  2. Verify SCTs are present after renewal:

    openssl s_client -starttls smtp -connect mail.example.com:25 \
        -servername mail.example.com 2>/dev/null | \
        openssl x509 -noout -text | grep -A2 "CT Precertificate SCTs"
    

How it's graded

A missing SCT is informational and carries no point deduction. See Grading Methodology for the full scoring model.

Evidence example

$ openssl s_client -starttls smtp -connect mail.example.com:25 \
    -servername mail.example.com 2>/dev/null | \
    openssl x509 -noout -text | grep "CT Precertificate"
(no output — no SCT extension in certificate)

TLS handshake extension: no SCTs
Stapled OCSP response: no SCTs

References