Estoy ejecutando HAProxy frente a servidores Apache y quiero implementar una autenticación básica para algunos dominios.
El manual indica que esto debería funcionar:
userlist admins
user myusername insecure-password mypassword
frontend restricted_cluster
acl auth_tintoretto http_auth(admins)
http-request auth realm ShareaholicRestricted
Sin embargo, tengo alguna otra ACL y bajo una interfaz hay varios dominios:
frontend http-in
# Define hosts
acl stag_static hdr(host) -i staging.static.domain.com
acl prod_static hdr(host) -i prod2.static.domain.com
## figure out which one to use
use_backend apache-node1 if stag_static
use_backend nginx-cluster if prod_static
¿Cómo combino esos comandos para restringir solo el acceso a stag_static?
Respuesta1
No lo he probado, pero intenta poner la http-request auth realm blah
línea en la configuración de tu backend. Deberia de funcionar.
Respuesta2
Predica el http-request auth
en la ACL que coincide con el sitio que deseas autenticar:
frontend http-in
acl stag_static hdr(host) -i staging.static.example.com
acl prod_static hdr(host) -i prod2.static.examplecom
http-request auth realm "The No Homers Club" if stag_static
use_backend apache-node1 if stag_static
use_backend nginx-cluster if prod_static