You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:Oracle JDBC/SQL*Plus TLS连接OS升级后遇handshake_failure/ORA-28860

排查Oracle 12.1(OL6)更新OpenSSL后TLS连接失败问题

我碰到过不少类似的案例,更新系统OpenSSL和内核后导致Oracle数据库TLS握手失败,核心原因通常是加密套件兼容性、协议版本不匹配,或者系统加密策略变化影响了Oracle的加密库。下面给你一步步的排查方向:

1. 确认OpenSSL版本变化与Oracle兼容性

首先搞清楚你更新后的OpenSSL版本,执行:

openssl version

Oracle 12.1在OL6环境下对OpenSSL的版本有一定限制,比如如果更新到了1.0.2系列的部分版本,或者系统默认加密套件被调整,可能会和Oracle自带的加密库(libnnz12.so)产生兼容性问题。你可以对比更新前的版本(如果有记录的话),重点看是否有安全级别或默认套件的变更。

2. 检查数据库端的加密配置参数

登录数据库,查看核心加密相关参数:

show parameter encryption;
show parameter ssl_version;
show parameter cipher_suites;
  • 确保SSL_VERSION设置为TLSv1.2(和你的JDBC客户端日志里的协议版本一致);
  • 如果SSL_CIPHER_SUITES有配置,确认这些套件在更新后的OpenSSL中是否还被支持。可以用openssl ciphers -v命令列出当前系统支持的套件,对比数据库配置的列表。

3. 深挖JDBC的TLS握手日志

你的JDBC日志里应该会有这些关键信息:

  • 客户端发送的加密套件列表;
  • 服务器返回的套件选择结果(如果为空,就是完全不匹配);
  • 协商的协议版本是否一致。

比如如果日志显示客户端提供了TLS_RSA_WITH_AES_256_CBC_SHA,但服务器因为OpenSSL更新后禁用了这个套件,就会导致握手失败。这时候需要在数据库的sqlnet.ora(或者通过ALTER SYSTEM设置参数)添加当前支持的强套件,例如:

SSL_CIPHER_SUITES=(TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_DHE_RSA_WITH_AES_256_GCM_SHA384)

4. 排查SQL*Plus的ORA-28860错误

ORA-28860本质就是SSL握手失败,和JDBC问题大概率同源,但可以通过客户端跟踪确认:

  1. 在客户端的sqlnet.ora中添加:
TRACE_LEVEL_CLIENT=16
TRACE_DIRECTORY_CLIENT=/tmp
TRACE_FILE_CLIENT=sqlnet_trace.log
  1. 尝试用SQL*Plus连接,然后查看/tmp/sqlnet_trace.log里的握手细节,重点看是否有“no cipher match”之类的提示。
    另外,确认客户端的sqlnet.ora中SSL_VERSION和SSL_CIPHER_SUITES是否和服务器端保持一致。

5. 检查系统级加密策略变更

OL6更新后,可能/etc/ssl/openssl.cnf被修改,比如添加了DEFAULT@SECLEVEL=2这类配置,导致旧的弱加密套件被拒绝。你可以临时修改这个配置,降低安全级别测试:
找到[system_default_sect]部分,修改为:

[system_default_sect]
MinProtocol = TLSv1.2
CipherString = DEFAULT@SECLEVEL=1

然后重启数据库监听,尝试连接。如果能成功,说明是系统安全级别过高导致的,这时候可以调整数据库的加密套件为符合SECLEVEL=2的强套件,而不是降低系统级别。

6. 验证Oracle加密库的依赖

Oracle的libnnz12.so可能依赖系统的OpenSSL库,执行:

ldd $ORACLE_HOME/lib/libnnz12.so | grep ssl

如果有libssl.so和libcrypto.so的依赖,说明系统OpenSSL的更新直接影响了这个库。这种情况下,建议应用Oracle针对OpenSSL兼容性的最新补丁,或者重新链接Oracle的加密组件。


内容的提问来源于stack exchange,提问作者David Le Borgne

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 08:44:45