我在ASP.NET核心中的Ubuntu服务器上收到SSL握手错误
我收到来自HttpClient请求的以下错误。
Microsoft.AspNetCore.Diagnostics.ExceptionHandlerMiddleware[1]
An unhandled exception has occurred while executing the request.
System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
---> System.Security.Authentication.AuthenticationException: Authentication failed, see inner exception.
---> Interop+OpenSsl+SslException: SSL Handshake failed with OpenSSL error - SSL_ERROR_SSL.
---> Interop+Crypto+OpenSslCryptographicException: error:0A000152:SSL routines::unsafe legacy renegotiation disabled
我在curl中模拟了请求,并得到了类似的错误。
1条答案
按热度按时间omhiaaxx1#
我正在连接到bluesnap,错误代码意味着端点不允许TLS 1.3以下的TLS重新协商。
现在,这些curl请求可以在Windows上运行,但不能在Linux上运行。而且只能在特定的端点上运行。Windows从1.3向下协商TLS版本,而Linux从1.0向上协商。
在我的例子中,我需要指定TLS 1.3。我不想在全局范围内这样做,所以我用我的HttpClient这样做:
请检查您的端点并查看它是否需要特定版本的TLS。