Created on
08-02-2023
04:02 AM
Edited on
02-02-2025
10:10 PM
By
Anthony_E
This article provides a basic understanding of certificates and some basic troubleshooting steps for a wide variety of certificate issues.
FortiOS.
FortiGate uses certificates in various different ways, and will need to interact with various different certificates as well.
Introduction:
A certificate itself is essentially a proof of identity, and contains a variety of fields. The most relevant fields for troubleshooting are usually:
Subject: The certificate subject, usually some kind of identifier like common name (CN), a URL or email.
Subject Alternative Name (SAN): Alternative names for the subject (Aliases), like additional DNS names or IPs.
Key Usage: What the certificate (and accompanying keypair) may be used for.
Extended Key Usage: What the certificate (and accompanying keypair) may be used for.
Validity (To/From): Start and End date the certificate is valid.
Basic Constraint: Is the certificate an authority or not.
Broadly speaking, there are three different types of relevant certificates:
Certificate Authority (CA): A certificate allowed to issue/sign other certificates.
Server certificate: A certificate used by a server to prove its identity. This needs to be issued by a Certificate Authority, and is required in TLS-based communication like HTTPS or LDAPS. Extended Key Usage should include '(Web) Server Authentication'.
FortiGate uses a server certificate in various contexts:
Client certificate: A certificate used by a client to prove their identity. This needs to be issued by a Certificate Authority, and is required in some certificate-based authentication mechanisms, like EAP-TLS. Extended Key Usage should include 'Client Authentication'.
- FortiGate uses client certificates to allow users to authenticate
- This happens primarily through user-peer configuration (CLI-only, 'config user peer'), with a subject and issuing CA defined; a client certificate matches a user peer if the subject matches and the certificate is issued by the expected CA.
- SSLVPN allows enabling a general client certificate requirement; with this setting, the client certificate subject is irrelevant, but the issuing CA must be trusted by the FortiGate.
CRL/OCSP: CRL (Certificate Revocation List) and OCSP (Online Certificate Status Protocol) are mechanisms to allow clients to verify that certificates are still valid and not compromised in some way. CRL/OCSP is maintained by the issuing Certificate Authorities. These relevant URLs and OCSP protocol should NOT be blocked; some clients refuse to trust certificates if they cannot independently verify the certificate status via a CRL or OCSP.
Certificate management:
FortiGate allows for some Certificate Management, such as uploading CA certificates and server certificates. This is available globally and on a per-vdom basis, and might need to be enabled in System -> Feature Visibility.
A detailed guide (including how to import certificates, and create new certificates (CSRs)) is available in this section of the Administration Guide.
The following sections are particularly relevant:
Troubleshooting:
In general, when encountering any kind of certificate errors, the following should always be checked:
For the certificate in question:
For the certificate chain:
For CRL/OCSP:
Depending on the use case, further checks can be performed.
If the issue is with a server certificate on FortiGate (GUI, API, VPN, captive portal, replacement messages):
If the issue is with a client certificate (certificate authentication against FortiGate):
If the issue is with Deep Inspection:
Useful CLI commands:
View certificates and related configuration:
show certificate ca/local/remote/crl (Global)
show vpn certificate ca/local/remote/crl (VDOM)
show user peer (VDOM)
show vpn ssl/ipsec [...] (VDOM)
show firewall ssl-ssh-profile (VDOM)
Debug certificate-related processes:
diagnose debug app ike -1 (ipsec)
diagnose debug app sslvpn -1 (sslvpn)
diagnose debug app fnbamd -1 (general authentication)
diagnose debug app httpsd -1 (HTTPS-related debug)
diagnose debug wad [...] (proxy-related debug, like deep inspection)
diagnose debug console timestamp enable (prepend timestamps to debug messages)
diagnose debug enable (enable output)
Related articles:
Technical Tip: TLS and the user of Digital Certificates.
Technical Tip: Certificate Errors when accessing a blocked page.
Technical Tip: Certificate Errors in Admin Access.
Technical Tip: Certificate warnings while accessing FortiGate.
FortiGate Cookbook: Preventing certificate warnings with Default Certificates.
Technical Tip: FortiGate PKI certificate usage guide
Technical Tip: FortiGate HTTPS/SSL Certificate Installation (PFX, PKCS12 and PEM)
The Fortinet Security Fabric brings together the concepts of convergence and consolidation to provide comprehensive cybersecurity protection for all users, devices, and applications and across all network edges.
Copyright 2025 Fortinet, Inc. All Rights Reserved.