SSL/TLS parcours

SSL/TLS and HTTPS operations

TLS is where PKI meets traffic. This track covers the guarantees the handshake makes, how validation and key exchange fit together, and the operational habits that keep HTTPS from becoming an outage.

6 leçons, environ 25 minutes de lecture, puis l’examen de certification.

01

What TLS guarantees, and what it does not

TLS provides confidentiality, integrity and server authentication for one connection. It does not authorise the client, protect data after it reaches the application, or hide which host the client asked for unless Encrypted Client Hello is deployed.

  • Confidentiality: traffic cannot be read in transit
  • Integrity: modification is detected through authenticated encryption
  • Authentication: the server proves possession of the certificate key
  • Not authorisation: access control remains the application's job
  • Not metadata privacy: SNI and IP addresses are often still visible
02

The handshake in plain terms

The client offers capabilities, the server selects parameters and presents a certificate, both sides derive shared keys, and a Finished message authenticates the transcript. TLS 1.3 shortened this to one round trip by encrypting most of the handshake.

  • ClientHello carries supported versions, cipher suites, SNI and a key share
  • ServerHello selects parameters and contributes its own key share
  • The server proves key ownership by signing the transcript
  • Session resumption with pre-shared keys removes the full handshake on reconnects
  • 0-RTT early data has replay caveats and suits idempotent requests only
03

Cipher suites and forward secrecy

Modern suites pair an ephemeral key exchange with an authenticated cipher. Forward secrecy means recorded traffic stays unreadable if a long-term key leaks later, because session keys were never derived from that long-term key.

  • TLS 1.3 permits only ephemeral (EC)DHE key establishment
  • Prefer AES-GCM or ChaCha20-Poly1305 over CBC-based suites and their padding history
  • Retire TLS 1.0 and 1.1, and keep TLS 1.2 only with modern suites
  • Session ticket keys are secrets too: rotate them like any other key
04

Certificates at the edge: chains, SNI and virtual hosts

One IP address can serve many hostnames, so the server chooses a certificate using SNI. Getting the right certificate and the complete chain to the client is a configuration concern that differs between load balancers, CDNs and origin servers.

  • Send the leaf first, then the intermediates, in that order
  • Wildcards cover exactly one label: *.example.com does not cover a.b.example.com
  • Mutual TLS authenticates clients with their own certificates and a trusted client CA
  • TLS-terminating proxies hold the key, so their custody and configuration matter
05

Keeping HTTPS healthy in production

Most certificate outages are process failures, not attacks: renewal did not run, the reload did not happen, or the chain was incomplete in one environment. Automation plus monitoring removes both failure modes.

  • Renew with ACME or an equivalent automation, and reload the service after renewal
  • Monitor expiry, chain validity and hostname match from outside the network
  • Publish HSTS only after every path and subdomain serves HTTPS
  • Plan for shorter maximum lifetimes, where manual renewal stops being viable
  • Keep one known-good certificate and key available for rollback
06

Debugging handshake failures

Diagnose from the client's point of view, using the exact hostname the application uses. Most errors reduce to four causes: an expired certificate, a name mismatch, an incomplete chain, or an untrusted issuer.

SymptomFirst check
Unable to get local issuer certificateIs the intermediate being sent by the server?
Certificate has expiredDid renewal run, and did the service reload?
Hostname mismatchDoes Subject Alternative Name contain the requested name?
Self-signed certificate in chainIs the private root installed on this client?
Unknown authorityIs the root present in this runtime's trust store?
Protocol version or cipher mismatchDo both sides share an enabled version and suite?
  • openssl s_client -connect host:443 -servername host -showcerts prints the presented chain
  • Never fix a certificate error by disabling verification
  • Behind a TLS-inspecting proxy, trust is delegated to the proxy's private CA by design

Approfondir dans la documentation

Prêt pour la certification ?

40 questions tirées au hasard dans une banque de 100. Il faut 34 bonnes réponses, soit 85 %, et vous pouvez repasser l’examen autant de fois que nécessaire.

Commencer l’examen