

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 数据来源连接选项看似正常（SSL）却无法连接
<a name="troubleshoot-connect-SSL"></a>

安全套接字层 (SSL) 配置不正确时，可能会出现连接问题。可能出现以下症状：
+ 您可以采用其他方式或从其他位置连接到数据库，但以这种方式不行。
+ 您可以连接到类似的数据库，但无法连接此数据库。

在继续之前，请先排除以下情况：
+ 权限问题
+ 可用性问题
+ 证书过期或无效
+ 自签名证书
+ 证书链的顺序错误
+ 端口未启用
+ 防火墙阻止 IP 地址
+ Web 套接字已被阻止
+ 虚拟私有云（VPC）或安全组配置不正确。

为了帮助查找 SSL 的问题，您可以使用一个在线 SSL 检查程序或像 OpenSSL 这样的工具。

 以下步骤演示在疑似 SSL 问题时如何排查连接错误。在本示例中，管理员已安装 OpenSSL。

**Example**  

1. 用户发现连接到数据库时有问题。用户确认自己可以连接其他 Amazon Web Services 区域中的不同数据库。他们尝试连接同一数据库的其他版本，结果是可以轻松连接。

1. 管理员检查了问题，并决定验证证书是否正常工作。管理员在线搜索关于使用 OpenSSL 的文章来排查或调试 SSL 连接问题。

1. 使用 OpenSSL，管理员验证了终端的 SSL 配置。

   ```
   echo quit
   openssl s_client –connect <host>:port
   ```

   结果显示证书无法正常工作。

   ```
   ...
   ...
   ...
   CONNECTED(00000003)
   012345678901234:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:s23_clnt.c:782:
   ---
   no peer certificate available
   ---
   No client certificate CA names sent
   ---
   SSL handshake has read 7 bytes and written 278 bytes
   ---
   New, (NONE), Cipher is (NONE)
   Secure Renegotiation IS NOT supported
   SSL-Session:
       Protocol  : TLSv1.2
       Cipher    : 0000
       Session-ID:
       Session-ID-ctx:
       Master-Key:
       Key-Arg   : None
       PSK identity: None
       PSK identity hint: None
       Start Time: 1497569068
       Timeout   : 300 (sec)
       Verify return code: 0 (ok)
   ---
   ```

1. 管理员在用户的数据库服务器上安装了 SSL 证书，从而更正了此问题。

有关本示例中解决方案的更多详细信息，请参阅《Amazon RDS 用户指南》**中的[使用 SSL 加密与数据库实例的连接](https://docs.amazonaws.cn/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL.html)。