Ces derniers jours je suis en train de voir pour remplacer mon reverse proxy perso qui était resté en haproxy, déplacé dans un container à la va vite..
J'ai donc commencé à expérimenter traefik et ça semble faire le boulot. J'aime beaucoup le côté dynamique avec les labels sur les containers.
Il remplit tous les rôles de mon haproxy :
Autre avantage, il intègre la génération/renouvellement des certificats ssl ce qui va me permettre de virer un vieux script en bash (qui faisait ça très bien, mais au moins ce sera + clean)
Seule contrainte, je me demande si je peux reverse vers un backend qui ne serait pas du docker. Peut être en mettant de la conf en dur.
L'utilisation des stick-table dans haproxy. On peut s'en servir comme compteurs pour empêcher les abus (ddos, crawl..)
Une autre manière de parcourir la doc haproxy
Un peu plus pratique avec le menu à gauche ^^
via VG
Very convenient way to confgure haproxy
via VG Doo
Un lb en Go qui peut "surveiller" les backends comme Docker par exemple pour update sa conf
Pour avoir plusieurs certificats
If a directory name is used instead of a PEM file, then all files found in
that directory will be loaded in alphabetic order unless their name ends with
'.issuer' or '.ocsp' (reserved extensions). This directive may be specified
multiple times in order to load certificates from multiple files or
directories. The certificates will be presented to clients who provide a valid
TLS Server Name Indication field matching one of their CN or alt subjects.
Wildcards are supported, where a wildcard character '' is used instead of the
first hostname component (eg: .example.org matches www.example.org but not
www.sub.example.org).
If no SNI is provided by the client or if the SSL library does not support
TLS extensions, or if the client provides an SNI hostname which does not
match any certificate, then the first loaded certificate will be presented.
This means that when loading certificates from a directory, it is highly
recommended to load the default one first as a file or to ensure that it will
always be the first one in the directory.
zero downtine restart haproxy
Avec : qdisc, iptables
Je me demandais pourquoi mes allow from x.x.x.x ne marchait plus au niveau de on apache... C'est pourtant con, j'ai un haproxy en frontal maintenant ! donc apache voit tout venir de 127.0.0.1 et les allow ne sont plus valides.
Pour résoudre le probleme on peut installer ce mod qui va prendre l'ip dans les headers ajoutés par haproxy (x-forwarded-for) et la considérer comme l'ip source.