Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
technique:docker:general:traefik [2020/10/07 20:42] – qduchemi | technique:docker:general:traefik [2021/10/17 02:49] – qduchemi | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{indexmenu_n> | + | {{indexmenu_n> |
# Traefik, un reverse-proxy pour Docker | # Traefik, un reverse-proxy pour Docker | ||
Ligne 38: | Ligne 38: | ||
< | < | ||
- | C'est une solution simple, néanmoins elle nécessite d' | + | C'est une solution simple, néanmoins elle nécessite d' |
## Utiliser un reverse proxy | ## Utiliser un reverse proxy | ||
Ligne 47: | Ligne 47: | ||
* Un *reverse proxy* est un serveur vers lequel sont redirigées toutes les requêtes qui **entrent** vers un ordinateur. | * Un *reverse proxy* est un serveur vers lequel sont redirigées toutes les requêtes qui **entrent** vers un ordinateur. | ||
- | L' | + | L' |
+ | |||
+ | {{ : | ||
< | < | ||
Ligne 55: | Ligne 57: | ||
C'est pourquoi nous utilisons Traefik, un outil clé en main pour Docker. Traefik fonctionne comme un reverse proxy traditionnel, | C'est pourquoi nous utilisons Traefik, un outil clé en main pour Docker. Traefik fonctionne comme un reverse proxy traditionnel, | ||
- | {{ : | + | {{ : |
* L' | * L' | ||
Ligne 63: | Ligne 65: | ||
En somme, pour ajouter un nouveau service accessible depuis internet via HTTPS, il suffit d' | En somme, pour ajouter un nouveau service accessible depuis internet via HTTPS, il suffit d' | ||
+ | |||
+ | ## Configuration | ||
+ | |||
+ | < | ||
+ | |||
+ | On ne présente pas ici la manière de configurer Traefik, qui évolue au fil du temps, mais les choix qui ont été faits et les points de vigilance. | ||
+ | |||
+ | ### Sécurisation | ||
+ | |||
+ | Traefik permet de sécuriser les services web en établissant une connexion TLS (HTTPS) entre les clients et lui. Il communique ensuite avec les conteneurs sur le réseau privé Docker, en clair (HTTP). Il est donc fondamental qu'il soit bien sécurisé. En particulier, | ||
+ | |||
+ | * Forcer à rediriger les requêtes HTTP vers HTTPS. | ||
+ | * Utilisation de Let's Encrypt pour créer et renouveller automatiquement les certificats des services. | ||
+ | * Restriction de la version de TLS minimale (actuellement, | ||
+ | * Restriction des algorithmes de chiffrement utilisés (*ciphers*), | ||
+ | * Injection de *headers* de sécurité dans toutes les requêtes et réponses, permettant de limiter les risques d' | ||
+ | |||
+ | ### Performance | ||
+ | |||
+ | Traefik est aussi configuré pour compresser l' | ||
+ | |||
+ | ### Docker | ||
+ | |||
+ | Traefik se trouve dans le réseau Docker appelé `proxy`. Il inspecte tous les conteneurs de ce réseau et décide s'il doit router vers ces conteneurs, en fonction de leurs labels. | ||
+ | |||
+ | < |