Exchange 2013 MAPI sobre HTTP Balanceamento de carga HAProxy

2

Conseguimos implantar o HAProxy como um balanceador de carga de Camada 4 para todo o tráfego baseado em HTTP do Exchange 2013 SP1 (Descoberta Automática, OWA, EXP, EWS, MAPI, etc.)

Por vários motivos, no entanto, estamos procurando migrar para uma arquitetura de "SSL Offloading" de camada 7.

Baseamos a maior parte de nossa configuração no excelente guia ALOHA: link

A boa notícia é que quase tudo está funcionando absolutamente bem. Nosso único problema é com o MAPI, ou seja, a substituição do RPC que foi introduzido no Exchange 2013 SP1.

Pelo que eu li, o descarregamento de SSL do MAPI é suportado pelo Exchange 2013 - consulte link . O documento ALOHA desaconselha a utilização do descarregamento SSL de camada 7 para MAPI, mas apenas devido a problemas de desempenho e não a qualquer motivo técnico.

Se tentarmos fazer o balanceamento de carga do MAPI, os sintomas que estamos vendo são

  • o URL /mapi/HealthCheck.htm pode ser retornado corretamente em um navegador da Web
  • No entanto, os clientes do Outlook solicitam repetidamente credenciais

Os bits relevantes da configuração do HAProxy estão abaixo (não é todo o arquivo)

frontend ft_exchange_2013_https
 bind 1.1.1.3:443 ssl crt /blah/blah.pem
 capture request header Host len 32
 capture request header User-Agent len 64
 capture response header Content-Length len 10
 maxconn 10000
 acl ssl_connection ssl_fc
 acl host_mail hdr(Host) -i mail.company.com
 acl path_slash path /
 acl path_mapi path_beg -i /mapi
 http-request deny if path_check
 http-request redirect scheme https code 302 unless ssl_connection
 http-request redirect location /owa/ code 302 if path_slash host_mail
 use_backend bk_exchange_2013_https_mapi if path_mapi

backend bk_exchange_2013_https_mapi
 option httpchk GET /mapi/HealthCheck.htm
 http-check expect string 200\ OK
 timeout server 600s
 server SERVER1 1.1.1.1:443 maxconn 2000 weight 10 check ssl verify none
 server SERVER2 1.1.1.2:443 maxconn 2000 weight 10 check ssl verify none

As coisas que tentamos resolver são

  • Use HTTP em vez de HTTPS no back-end, removendo o sinalizador "Require SSL" no diretório virtual MAPI IIS e usando a porta 80 em vez de 443 onm as linhas SERVER1 e SERVER2
  • Remova um dos servidores backend para que todos os pedidos sejam enviados para um único servidor
  • Altere as configurações de autenticação do diretório virtual MAPI do padrão "Negociar" para "NTLM"

No entanto, nenhum deles resolveu o problema. Se alguém tiver alguma ideia sobre como diagnosticar mais ou tiver uma configuração funcional, poderá partilhar, por ex. HAProxy config + Exchange MAPI Configuração do diretório virtual que seria ótimo !!

Editar 1

Também consegui reproduzir o comportamento do Outlook indo para o link que solicita repetidamente as credenciais da mesma forma que o Outlook

    
por Phil 17.11.2015 / 11:19

0 respostas