| Description | This article describes how to make a CMP password based initialization request from FortiGate to FortiAuthenticator. |
| Scope | Fortigate7.6.X FortiAuthenticator 6.6+. |
| Solution |
Follow the General instructions to enable the service on the FortiAuthenticator.
Import the root Certificate authority (fac.cz.root in this example) onto the FortiGate (Create/import CA certificate).
Configure a Certificate Enrollment.
At the time of writing, wildcard CMP Certificate Enrollment isn't supported.
Key Usages may vary and depend on the scope of the requested certificate.
Making a request from FortiGate with 'diagnose debug app cmp -1' will have similar results to the following: FG100F-5 # execute vpn certificate local generate cmp-rsa cmptest1 2048 http://10.109.21.113:80 /app/cert/cmp2 fac.root "" fgt100f fortinet1 "CN=fgt100f.local" FG100F-5 # __cmp_ctx_create()-351: Set 'fac.root' as srvCert. __parse_http_one_line()-981: HTTP result code 200. __cmp_read()-1033: HTTP header: X-XSS-Protection: 1; mode=block __cmp_read()-1033: HTTP header: X-Content-Type-Options: nosniff __cmp_read()-1033: HTTP header: Referrer-Policy: strict-origin-when-cross-origin __cmp_read()-1033: HTTP header: Permissions-Policy: fullscreen=(self) __cmp_read()-1033: HTTP header: Connection: close __cmp_read()-1033: HTTP header: Content-Type: application/pkixcmp __cmp_read()-1033: HTTP header: __cmp_read()-1098: Content length 1933. __parse_http_one_line()-981: HTTP result code 200. __cmp_read()-1033: HTTP header: X-XSS-Protection: 1; mode=block __cmp_read()-1033: HTTP header: X-Content-Type-Options: nosniff __cmp_read()-1033: HTTP header: Referrer-Policy: strict-origin-when-cross-origin __cmp_read()-1033: HTTP header: Permissions-Policy: fullscreen=(self) __cmp_read()-1033: HTTP header: Connection: close __cmp_read()-1033: HTTP header: Content-Type: application/pkixcmp __cmp_read()-1033: HTTP header: __cmp_read()-1098: Content length 244.
To stop the above debug commands, run the following commands:
diagnose debug disable diagnose debug reset
In the above:
FortiAuthenticator CMP debug output can be viewed on the Debug page -> Others -> SCEP/CMP. Debug needs to be enabled beforehand by selecting 'Enter debug mode'.
The request is successfully processed by the FortiAuthenticator and the certificate is signed.
The successful or failed certificate signing request can also be viewed under the FortiAuthenticator GUI -> Log Access -> Log Access -> Logs. Additional troubleshooting is possible if the CMP request is made over an unencrypted HTTP port 80. Packet capture on FortiAuthenticator CLI can be generated with:
execute tcpdumpfile -i any port 80
Reproduce the process, stop the capture with CTRL-C and download it at https://fac-ip/debug/pcap-dump
Initial signing request:
Renewing signing request:
|
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.