Gerador HAProxy
Infraestrutura de Balanceamento de Carga e Proxy de Alto Desempenho

Gerador de Configuração do HAProxy Load Balancer

Gerador e validador de sintaxe de configurações do HAProxy para ambientes de produção.

Privacidade 100% no cliente
Zero transmissão ao servidor
Predefinições:
Configurador de Arquitetura HAProxy
Diretivas Globais e de Desempenhoglobal
Padrões do Proxy e Tempos Limite de Resiliênciadefaults
Frontend e Descarregamento SSL/TLSfrontend
Mitigação DDoS com Stick-Table em Memória
Listas de Controle de Acesso (ACLs)
→
Pools de Servidores Backend (5 Nós)
be_app_clusterhttp
:
:
:
be_static_cachehttp
:
:
Painel Web HAProxy e Exportador Prometheus
#---------------------------------------------------------------------
# HAProxy 3.0 Production Configuration
# Generated via ToolsAA 100% Client-Side Engine
#---------------------------------------------------------------------
global
    log 127.0.0.1:514 local0 notice
    chroot /var/lib/haproxy
    user haproxy
    group haproxy
    daemon
    maxconn 50000
    nbthread 4
    stats socket /run/haproxy/admin.sock mode 660 level admin expose-fd listeners
    stats timeout 30s

    # Hardened Modern SSL/TLS Ciphers (OWASP & Mozilla Modern Standard)
    ssl-default-bind-ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256
    ssl-default-bind-ciphersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256
    ssl-default-bind-options ssl-min-ver TLSv1.2 no-tls-tickets

#---------------------------------------------------------------------
# Common Defaults for all Frontend & Backend Proxies
#---------------------------------------------------------------------
defaults
    log global
    mode http
    option httplog
    option dontlognull
    option redispatch
    retries 3
    timeout connect 5s
    timeout client  50s
    timeout server  50s
    timeout http-keep-alive 15s
    timeout http-request    10s
    timeout queue   1m
    maxconn 30000

#---------------------------------------------------------------------
# Frontend: fe_web_https
#---------------------------------------------------------------------
frontend fe_web_https
    bind *:80
    bind *:443 ssl crt /etc/haproxy/certs/site.pem alpn h2,http/1.1
    http-request redirect scheme https unless { ssl_fc }
    http-response set-header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
    option forwardfor
    http-request set-header X-Forwarded-Proto https if { ssl_fc }
    http-request set-header X-Forwarded-Proto http unless { ssl_fc }
    http-request set-header X-Forwarded-Port %[dst_port]
    compression algo gzip deflate
    compression type text/html text/plain text/css application/javascript application/json

    # Stick-table Rate Limiting & Anti-DDoS
    stick-table type ip size 100k expire 10s store http_req_rate(10s)
    http-request track-sc0 src
    http-request deny deny_status 429 if { sc_http_req_rate(0) gt 120 }

    # ACL Conditions
    acl is_static_assets path_beg /static /assets /favicon.ico

    # ACL Backend Routing Rules
    use_backend be_static_cache if is_static_assets
    default_backend be_app_cluster

#---------------------------------------------------------------------
# Backend: be_app_cluster
#---------------------------------------------------------------------
backend be_app_cluster
    mode http
    balance roundrobin
    cookie SERVERID insert indirect nocache
    option httpchk GET /healthz
    http-check expect status 200,204
    server web01 10.0.1.11:3000 weight 10 check inter 2000 rise 2 fall 3 cookie web01
    server web02 10.0.1.12:3000 weight 10 check inter 2000 rise 2 fall 3 cookie web02
    server web03 10.0.1.13:3000 weight 10 check inter 2000 rise 2 fall 3 cookie web03

#---------------------------------------------------------------------
# Backend: be_static_cache
#---------------------------------------------------------------------
backend be_static_cache
    mode http
    balance roundrobin
    option httpchk GET /healthz
    http-check expect status 200,204
    server nginx-cdn01 10.0.1.51:80 weight 10 check inter 2000 rise 2 fall 3
    server nginx-cdn02 10.0.1.52:80 weight 10 check inter 2000 rise 2 fall 3

#---------------------------------------------------------------------
# HAProxy Real-Time Statistics & Prometheus Metrics Hub
#---------------------------------------------------------------------
listen stats
    bind *:8404
    mode http
    stats enable
    stats uri /stats
    stats refresh 5s
    stats auth admin:SuperClusterSecret2026
    stats show-node
    stats show-legends

    # Prometheus Exporter Endpoint
    http-request use-service prometheus-exporter if { path /metrics }
Frontends e Portas
fe_web_https:80 & :443 (TLS)
Modo: HTTP • HTTP/2 ALPN Ativo
Cluster de Backends
2 Pools (5 Nós Upstream)
Estratégia: roundrobin • Verificações de Integridade Ativas
Segurança e Proteção DDoS
Stick-Table (100k IPs)
Cifras TLS 1.3 e HSTS Ativos

Gerador 100% no Navegador

Zero tráfego externo ou registro de dados. Todos os IPs de backend, certificados e ACLs são manipulados na memória do navegador.

Diretivas Robustas HAProxy 2.x/3.x

Gera sintaxe validada com TLS 1.3, negociação ALPN, verificações de integridade contínuas e tabelas stick contra abusos.

Pronto para Ambientes Corporativos

Exporte configurações prontas com arquivos Docker Compose, definições de serviço Systemd e comandos de recarga suave.

