ODBC 连接到 MS SQL Server 仅当 SECLEVEL 0 时才有效

ODBC 连接到 MS SQL Server 仅当 SECLEVEL 0 时才有效

我正在尝试从 Ubuntu 22.04 连接到 MS SQL Server。我安装了 MS SQL 服务器的 ODBC 驱动程序,创建了 DSN,当我使用 测试连接时isql,出现了错误:

Sqlcmd:错误:SQL Server 的 Microsoft ODBC 驱动程序 17:TCP 提供程序:错误代码 0x2746

经过进一步研究,我发现这与 OpenSSL 有关。为了获取服务器上支持的 TLS 版本,我执行了该命令nmap --script ssl-enum-ciphers -p 1433 db.server.com,在输出中,我可以看到服务器支持 TLS 1.2。

对我而言唯一有用的方法是在openssl.cnf文件中进行设置:

MinProtocol = TLSv1_2
CipherString = DEFAULT@SECLEVEL=0

如果我将其更改SECLEVEL为 1,我会再次收到与上述相同的错误。

您能否告诉我,它与 SECLEVEL 0 一起工作而与 1 一起工作的可能原因是什么?我需要在服务器上进行任何更改才能使其与 SECLEVEL 1 一起工作吗?

谢谢。

相关内容