Eu tenho um IP roteado e haproxy está lá, o haproxy também tem lan ip para entrar em contato com os backends. Eu tenho poucos backends - cada um segurando alguns nginx'es, algumas vezes alguns serviços de domínios em cada um. Eu cheguei ao momento em que eu quero diminuir o acesso ao tipo de lista - meus lans + alguns outros ip's. Estou fazendo terminação SSL, mas isso não é importante como eu sei. Partes essenciais da minha configuração:
frontend https-in
bind *:443 ssl crt /etc/haproxyssl/domain1.pem crt /etc/haproxyssl/domain2.pem
reqadd X-Forwarded-Proto:\ https
acl host_1 hdr(host) -i add.domain1.net
acl host_1 hdr(host) -i sub.domain1.net
acl host_2 hdr(host) -i pro.domain2.net
use_backend worker_1 if host_1
use_backend worker_2 if host_2
default_backend worker_2
backend worker_2
redirect scheme https if !{ ssl_fc }
balance leastconn
option forwardfor
cookie JSESSIONID prefix
option http-server-close
acl 2_list src 127.0.0.1 172.18.0.1/24 10.1.2.0/24
tcp-request content accept if 2_list
tcp-request content reject
server dodo 10.1.2.65:80 cookie A check
É claro que acl 2_list
não funciona porque o proxy está no modo http - o backend vê o haproxy ip, não o cliente - estou bem com ele - não preciso do ip de origem no backend. Eu não quero fazer soluções tproxy. HaProxy é v1.5.4 no Gentoo.
Pergunta : Posso ter uma lista de acl no frontend para cada domínio / back-end?
Tags haproxy