Skip to content

Elastic Load Balancer - SSL Certificates

Basics

  • An SSL Certificate allows traffic between your clients and your load balancer to be encrypted in transit (in-flight encryption)
    • SSL refers to Secure Sockets Layer, used to encrypy connections
    • TLS refers to Transport Layer Security, which is a newer version
    • Nowadays, TLS certificates are mainly used, but people still refer as SSL
  • Public SSL certificatres are issued by Certificate Authorities (CA)
    • Comodo, Symantec, GoDaddy, GlobalSign, Digicert, Letsencrypt, etc...
  • SSL certificates have an expirateion date (you set) and must be renewed

Load Balancer - SSL Certificates

  • The load balancer uses an X.509 certificate (SSL/TLS server certificate)
  • You can manage certificates using ACM (AWS Certificate Manager)
  • You can upload your own certificates alternatively
  • HTTPS listener:
    • You must specify a default certificate
    • You can use SNI (Server Name Indication) to specify the hostname they reach
    • Ability to specify a security policy to support older version of SSL / TLS (legacy clients)

SSL - Server Name Indication

  • SNI solves the problem of loading multiple SSL certificates onto one web server (to serve multiple websites)
  • It's a newer protocol, and requires the client to indicate the hostname of the target server in the inital SSL handshake
  • The server will then find the correct certificate, or return the default one

Note: - Only works for ALB & NLB (newer generation), CloudFront - Does not work for CLB (older gen)

Elastic Load Balancers - SSL Certificates

  • Classic Load Balancer (v1)

    • Support only one SSL certificate
    • Must use multiple CLB for multiple hostname with multiple SSL certificates
  • Application Load Balancer (v2)

    • Supports multiple listeners with multiple SSL certificates
    • Uses Server Nam Indication (SNI) to make it work
  • Network Load Balancer (v2)

    • Supports multiple listeners with multiple SSL certificates
    • Uses Server Name Indication (SNI) to make it work