proxy: error AH00898: Kesalahan saat SSL Handshake dengan server jauh


16

Saya memiliki server yang bertindak sebagai front-end untuk server surat cPanel di jaringan. Proxy apache pada server front-end berjalan selama 152 hari tanpa kesalahan maka tiba-tiba saya sekarang mendapatkan 500/502 kesalahan saat menggunakannya untuk mengakses klien webmail dari server surat.

Server front-end menggunakan sertifikat SSL yang ditandatangani, server cPanel menggunakan sertifikat yang ditandatangani sendiri. Berikut ini adalah output log kesalahan dari server front-end ketika pertama kali mulai terjadi:

[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

Server front-end adalah turunan EC2 yang menjalankan Apache/2.4.6 (Amazon) pengaturan VirtualHost Saya untuk proksi di server ini adalah sebagai berikut:

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

Sejauh yang saya pikir tidak ada yang berubah pada server front-end, saya tidak melakukan pembaruan atau apa pun, setelah melihat masalah ini dan mengutak-atik tidak berhasil, saya mencoba memulai ulang pada kedua server tetapi tidak melakukan apa pun untuk memperbaikinya.

Ada saran?

Jawaban:


32

Datang di masalah yang sama dengan versi Server: Apache / 2.4.6

Sesuai dokumentasi di [1], " Pada 2.4.5 dan yang lebih baru, SSLProxyCheckPeerCN telah digantikan oleh SSLProxyCheckPeerName, dan pengaturannya hanya diperhitungkan saat menonaktifkan SSLProxyCheckPeerName pada saat yang sama ."

Jadi menambahkan entri berikut melakukan trik:

SSLProxyCheckPeerName mati

Jadi konfigurasi kerja saya seperti ...

    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


1
Perhatikan bahwa "SSLEngine On" tidak berkaitan dengan bagian proxy dari konfigurasi, tetapi dengan melayani permintaan ini melalui SSL / TLS, meskipun itu dikelompokkan dengan opsi konfigurasi proxy.
Perseids

14

Jika server backend menggunakan sertifikat yang ditandatangani sendiri yang sudah kedaluwarsa, satu opsi lagi diperlukan (jika tidak ada akses ke server backend):

SSLProxyCheckPeerExpire off

Ini berfungsi untuk saya memigrasi proxy terbalik dari apache 2.2 ke 2.4
Segolas
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.