Подключение к SQL серверу от Raspberry Pi приводит к ошибке 35 (во время рукопожатия перед входом в систему) - PullRequest
1 голос
/ 17 января 2020

Я хотел бы спросить, что может быть причиной того, что я могу нормально подключиться к SQL Server из Windows, но когда я пытаюсь подключиться к тому же серверу, используя ту же строку подключения и server being pingable из Raspbian @ Raspberry Pi, затем возникает эта ошибка:

Соединение было успешно установлено с сервером, но затем произошла ошибка во время рукопожатия перед входом в систему. (поставщик: поставщик TCP, ошибка: 35 - обнаружена внутренняя исключительная ситуация)


ex.InnerException {System.Security.Authentication.AuthenticationException: проверка подлинности завершилась неудачно, см. внутреннее исключение. ---> Interop + OpenSsl + SslException: сбой рукопожатия SSL с ошибкой OpenSSL - SSL_ERROR_SSL. ---> Interop + Crypto + OpenSslCryptographicException: ошибка: 1425F102: подпрограммы SSL: ssl_choose_client_version: неподдерживаемый протокол --- Конец внутренней трассировки стека исключений --- в Interop.OpenSsl.DoSslHandshake (контекст SafeSslHandle, байт [recsev]) , Int32 recvCount, Byte [] & sendBuf, Int32 & sendCount) в System. Net .Security.SslStreamPal.HandshakeInternal (учетные данные SafeFreeCredentials, SafeDeleteContext & context, inputBuffer ArraySegment`1, входнойBurffer * *

Я использую System.Data.SqlClient

try
{
    using (var connection = new SqlConnection(connStr))
    {
        connection.Open();
    }
}
catch (Exception ex)
{
    ...
}

. NET Core 3.1

Как мне решить эту проблему? Заранее спасибо

Ответы [ 2 ]

1 голос
/ 17 января 2020

Я установил (проверил наличие обновлений) OpenSSL как Leszek Mazur предложил:

sudo apt-get update
sudo apt-get install openssl

, а затем в sudo nano /etc/ssl/openssl.cnf

Я изменил минимальную версию TLS с 1.2:

[system_default_sect]
MinProtocol = TLSv1.2

до 1,0:

[system_default_sect]
MinProtocol = TLSv1
1 голос
/ 17 января 2020

Возможно, вам потребуется обновить версию OpenSSL.

sudo apt-get update
sudo apt-get install openssl
...