Esta configuração de proxy reverso é possível?

2

Vou primeiro tentar descrever o problema que tenho.

Digamos que eu tenha dois servidores http diferentes em execução em duas portas diferentes por trás do firewall na minha máquina local:

SERVER1: http://localhost:8001
SERVER2: http://localhost:8002

Agora, o que eu quero fazer é expor essas duas através de uma porta. Digamos que a porta 80 seja assim:

http://server1.mydomain.com:80
http://server2.mydomain.com:80

O requisito também é que os cabeçalhos sejam preservados e que os clientes e servidores finais não estejam cientes do proxy intermediário. Portanto, se a autenticação Digest estiver presente nos servidores finais, espero que continue a funcionar como se não houvesse nenhum proxy entre eles.

Eu acho que isso poderia ser conseguido com proxy reverso transparente, mas como este não é o meu campo de especialização, eu realmente não tenho certeza se estou olhando na direção certa.

Então as perguntas são:

  • Qual é a maneira correta de conseguir isso?
  • Quais soluções tornariam isso possível?
  • Existe alguma outra maneira de obter o mesmo efeito descrito acima?
por PrimosK 16.04.2014 / 16:15

2 respostas

0

Isso depende do seu produto de proxy reverso, mas isso é algo definitivamente possível. Usamos o MS TMG para essa finalidade, ele pode permitir que os clientes se autentiquem diretamente no backend e também pode fazer proxy de portas proxy, mas outras soluções de proxy reverso devem ser capazes de fazer o mesmo.

    
por 17.04.2014 / 09:55
0

Isso é muito possível e muito fácil com algo como HAProxy .

Sua configuração fontend / backend seria algo como isto.

frontend http-in
  bind *:80
  mode http
  option forwardfor
  acl isServer1  hdr(host) -i server1.mydomain.com
  acl isServer2  hdr(host) -i server2.mydomain.com

  use_backend server1 if isServer1
  use_backend server2 if isServer2

backend server1
  mode http
  server server1 127.0.0.1:8001 check

backend server2
  mode http
  server server2 127.0.0.1:8002 check
    
por 26.01.2015 / 15:00