linux 下连接 sql server 数据库遇到了错误:error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol
参考:https://github.com/microsoft/msphpsql/issues/1112#issuecomment-643522139
在使用新的系统镜像(似乎是 ubuntu:20.04 及以后的版本)运行 sqlcmd 连接低版本数据库(如 SQL Server 2008 R2)时,可能会遇到以下错误:
Sqlcmd: Error: Microsoft ODBC Driver 17 for SQL Server : SSL Provider: [error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol].
经网上查找,应该是新系统升级了 openssl 的版本,提高了最低安全协议的版本,应该是为了安全,低版本的 ssl 不再被支持
解决方案:
打开修改文件:/etc/ssl/openssl.cnf
在第一行(或比较靠前的位置,如大概第 17 行往后)添加以下配置:
openssl_conf = default_conf
然后在其后面增加以下配置:
[default_conf] ssl_conf = ssl_sect [ssl_sect] system_default = system_default_sect [system_default_sect] MinProtocol = TLSv1 CipherString = DEFAULT@SECLEVEL=1
注意 MinProtocol 这里,网上有的写的是 TLSv1.1 或者 TLSv1.0,经测试好像对我这都不管用,最后找到直接写 TLSv1 就可以成功了。
如果其它场景也遇到了类似错误,也可同样进行处理,比如 asp.net core 什么的。。。
输了你,赢了世界又如何...
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
2015-04-28 放一篇置顶博文随时说点什么
2015-04-28 在 IE 浏览器中,使用 bootstrap 使得页面滚动条浮动显示,自动隐藏,自动消失
2014-04-28 修改easyui的easyloader的默认css目录路径
2014-04-28 如何在Visual Studio的查找功能中使用正则表达式?
2014-04-28 让easyui的datagrid的field支持属性的子属性(field.childfield)
2013-04-28 关于Sliverlight的一些问题