RousselTMLEARNING

Proxy & réseau

Sécurité et SSL avec HAProxy

Guide complet sur la terminaison SSL, le chiffrement des flux et la sécurisation du serveur HAProxy.

1. Terminaison SSL (Offloading) #

HAProxy gère le déchiffrement pour soulager les serveurs web.

Configuration du certificat #

C'est la méthode la plus courante. HAProxy possède le certificat SSL et communique en HTTP clair avec les backends sur un réseau privé sécurisé.

frontend https-in
    bind *:443 ssl crt /etc/ssl/certs/mon-site.pem
    default_backend app_servers

Note : Le fichier .pem doit contenir le certificat et la clé privée.

2. SSL Pass-through #

Transmettre le flux chiffré sans inspection.

Utilisation du mode TCP #

Si vous ne voulez pas que HAProxy déchiffre le trafic (pour des raisons de confidentialité totale), utilisez le mode TCP (Layer 4).

frontend stream-in
    mode tcp
    bind *:443
    default_backend secure_web

3. Forcer le HTTPS #

Rediriger automatiquement les utilisateurs vers le port sécurisé.

Redirection HTTP vers HTTPS #

Une règle simple dans le frontend HTTP suffit.

frontend http-in
    bind *:80
    http-request redirect scheme https unless { ssl_fc }

Conclusion #

Un point central pour la sécurité.

Performance et Sécurité #

En centralisant le SSL, vous simplifiez la gestion des certificats (ex: Let's Encrypt) et optimisez les performances de vos serveurs d'application.

Pour aller plus loin