From dec44e7ffad16751099f2a4988af9812b5212516 Mon Sep 17 00:00:00 2001 From: jlecour Date: Thu, 12 Jan 2017 11:40:12 +0100 Subject: [PATCH] =?UTF-8?q?Pr=C3=A9cisions=20pour=20la=20terminaison=20SSL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HowtoHaproxy.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/HowtoHaproxy.md b/HowtoHaproxy.md index f566143d..877f30f7 100644 --- a/HowtoHaproxy.md +++ b/HowtoHaproxy.md @@ -119,6 +119,10 @@ Dans un frontend il faut ensuite faire un "binding" avec des arguments pour le S ~~~ frontend fe_https bind 0.0.0.0:443 ssl crt /etc/ssl/haproxy/example_com.pem + + http-request set-header X-Forwarded-Proto: https + + default_backend myback ~~~ Le fichier `example_com.pem` doit contenir le certificat ainsi que la clé privée et éventuellement des paramètres Diffie-Hellman (tout au format PEM). @@ -129,6 +133,26 @@ Pour chaque fichier PEM trouvé, HAProxy cherchera un fichier `.ocsp` du même n Touts les détails de configuration pour l'attribut `crt` sont consultables sur +#### Terminaison SSL + +Si HAProxy doit faire la **terminaison SSL et dialoguer en clair** avec le backend, on se contente de transmettre la requête. + +~~~ +backend myback + balance roundrobin + server web01 192.0.2.1:80 check observe layer4 weight 100 + server web02 192.0.2.2:80 check observe layer4 weight 100 +~~~ + +Si HAProxy doit faire la **terminaison SSL et maintenir une communication chiffrée** avec le backend, on doit le spécifier dans le backend (avec l'argument `ssl`, car le port 443 ne suffit pas à forcer le ssl). + +~~~ +backend myback + balance roundrobin + server web01 192.0.2.1:443 ssl check observe layer4 weight 100 + server web02 192.0.2.2:443 ssl check observe layer4 weight 100 +~~~ + ### Exemple avec plusieurs backends et du « sticky session » ~~~