Como devo configurar um proxy reverso com SSL no Windows?

3

Duas perguntas básicas aqui:

Se eu quiser exibir conteúdo SSL de três servidores diferentes (A, B, C) por meio de um proxy reverso (P), onde a mágica SSL acontece?

Eu estou supondo que cada servidor será responsável por manipular o material SSL e X apenas roteia os bits, mas não tenho certeza. Presumivelmente, neste caso, eu usaria o mesmo certificado assinado para X em cada máquina A, B, C. Ou X faz todo o material SSL por si só?

Em segundo lugar, qual é o melhor servidor da Web para usar o proxy reverso no Windows Server 2008? IIS, Apache, etc. Crédito extra se você tiver um bom exemplo de configurar sua recomendação.

Obrigado pela sua ajuda!

    
por Michael Haren 22.07.2009 / 13:51

3 respostas

2

Eu assumo por "Proxy Reverso" você quer dizer um servidor Apahce agindo como um Proxy contra DNAT (Destination NAT). Nesse caso, seus clientes verão seus servidores (A, B, C) com IPs internos (IA, IB, IC) como dispositivos IP externos ou públicos (XA, XB, XC).

Se, por outro lado, você quiser representar seus dispositivos (IA, IB, IC) como um único IP externo (XIP), precisará usar Certificados SSL que incorporem vários nomes alternativos de assunto. Na verdade, se você tiver apenas um IP público e quiser vários sites SSL com relação a esse IP público, precisará usar um certificado com vários nomes alternativos de assunto, independentemente do proxy reverso em andamento. O atributo é chamado de "SubjAltName" no terreno X.500.

Este link pode ajudá-lo: link

Você realmente não pode DNAT conexões HTTPS, a menos que seu DNAT sabe como lidar com SSL Certs - você está basicamente criando um processo MITM (man-in-the-middle); uma das coisas que o SSL tenta proteger.

    
por 22.07.2009 / 15:59
1

Eu cito nosso excelente cara de apoio ao CMS

"A coisa que precisa ser pensada para isso é onde você fará o Terminação SSL

Em outras palavras, a solicitação será cliente para proxy como https e, em seguida, http do proxy para a caixa interna onde você está recebendo o apache para finalizar o SSL

Ou

Toda a conversa é SSL

Eu gostaria que a primeira opção permitisse que o Apache terminasse o SSL como não há necessidade real de ter toda a conversa como https

Eu colocaria o certificado no servidor apache dentro de um host virtual diretiva e, em seguida, proxy essa solicitação para a caixa interna. "

Em outras palavras, é mais fácil evitar a criptografia internamente na sua própria rede.

O IIS não irá inverter o proxy, tanto quanto eu sei (certamente até o IIS 6, não tenho certeza sobre depois), então é o Apache. Você também pode usar o SQUID, que parece ser bom, embora eu não tenha experiência direta com ele.

Veja também minha pergunta no StackOverflow ( link ) referente à configuração correta para o Apache.

    
por 22.07.2009 / 17:13
1

Você pode configurar um servidor Microsoft ISA como seu proxy reverso para o seu SSL. Isso encaminha o tráfego pela porta 80 para o IIS que reside em outro servidor. Isso também funcionará para certificados curinga, caso você queira usá-los. Eu acredito que você pode usar isso para fazer o balanceamento de carga também.

    
por 15.07.2011 / 22:57