proxy: error AH00898: error durante el protocolo de enlace SSL con el servidor remoto

16

Tengo un servidor que actúa como front-end para un servidor de correo cPanel en una red. El proxy apache en el servidor front-end se ejecutó durante 152 días sin fallas y de repente ahora obtengo errores 500/502 cuando lo uso para acceder a los clientes de correo web del servidor de correo.

El servidor front-end utiliza un certificado SSL firmado, el servidor cPanel está utilizando un certificado autofirmado. Aquí está la salida del registro de errores del servidor front-end cuando comenzó a suceder:

[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:error] [pid 19531] [client 173.xx.xx.xx:9558] AH00898: Error during SSL Handshake with remote server returned by /cpsess12385596/3rdparty/roundcube/, referer: https://domain.com:2096/cpsess12385596/3rdparty/roundcube/?_task=mail&_refresh=1&_mbox=INBOX

El servidor front-end es una instancia EC2 que ejecuta la Apache/2.4.6 (Amazon) configuración de My VirtualHost para el proxy en este servidor:

< 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>

Hasta donde puedo pensar, nada ha cambiado en el servidor front-end, no hice una actualización ni nada, una vez que noté este problema y jugueteé sin éxito, intenté reiniciar en ambos servidores, pero no hizo nada para solucionarlo.

¿Alguna sugerencia?

DePages
fuente

Respuestas:

32

Encontré el mismo problema con la versión del servidor: Apache / 2.4.6

Según la documentación en [1], " En 2.4.5 y posterior, SSLProxyCheckPeerCN ha sido reemplazado por SSLProxyCheckPeerName, y su configuración solo se tiene en cuenta cuando SSLProxyCheckPeerName desactivado se especifica al mismo tiempo ".

Entonces, agregar la siguiente entrada hizo el truco:

SSLProxyCheckPeerName desactivado

Entonces mi configuración de trabajo se parece a ...

    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] http://httpd.apache.org/docs/2.4/mod/mod_ssl.html

Pavithra Madurangi
fuente
1
Tenga en cuenta que "SSLEngine On" no tiene que ver con la parte del proxy de la configuración, sino con atender esta solicitud a través de SSL / TLS, aunque esté agrupada con las opciones de configuración del proxy.
Perseidas
14

Si el servidor de fondo utiliza un certificado autofirmado desactualizado, se necesita una opción más (si no hay acceso al servidor de fondo):

SSLProxyCheckPeerExpire off
Milan Kerslager
fuente
Esto funcionó para mí migrar un proxy inverso de apache 2.2 a 2.4
Segolas