Libra + HAProxy ou Stunnel + HAProxy

3

Estou procurando introduzir um balanceador de carga à minha infraestrutura de site existente para ajudar no crescimento do tráfego e fornecer um nível de proteção contra falhas.

O site que estou executando usa certificados SSL para a seção de login e precisarei continuar com essa funcionalidade. Os servidores de back-end precisarão estar cientes do endereço IP de origem, portanto, não posso usar a função de balanceamento de carga do TCP e precisarei do SSL terminado no balanceador de carga para que eu possa inserir um

X-Forwarded-For

Cabeçalho. Eu vi algumas maneiras de implementar a funcionalidade de decriptografia SSL usando stunnel e outra usando Pound. Eu tenho olhado ao redor no entanto não tenho certeza do que os prós / contras são de usar um sobre o outro. Alguém tem alguma experiência nisso e oferece sua recomendação?

Obrigado

    
por user1075894 20.03.2012 / 12:39

4 respostas

2

Não tenho certeza sobre o Pound, mas consegui fazer o Stunnel + HAProxy funcionar, inclusive definindo o endereço IP de origem como um cabeçalho X-Forwarded-For. O truque é usar o Stunnel com o patch X-Forwarded-For. Aqui está um pacote que funciona no Ubuntu 10.04: link

    
por 24.05.2012 / 14:15
5

Esta é uma questão antiga agora, mas o HaProxy agora tem suporte nativo para SSL, o que torna muito mais fácil configurar e usar com SSL / TLS.

veja aqui

    
por 15.12.2012 / 01:12
2

Eu não usei o stunnel com o HAProxy, mas sou um usuário de longa data do Pound, em alguns ambientes diferentes.

O Pound faz um bom trabalho com o SSL. É muito fácil de configurar, usa certificados PEM padrão e passa dados SSL suficientes de volta para o servidor da Web com os quais seus aplicativos sabem com o que estão lidando. Além de X-Forwarded-For , você obtém X-Forwarded-Proto , portanto, se estiver executando versões http e https de um site, poderá fornecer a seus retornos de chamada do AJAX / XHR uma URL que não causará avisos de segurança. A libra também suporta certs do lado do cliente, certificados de curinga e SNI. Então não há muito que você não possa fazer com isso.

Além disso, estou um pouco desconfiado de criar serviços de produção usando ferramentas que exigem um patch de terceiros para fornecer funcionalidade crítica. O que acontece quando uma vulnerabilidade stunnel é descoberta e a alteração quebra seu patch? Você vai ficar inseguro por um tempo ou correr sem cabeçalhos X-Forwarded-IP por um tempo?

Eu nunca tive um acidente com Libra. Exceto por um estranho bug relacionado ao firewall que foi corrigido em 2005, ele sempre se comportou perfeitamente para mim. Uma das coisas que eu amo é o programa de controle externo que vem com ele, que me permite desabilitar / habilitar serviços e back-end, ou visualizar a lista atual de mapeamentos pegajosos, etc. Até onde eu sei, o haproxy não faz isso. t tem algo como poundctl de Pound.

Além de usar o Pound no trabalho para balancear a carga de um cluster de cinco servidores da Web, eu o uso no meu servidor pessoal. Lá, eu executo servidores web em máquinas virtuais que usam endereços IP privados ( FreeBSD jails ). Vários servidores da Web virtuais são balanceados por trás do Pound sendo executado no host físico. Eu suponho que você poderia fazer o mesmo com o stunnel + HAProxy, mas novamente, eu prefiro instalar software com suporte total à comunidade, sem patches fora do padrão.

    
por 31.05.2012 / 02:59
1

O Nginx também é excelente como um front-end SSL para o HAProxy, especialmente as cargas do cabeçote do ender. Eu uso 4 CPUs centrais para o SSL.

    
por 20.07.2012 / 14:14