Que sont les ACL HAProxy ?

Dans HAProxy, les ACLs permettent d’inspecter les requêtes entrantes pour le routage, la sécurité ou les redirections.

Syntaxe de Base

acl <nom_acl> <critere> [flags] <valeur>

Cas d’Utilisation Courants

1. Routage par Domaine

frontend main_frontend
    bind *:80
    acl is_blog hdr(host) -i blog.exemple.com
    use_backend blog_servers if is_blog

2. Routage par Chemin

frontend main_frontend
    bind *:80
    acl app_api path_beg /api/
    use_backend api_servers if app_api

3. Blocage d’IPs

frontend main_frontend
    bind *:80
    acl blocked_ip src 203.0.113.50
    http-request deny if blocked_ip

4. Redirection vers HTTPS

frontend http_in
    bind *:80
    http-request redirect scheme https code 301 if !{ ssl_fc }

5. Routage par User-Agent

frontend main_frontend
    bind *:80
    acl is_mobile hdr_sub(User-Agent) -i android iphone
    use_backend mobile_servers if is_mobile

Résumé

  • Testez toujours la syntaxe avec haproxy -c avant de recharger.

Articles Connexes