Ошибка 502 - Случайная библиотека SSL Ошибка: 336151568 Ошибка:14094410
Я сталкиваюсь со случайной ошибкой 502 на моих веб-серверах.
Ставка: 0,5%
Ошибка в моих журналах: ошибка библиотеки SSL: 336151568 ошибка:14094410: подпрограммы SSL:SSL3_READ_BYTES: сбой квитирования оповещения sslv3
Версия OpenSSL: OpenSSL 1.0.0-fips 29 марта 2010
Сеть Я не могу публиковать изображения, поэтому вот ссылка на схему моей сети: и то же изображение с другим хостером: http://s28.postimg.org/q9012t8l7/error502.jpg
Некоторые детали:
Я размещаю JEE-приложения на Tomcat 7.0.37
Когда кто-то пытается подключиться к одному из этих приложений, он подключается к внешнему IP-адресу моего маршрутизатора. Роутер перенаправляет его в мою DMZ.
Конфигурация Apache на DMZ
<VirtualHost *:443>
ServerName www.myapp.fr
ServerAlias myapp.fr
RedirectMatch ^/$ /CRA
ProxyRequests Off
SSLEngine on
SSLProxyEngine on
SSLCertificateFile /etc/ssl/certs/www.myapp.fr.pem
ProxyPass / https://myapp.fr/
ProxyPassReverse / https://myapp.fr/
LogLevel info
CustomLog "|/usr/sbin/rotatelogs /var/log/httpd/myapp.fr/SSL.myapp.fr_access.%Y-%m-%d.log 5M" combined
ErrorLog "|/usr/sbin/rotatelogs /var/log/httpd/myapp.fr/SSL.myapp.fr_error.%Y-%m-%d.log 5M"
</VirtualHost>
Myapp.fr определен в / etc / hosts как 192.168.1.51, IP-адрес веб-сервера
DMZ использует ProxyPass для этого веб-сервера. Этот веб-сервер используется для ProxyPass на реальном сервере приложений.
Конфигурация Apache на веб-сервере
<VirtualHost *:443>
ServerName myapp.fr
RedirectMatch ^/$ https://myapp.fr/Collaborateurs/
ProxyRequests Off
SSLCertificateFile /etc/ssl/certs/www.myapp.fr.pem
SSLProxyEngine On
SSLEngine on
ProxyPass /Collaborateurs/ https://ApplicationServer:8443/Collaborateurs/
ProxyPassReverse /Collaborateurs/ https://ApplicationServer:8443/Collaborateurs/
LogLevel info
CustomLog "|/usr/sbin/rotatelogs ${APACHE_LOG_DIR}/myapp/SSL.myapp.fr_access.%Y-%m-%d.log 5M" combined
ErrorLog "|/usr/sbin/rotatelogs ${APACHE_LOG_DIR}/myapp/SSL.myapp.fr_error.%Y-%m-%d.log 5M"
</VirtualHost>
Здесь проблема. Иногда в моих журналах появляется случайная ошибка, соответствующая ошибке шлюза (502) для пользователя.
журналы из /var/log/httpd/myapp.fr/SSL.myapp.fr_error.%Y-%m-%d.log:
[Mon Dec 23 08:58:31 2013] [info] Seeding PRNG with 136 bytes of entropy
[Mon Dec 23 08:58:31 2013] [info] Initial (No.1) HTTPS request received for child 11 (server myapp.fr:443)
[Mon Dec 23 08:58:31 2013] [info] [client 192.168.1.52] Connection to child 0 established (server myapp.fr:443)
[Mon Dec 23 08:58:31 2013] [info] Seeding PRNG with 136 bytes of entropy
[Mon Dec 23 08:58:31 2013] [info] [client 192.168.1.52] SSL Proxy connect failed
[Mon Dec 23 08:58:31 2013] [info] SSL Library Error: 336151568 error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure
[Mon Dec 23 08:58:31 2013] [info] [client 192.168.1.52] Connection closed to child 0 with abortive shutdown (server myapp.fr:443)
[Mon Dec 23 08:58:31 2013] [error] (502)Unknown error 502: proxy: pass request body failed to 192.168.1.52:8443 (ApplicationServer.domain.lan)
[Mon Dec 23 08:58:31 2013] [error] proxy: pass request body failed to 192.168.1.52:8443 (ApplicationServer.red.lan) from 10.0.0.2 ()
Вот те же журналы, когда не происходит никаких ошибок:
[Mon Dec 23 09:08:30 2013] [info] Initial (No.1) HTTPS request received for child 8 (server myapp.fr:443)
[Mon Dec 23 09:08:30 2013] [info] Initial (No.1) HTTPS request received for child 0 (server myapp.fr:443)
[Mon Dec 23 09:08:30 2013] [info] [client 192.168.1.52] Connection to child 0 established (server myapp.fr:443)
[Mon Dec 23 09:08:30 2013] [info] Seeding PRNG with 136 bytes of entropy
[Mon Dec 23 09:08:31 2013] [info] Initial (No.1) HTTPS request received for child 3 (server myapp.fr:443)
[Mon Dec 23 09:08:31 2013] [info] [client 192.168.1.52] Connection to child 0 established (server myapp.fr:443)
[Mon Dec 23 09:08:31 2013] [info] Seeding PRNG with 136 bytes of entropy
Я не могу понять, почему эта ошибка происходит. у кого-нибудь есть идея? Спасибо за ваше возможное руководство - и извините за мой плохой английский:D
2 ответа
Интеграция Hyper-V была проблемой:
Обновление компонентов интеграции Linux с 3.4 до 3.5 на прокси-сервере решило эту проблему.
Сбой SSL-прокси-соединения означает, что произошла какая-то сетевая ошибка между вашим веб-сервером и сервером приложений до завершения SSL-квитирования. Без получения следов пакетов (и еще нескольких) из вашей сети выяснить, почему именно не удалось установить TCP-соединение, практически невозможно. Я бы искал перегрузку сети или очень высокие нагрузки на сервер приложений во время ошибок.