Ситуация:
Я хочу, чтобы это работало: запросы прибывают от клиентов, и переходит к haproxy через 443 порта (ssl), и затем он должен перейти к бэкенду на 80 портах.
Мне дало сертификат сервера промежуточное звено приблизительно (ca1), ca1 клиентский сертификат и сертификат. НО я не нашел решение запросить корректный сертификат сервера с центра сертификации окон на haproxy сервер (человечность). может быть причина шаблонов. Я запросил из сертификата сервера машины окон, и скопируйте его в haproxy.
И ПРОБЛЕМОЙ ЯВЛЯЕТСЯ журнал HAProxy, имеют эту ошибку "ssl клиент приблизительно, цепочка не может быть проверена"
конфигурация haproxy:
frontend https_frontend
свяжите 192.168.14.167:443 ssl crt/etc/haproxy/cert/request/server.pem, файл CA/etc/haproxy/cert/request/ca1-certificate.pem проверяют дополнительный crt-ignore-err все нет
режим http
/dev/log local7 журнала
опция httplog
use_backend web_server_1, если {ssl_fc_has_crt}
default_backend web_server_2
бэкенд web_server_1
режим http
опция httplog
проверка сервера w7 192.168.11.109:80
бэкенд web_server_2
режим http
опция httplog
сервер xp 192.168.13.205:80 проверка
эта схема не работает.
дополнительная информация: журнал от winXP, куда я выполнил opennssl
C:\OpenSSL-Win32\bin> openssl s_client - соединяют haproxy2:443 - сертификат client.pem-CAfile ca1-certificate.pem - указывает-showcerts
316:error:14094418:SSL routines:SSL3_READ_BYTES:tlsv1 предупреждают неизвестное предупреждение ca:.\ssl\s3_pkt.c:1275:SSL номер 48
316:error:140790E5:SSL routines:SSL23_WRITE:ssl квитируют failure:.\ssl\s23_lib.c:184:... информация о cer... Проверьте код возврата: 20 (не могущий получить локальный сертификат выпускающего)
(жаль о моем английском языке, если это плохо), я прочитал много сообщений об этом, но не нашел решение.
Файлы server.pem и client.pem должны иметь 3 раздела и выглядеть следующим образом:
-----BEGIN RSA PRIVATE KEY-----
<lots of base64 encoded data>
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
<lots of base64 encoded data>
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
<lots of base64 encoded data>
-----END CERTIFICATE-----
Частный ключ может не быть RSA, но он должен быть первым. Первый сертификат - это подписанный сертификат сервера. Второй сертификат должен быть сертификатом CA. Вы можете скопировать и вставить каждый раздел с помощью текстового редактора. Чтобы проверить свой сертификат, запустите это.
$ openssl verify -CAfile ca1-certificate.pem server.pem
server.pem: OK