proxy: erro AH00898: erro durante o handshake SSL com o servidor remoto

13

Eu tenho um servidor que atua como um front-end para um servidor de mensagens cPanel em uma rede. O proxy do apache no servidor front-end foi executado por 152 dias sem falha e, de repente, eu agora recebo erros 500/502 ao usá-lo para acessar os clientes de webmail do servidor de email.

O servidor front-end usa um certificado SSL assinado, o servidor cPanel está usando um certificado autoassinado. Aqui está a saída do log de erros do servidor front-end quando começou a acontecer:

[Tue Sep 10 18:22:52.959291 2013] [proxy:error] [pid 19531] (502)Unknown error 502: [client 173.xx.xx.xx:9558] AH01084: pass request body failed to 184.xx.xx.xx:2096 (184.xx.xx.xx), referer: https://domain.com:2096/cpsess12385596/3rdparty/roundcube/?_task=mail&_refresh=1&_mbox=INBOX

[Tue Sep 10 18: 22: 52.959469 2013] [proxy: erro] [pid 19531] [cliente 173.xx.xx.xx: 9558] AH00898: Erro durante o handshake SSL com servidor remoto retornado por / cpsess12385596 / 3rdparty / roundcube /, referência: link

O servidor front-end é uma instância do EC2 executando Apache/2.4.6 (Amazon) Minha configuração do VirtualHost para o proxy neste servidor é a seguinte:

< VirtualHost *:2096> ServerName domain.com

SSLEngine on
SSLProxyEngine on
SSLProxyVerify none
SSLProxyCheckPeerCN off

SSLCertificateFile /x/x/x/domain.com.crt
SSLCertificateKeyFile /x/x/x/domain.com.key
SSLCACertificateFile /x/x/x/domain.com.cabundle

ProxyPass / https://184.xx.xx.xx:2096/
ProxyPassReverse / https://184.xx.xx.xx:2096/
ProxyPassReverseCookieDomain 184.xx.xx.xx:2096 domain.com
ProxyPassReverseCookiePath / /

SetOutputFilter INFLATE;proxy-html;DEFLATE
ProxyHTMLURLMap https://184.xx.xx.xx:2096 /

< / VirtualHost >

Tanto quanto eu posso pensar que nada mudou no servidor front-end, eu não fiz uma atualização ou nada, uma vez percebendo esse problema e brincando sem sucesso eu tentei uma reinicialização em ambos os servidores, mas não fez nada para consertar isso.

Alguma sugestão?

    
por DePages 11.09.2013 / 15:32

2 respostas

30

Surgiu o mesmo problema com a versão do servidor: Apache / 2.4.6

De acordo com a documentação em [1], " Em 2.4.5 e posteriores, SSLProxyCheckPeerCN foi substituído por SSLProxyCheckPeerName e sua configuração é considerada apenas quando SSLProxyCheckPeerName desativado é especificado ao mesmo tempo "

Então, adicionar a seguinte entrada foi o truque:

SSLProxyCheckPeerName desativado

Então minha configuração de trabalho parece ...

    ProxyRequests Off

    SSLEngine On
    SSLProxyEngine On
    SSLProxyVerify none
    SSLProxyCheckPeerCN off
    SSLProxyCheckPeerName off

    SSLCertificateFile /x/x/keys/server.crt
    SSLCertificateKeyFile /x/x/keys/server.key

[1] link

    
por 16.07.2014 / 07:56
11

Se o servidor de back-end usar um certificado auto-assinado desatualizado, será necessária mais uma opção (se não houver acesso ao servidor de back-end):

SSLProxyCheckPeerExpire off
    
por 02.02.2015 / 19:16