简单:
TCP Provider:错误代码0x2746
这很可能是openssl与sql-server协议/版本之间的问题。
检查您的openssl版本。在终端上运行以下命令openssl version
:
$ openssl version
OpenSSL 1.0.2k-fips 26 Jan 2017
如果您的openssl版本不是1.0,则可以通过以下选项之一解决连接问题:
选项1:解决openssl兼容性问题
sed -i -E 's/(CipherString\s*=\s*DEFAULT@SECLEVEL=)2/\11/' /etc/ssl/openssl.cnf
是的,它是.cnf文件。
如果您在/etc/ssl/openssl.cnf
文件中拥有SECLEVEL,此命令会将其更改为1。完成。
选项2:降级openssl。
如果您的openssl版本是1.1,您可能希望将其降级到1.0。
这种方法很基础:下载源代码,配置并制作二进制文件。构建所有内容可能需要几分钟时间:
cd /usr/local/src/
wget https://www.openssl.org/source/old/1.0.1/openssl-1.0.1k.tar.gz
tar -xvf /usr/local/src/openssl-1.0.1k.tar.gz
cd /usr/local/src/openssl-1.0.1k
./config --prefix=/usr/local/ --openssldir=/usr/local/openssl
make
make test
make install
mv /usr/bin/openssl /usr/bin/openssl-bak
然后
cp -p /usr/local/openssl/bin/openssl /usr/bin/openssl
或者
cp -p /usr/local/ssl/bin/openssl /usr/bin/openssl
ll -ld /usr/bin/openssl
openssl version
如果你需要针对特定内容(如Docker镜像、不同操作系统等)获取洞见,请留下评论。