Запрос был прерван: не удалось создать безопасный канал SSL / TLS, но он работает из браузера / POSTMAN - PullRequest
0 голосов
/ 05 декабря 2018

Я немного растерялся здесь.Добавление материала ServicePointManager обычно исправляет это, но на этот раз я продолжаю получать ошибку ниже.Мой сервер может получить доступ к одному и тому же URL из браузера и POSTMAN.Но запустить это через веб-сайт не удается.Это работает на моем локальном компьютере, хотя.У меня на сервере включены TLS 1.1 и TLS 1.2.

Что-то не так с настройкой TLS моего сервера?https://www.ssllabs.com/ssltest/analyze.html?d=basketball.exposureevents.com

Я использую сертификаты CertifyTheWeb, в основном бесплатный SSL.Не уверен, что это как-то связано с этим.

Я отправляю по ссылке ниже, которая отклоняет запрос, сделанный из кода, приведенного ниже, из IIS.

https://www.nationalsportsid.com/tournament/6028

Сообщение: запрос был прерван: не удалось создать безопасный канал SSL / TLS.Источник: Отслеживание системного стека: в System.Net.HttpWebRequest.GetResponse () в

ServicePointManager.Expect100Continue = true;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12 | SecurityProtocolType.Ssl3;

var webRequest = (HttpWebRequest) WebRequest.Create("https://www.nationalsportsid.com/tournament/" + nationalSportsId);
try
{
    using (var webResponse = (HttpWebResponse) webRequest.GetResponse())
    {
        if (webResponse.StatusCode == HttpStatusCode.OK)
        {
            return true;
        }
    }
}
catch (WebException ex)
{
    Logger.Error(ex);
}

Вот что записывает анализатор сообщений

Рукопожатие

enter image description here

Предупреждение

enter image description here

Ответы [ 3 ]

0 голосов
/ 16 декабря 2018

Возможно, на целевом сервере нет ни одного из наборов шифров, настроенных для SSLv2 и SSLv3.Вы должны убедиться, что ваш клиент позволяет подключаться с использованием наборов шифров, настроенных на сервере для разрешенных протоколов SSL.

В Windows используйте:

Get-TlsCipherSuite    [[-Name] <String>]    [<CommonParameters>]

в Power Shell.Ссылка - https://docs.microsoft.com/en-us/powershell/module/tls/get-tlsciphersuite

Чтобы добавить наборы шифров в Windows:

Enable-TlsCipherSuite
      [[-Position] <UInt32>]
      [-Name] <String>
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Ссылка - https://docs.microsoft.com/en-us/powershell/module/tls/Enable-TlsCipherSuite

Чтобы получить существующие наборы шифров в Linux:

openssl ciphers [-v] [-V] [-ssl2] [-ssl3] [-tls1] [cipherlist]

Справочник - https://linux.die.net/man/1/ciphers

0 голосов
/ 17 декабря 2018

Сначала я попытаюсь подключиться, используя openssl (либо linux box, либо cygwin).

Ваш первый шаг может быть примерно таким

$ echo | openssl s_client -connect www.nationalsportsid.com:443 -tls1_2
CONNECTED(00000003)
depth=2 O = Digital Signature Trust Co., CN = DST Root CA X3
verify return:1
depth=1 C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
verify return:1
depth=0 CN = www.nationalsportsid.com
verify return:1
---
Certificate chain
 0 s:/CN=www.nationalsportsid.com
   i:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
 1 s:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
   i:/O=Digital Signature Trust Co./CN=DST Root CA X3
---
Server certificate
-----BEGIN CERTIFICATE-----
MIIGTDCCBTSgAwIBAgISBIrqOzNTV7HxnH4SauB/Zeq2MA0GCSqGSIb3DQEBCwUA
MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
...

Пожалуйста, отметьте , как подключиться к протоколу https с помощью openssl .Вы можете поиграть, используя разные аргументы.

0 голосов
/ 14 декабря 2018

Это была проблема конфигурации на другом сервере в Apache.Они ослабили свою конфигурацию SSL, что я не уверен, что они сделали, но их предыдущая конфигурация ниже.Теперь я могу сделать HTTP-запрос к их серверу.

SSLEngine on

# Intermediate configuration, tweak to your needs
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE$
SSLHonorCipherOrder on
SSLCompression off

SSLOptions +StrictRequire
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...