尝试通过mysql CLI连接到mysql Aurora时出现SSL连接错误

尝试通过mysql CLI连接到mysql Aurora时出现SSL连接错误,mysql,ssl,amazon-web-services,amazon-rds,amazon-aurora,Mysql,Ssl,Amazon Web Services,Amazon Rds,Amazon Aurora,我将在前面说,当我不尝试通过SSL时,我可以连接到DB实例 我在这里遵循这个指南 我已经确保db实例是面向公众的 专有网络的安全组有以下规则: Type Protocol Port Range Source MySQL/Aurora (3306) TCP (6) 3306 my_ip_address/32 MySQL/Aurora (3306) TCP (6) 3306 sg-security_group_name 其中security_group_name是我的EC2集群的安全组 我正在使

我将在前面说,当我不尝试通过SSL时,我可以连接到DB实例

我在这里遵循这个指南

我已经确保db实例是面向公众的

专有网络的安全组有以下规则:

Type Protocol Port Range Source
MySQL/Aurora (3306) TCP (6) 3306 my_ip_address/32
MySQL/Aurora (3306) TCP (6) 3306 sg-security_group_name
其中security_group_name是我的EC2集群的安全组

我正在使用aurora群集的群集端点。我已经移除了端口。我用自制软件在我的机器上安装了mysql。这是我正在本地计算机(macbook)上尝试的命令:

其中rds-ssl-ca-cert.pem是我从这里下载的文件:

http://s3.amazonaws.com/rds-downloads/rds-ssl-ca-cert.pem
我得到一个错误:

ERROR 2026 (HY000): SSL connection error: error:00000001:lib(0):func(0):reason(1)
我尝试过创建一个新实例,重新启动等,但没有任何乐趣。我的安全组需要某种https规则吗

编辑:

进一步的线索。当我在本地运行mysql--ssl时,它不会出错。但是当我做mysql show_变量时,它说SSL为false,have_SSL和have_open_SSL变量不存在。这可能是问题所在吗?我通过适用于mac的自制软件包管理器安装了本地mysql

新编辑:

我重新安装了mysql(以前是从brew安装的),现在直接从oracle安装,当我尝试连接它时,会给出不同的错误-SSL连接错误:ASN:其他签名确认错误

  • 目前,AWS Aurora文档正在链接到要使用的过时SSL证书,因此出现了问题。AWS支持人员已对此进行了确认。改用这个:

  • 即使在使用该证书时,通过SSL连接到集群端点对于使用mysql-h连接的命令行仍然不起作用。如果我奇怪地从集群端点更改为实例端点,它会正常工作

  • 奇怪的是,mysql workbench确实通过ssl连接到实例端点和集群端点

  • 从中可以看出,对SSL连接的实例端点的限制是与证书关联的安全约束

    Amazon RDS创建SSL证书,并在Amazon RDS设置DB实例时在该实例上安装该证书。这些证书由证书颁发机构签署。SSL证书包括DB实例端点作为SSL证书的通用名称(CN),以防止欺骗攻击。因此,您无法使用DB群集端点使用SSL连接到DB群集的主实例

    如果不使用ssl,请使用mysql with--skip ssl选项。如果没有任何帮助,请升级mysql客户端 请尝试使用此密钥(来自Amazon文档)


    它肯定不在安全组中,因为MySQL(与http不同)有一种协商SSL使用的机制,不需要单独的端口。出于好奇,您在连接时使用的是完整的DNS主机名,是吗?如果省略了
    --ssl验证服务器证书
    ,会发生什么情况?@Michael sqlbot是的,我正在使用完整的主机名。如果我忽略验证服务器证书,我会得到相同的错误。如果我省略ssl complete并尝试一个普通的mysql命令行连接,我就可以进入。我认为这意味着我的客户端mysql和ssl不起作用。我注意到have_ssl和have_open_ssl变量不存在,您的本地机器上的时间正确吗?时钟漂移可能会导致SSL错误。@MikeRyan是的,这是正确的。它与服务器位于不同的时区,但在本地,时间是正确的。好的,时区不会成为问题。如果直接连接到一个DB节点端点,它是否有效?i、 不是群集端点。这里也有同样的问题。。。群集无法连接,实例正常。仅供参考,在我创建此问题时文档中没有。没问题。我偶然发现了它,并把它放在这里,这样我以后可以找到它。此外,在my.cnf中可能还有一些其他ssl选项,这将导致相同的失败。您可以忽略my.cnf文件,不使用默认值,例如:mysql——不使用默认值-h yourserver.us-west-2.rds.amazonaws.com——ssl ca=/etc/app ssl rds/rds-ca-2015-us-west-2-bundle.pem-uyouruser-p
    
    ERROR 2026 (HY000): SSL connection error: error:00000001:lib(0):func(0):reason(1)