SSL/TLS termination and client certificate handling
Domain 6 covers TLS termination and re-encryption on LTM, plus client certificate verification. The exam focuses on which profile does what, how certificate chains are built, and what a handshake failure alert number tells you.
Front and back
- Client SSL terminates TLS from the client; Server SSL re-encrypts toward the pool. Both are profiles attached to the virtual server.
- Certificates, keys, chains and CA bundles are separate objects referenced by the profile.
- The chain must include intermediates; a leaf-only chain fails on clients that cannot fetch them.
- Settings that matter: cipher string, enabled TLS versions, session cache size and timeout, renegotiation, OCSP stapling.
- SNI lets one virtual server present different certificates based on the name the client sends; the default profile handles clients that send no SNI, and the SNI Require option rejects those clients.
Client certificates
- Request Client Certificate offers Ignore, Request and Require; frequency is once per session or on every request.
- The profile's Trusted Certificate Authorities bundle decides which issuer is acceptable; CRL or OCSP options control revocation checking.
- Client Certificate Constrained CA limits which CA may issue acceptable client certificates.
- Validation happens during the handshake, so failures surface as TLS alerts, not HTTP errors.
Worked example
Mutual TLS is enabled with a Require client certificate profile. Clients from an acquired company fail with TLS alert 48 (unknown CA). Reasoning: the profile's trusted CA bundle contains only public roots; the acquired company's certificates come from its internal CA, which is not present and therefore cannot be verified. Add that CA certificate to a bundle used by this profile (or a constrained CA entry) and retest with openssl s_client -connect <vip>:443 -cert client.crt -key client.key. Alert 40 (handshake failure) usually means the client sent no certificate while the profile requires one.
Traps
- Terminating on the front and forgetting the server SSL profile, leaving the pool leg in clear text.
- Uploading the leaf certificate without intermediates.
- Testing handshake changes without a new session; cached sessions mask the change.
- Assigning a certificate directly to a virtual server instead of through a profile.