Сбой связи клиента с RabbitMQ с использованием проверки SSL-однорангового узла - PullRequest
0 голосов
/ 18 июня 2020
• 1000 с использованием Azure Traffi c Manager (пользовательский домен), RabbitMQ настроен для поддержки SSL - и для проверки однорангового узла установлено значение true, сертификат внутреннего (организационного) сервера настроен для файла конфигурации RabbitMQ.

RabbitMQ Версия 3.7.8

Клиент развернут на BizTalk - Azure Виртуальная машина, Пользовательский адаптер построен с использованием. net для поддержки конфигурации подключения на сервере BizTalk, сертификат клиента установлен на сервере, а настройка SSL выполняется с использованием отпечатка сертификата клиента. Когда клиент BizTalk (Написано на. net) пытается установить sh соединение с Rabbit Host, сервер отказался подключиться, заявив, что соединение принудительно закрыто сервером, мы не видим много информации в журналах отладки.

Мы даже пытались перехватить TCPDUMP, но это не помогло, так как Rabbit работает в контейнере. Однако есть одна загвоздка: чтобы узнать, что происходит вокруг клиента и сервера Rabbit, я создал небольшой клиентский инструмент RabbitMQ для проверки SSL-соединения, написанный на. net, и он работает как шарм.

Мне нужна ваша помощь, чтобы выяснить возможную причину сбоя клиента, работающего на сервере BizTalk.

Обратите внимание, что соединение без SSL работает отлично.

Ответы [ 2 ]

1 голос
/ 19 июня 2020

Go через руководство по устранению неполадок TLS ( ссылка ), которое поможет вам найти проблему. Как предполагалось в предыдущем ответе, возможно, что rabbitmq поддерживает только TLS 1.2, который не включен в. NET.

Также вы можете включить TLS 1.1 в rabbitmq ( ссылка ), если вы видите, что он не включен в rabbitmq, что имеет высокую вероятность.

0 голосов
/ 19 июня 2020

В более ранней версии. Net не используется по умолчанию TLS 1.2, если вы не сделаете какие-либо записи в реестре или явно не укажете ему использовать TSL 1.2 в коде, см. MS16-065: Описание TLS / Уязвимость раскрытия информации протокола SSL (CVE-2016-0149): 10 мая 2016 г.

. NET Framework 4.0 и. NET Framework 4.5.x, которые являются на платформе. NET Framework 4.5 и более поздних версиях можно переключить протокол по умолчанию на TLS 1.2, TLS 1.1 и TLS 1.0, включив ключ реестра SchUseStrongCrypto. Этот раздел реестра обсуждается в разделе «Предлагаемые действия» рекомендации Microsoft по безопасности 2960358 topi c на веб-сайте Microsoft Te chNet .

Другой вариант заключается в том, чтобы сделать это с помощью кода в компоненте конвейера или в поведении конечной точки. См. Раздел «Проблема кодирования при передаче параметров URL-адреса с помощью порта отправки BizTalk WCF-WebHttp».

...