I’ve set up “Full (strict)” TLS between my origin server and Cloudflare.
I’ve then set up a Health Check to do a HTTPS GET using the origin server’s IP address, and manually setting the Host header to the right hostname. (As far as I understand, I can’t use the DNS hostname, as that won’t point to the origin server.)
I found this article https://developers.cloudflare.com/health-checks/health-checks-analytics/#tls-protocol-error with the following details:
Cause
This error can occur if you are using an older version of TLS or your origin server is not configured for HTTPS.
Solution
Ensure that your origin server supports TLS 1.2 or greater and is configured for HTTPS.
I have confirmed that the server is set to use TLS1.2, but I’m not sure why it’s returning “TLS protocol error”
The line “tlsv13 alert certificate required” is indicating that the client certificate that Cloudflare uses to keep the “Full (strict)” TLS set up is not present.
It appears that I cannot use the “Full (strict)” mode and use a Health Check from Cloudflare?
No client certificate is required for Full (Strict). A server certificate issued by a publicly trusted CA or the Cloudflare Origin CA is the requirement.
It is signed by the Cloudflare Origin CA. Save the Cloudflare Origin CA root certificate locally and use curl with the--cacert option pointed to that file and it should clear that notice.
It has been a while since I set all this up. It’s not the “Full (Strict)” that requires the client certificate, it’s the “Authenticated Origin Pulls”
I hope I’m understanding this correctly, as that does require a client cert, that Cloudflare uses when it’s hitting the origin server.
I could still be looking in the wrong places, but I’m still not sure that the server is mis-configured to TLS, but obviously I’ve got something wrong as the Health Check is reporting the TS Protocol Error…
Are you performing Standalone Health Checks or health checks related to load balancing? I only see mention of “Simulate Zone” in the documentation for the load balancer checks.
I escalated this post for the attention of the Customer Support Team so they can get back to you here. I shared your ticket number here so that they can track it.
If you could please see the ticket. I have requested some info and testing to be done within the ticket. Thank you for your patience. We appreciate it.