it-swarm.com.de

Proxy: Fehler AH00898: Fehler beim SSL-Handshake mit dem Remote-Server

Ich habe einen Server, der als Front-End für einen cPanel-Mailserver in einem Netzwerk fungiert. Der Apache-Proxy auf dem Front-End-Server lief 152 Tage ohne Fehler, dann erhalte ich plötzlich 500/502 Fehler, wenn ich ihn für den Zugriff auf die Webmail-Clients des Mailservers verwende.

Der Front-End-Server verwendet ein signiertes SSL-Zertifikat, der cPanel-Server verwendet ein selbstsigniertes Zertifikat. Hier ist die Fehlerprotokollausgabe vom Front-End-Server, als sie zum ersten Mal gestartet wurde:

[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

Der Front-End-Server ist eine EC2-Instanz, auf der Apache/2.4.6 (Amazon) ausgeführt wird. Mein VirtualHost-Setup für den Proxy auf diesem Server lautet wie folgt:

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

</ VirtualHost>

Soweit ich glauben kann, dass sich auf dem Front-End-Server nichts geändert hat, habe ich kein Update oder ähnliches durchgeführt. Nachdem ich dieses Problem bemerkt und erfolglos herumgespielt habe, habe ich versucht, auf beiden Servern neu zu starten, aber es hat nichts getan, um dies zu beheben.

Irgendwelche Vorschläge?

16
DePages

Ist auf dasselbe Problem mit der Serverversion gestoßen: Apache/2.4.6

Gemäß der Dokumentation unter [1] wurde " In Version 2.4.5 und höher wurde SSLProxyCheckPeerCN durch SSLProxyCheckPeerName ersetzt, und seine Einstellung wird nur berücksichtigt, wenn gleichzeitig SSLProxyCheckPeerName off angegeben wird . "

Das Hinzufügen des folgenden Eintrags hat also den Trick getan:

SSLProxyCheckPeerName aus

Meine Arbeitskonfiguration sieht also so aus ...

    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

32

Wenn der Backend-Server ein veraltetes selbstsigniertes Zertifikat verwendet, ist eine weitere Option erforderlich (wenn kein Zugriff auf den Backend-Server besteht):

SSLProxyCheckPeerExpire off
14
Milan Kerslager