Referência técnica e guia de arquitetura

Referência Técnica do HAProxy Config Generator — Guia de referência

Gerador e validador de sintaxe de configurações do HAProxy para ambientes de produção.

Parâmetros principais e controles

version'3.0' | '2.8' | '2.4'

Versão alvo do HAProxy que define a sintaxe permitida, diretivas de threading e compatibilidade de cifras TLS.

Padrão: '2.8'
mode'http' | 'tcp'

Camada de operação do proxy. Define se o HAProxy processa cabeçalhos HTTP L7 ou opera como roteador de fluxo L4 TCP.

Padrão: 'http'
algorithm'roundrobin' | 'leastconn' | 'source' | 'uri' | 'first' | 'random'

Política de balanceamento de carga para distribuição de requisições entre servidores backend ativos.

Padrão: 'roundrobin'
enableRateLimitboolean

Ativa stick-table em memória para monitorar IPs de origem e retornar HTTP 429 quando os limites forem atingidos.

Padrão: false
enableAlpnH2boolean

Adiciona a instrução 'alpn h2,http/1.1' à diretiva bind TLS para permitir multiplexação com HTTP/2.

Padrão: true

Dicas profissionais e melhores práticas

Ajustar expiração de stick-tables

Mantenha tempos de expiração entre 10s e 30s com http_req_rate(10s) para evitar sobrecarga de memória RAM durante picos de tráfego.

Otimizar intervalos de health-check

Configure 'inter 3s fastinter 1s downinter 5s rise 2 fall 3' para mitigar falhas em cascata causadas por instabilidades passageiras.

Recargas zero-downtime via socket

Habilite 'stats socket ... expose-fd listeners' para realizar reloads dinâmicos sem perda de pacotes no modo master-worker.

Problemas comuns e solução de problemas

haproxy -c retorna erro 'SSL certificate not found' durante a validação

Certifique-se de que sslCertPath aponte para um arquivo PEM contendo a chave privada e os certificados intermediários agrupados, ou crie um arquivo temporário antes do teste.

Verificações de integridade indicam 'L7STS: Layer7 invalid status 404'

Adicione 'http-check send hdr Host seudominio.com' à diretiva 'option httpchk' se o backend depender do cabeçalho Host para responder HTTP 200.

A regra de rate limit bloqueia múltiplos usuários atrás de proxies ou CDNs

Substitua a chave de rastreamento de 'src' para 'http-request track-sc0 hdr(CF-Connecting-IP)' ou 'hdr(X-Forwarded-For)' para validar o IP real do cliente.

Perguntas frequentes (FAQ)

Como o HAProxy realiza recargas dinâmicas sem interrupção de serviço?▼

O HAProxy emprega o modo master-worker (-W) e o repasse de descritores via 'expose-fd listeners'. O novo processo herda os sockets de escuta enquanto o worker antigo esvazia as conexões pendentes.

Os parâmetros de configuração gerados são transferidos para servidores externos?▼

Não. Todo o processo de criação, renderização de templates e validação de sintaxe ocorre localmente na memória do navegador sem envio de telemetria.

Qual é o consumo de memória de uma stick-table em cenários de tráfego intenso?▼

Cada entrada de endereço IPv4 ocupa cerca de 64 bytes. Uma stick-table dimensionada para 100.000 registros (size 100k) consome aproximadamente 6,4 MB de RAM.

Por que o HAProxy necessita de certificados concatenados em formato PEM?▼

O carregamento via OpenSSL no bind TLS exige que a chave privada, o certificado da aplicação e as cadeias intermediárias estejam em um único arquivo unificado.

Ferramentas e utilitários relacionados

Todas as ferramentas →
Guia do Desenvolvedor do Gerador de Helm Charts do Kubernetes (Chart.yaml & values.yaml)Desenvolvimento

Gere arquivos padrão Kubernetes Helm v3 Chart.yaml, values.yaml e templates de deployment com Service, Ingress e limites de recursos.

Abrir ferramenta→
Guia do Desenvolvedor: Gerador de Dockerfile Multi-Stage (Node, Go, Python, Rust)Desenvolvimento

Crie Dockerfiles multi-stage seguros e ultraleves para Node.js, Golang, Python, Rust e Java com execução não root e otimização de cache BuildKit.

Abrir ferramenta→
Referência de Desenvolvedor Sql To KyselyDesenvolvimento

Manual técnico e gerador de tipos para converter esquemas DDL de SQL em interfaces TypeScript seguras para Kysely em PostgreSQL, MySQL e SQLite.

Abrir ferramenta→
Guia do Desenvolvedor do Gerador de Entidades MikroORM TypeScript a partir de SQL DDLDesenvolvimento

Converta instruções SQL CREATE TABLE em classes de entidade MikroORM com decoradores @Entity, @PrimaryKey, @Property, @Index e relações.

Abrir ferramenta→
Guia do Desenvolvedor: Gerador de Esquemas Mongoose e Modelos TypeScript a partir de JSONDesenvolvimento

Infira e gere esquemas MongoDB Mongoose, interfaces Document de TypeScript, subdocumentos aninhados, timestamps e exportações de modelos a partir de JSON.

Abrir ferramenta→
Guia do Desenvolvedor do Gerador de Esquemas de Validação Yup a partir de JSONDesenvolvimento

Converta amostras JSON em esquemas de validação de objetos Yup com segurança de tipos, yup.string(), yup.number(), yup.array() e regras obrigatórias.

Abrir ferramenta→