自 SSL/TLS 证书更新以来,Django 应用程序未连接到 RDS

Posted

技术标签:

【中文标题】自 SSL/TLS 证书更新以来,Django 应用程序未连接到 RDS【英文标题】:Django App not connecting to RDS since SSL/TLS Cert Updates 【发布时间】:2020-07-04 21:36:06 【问题描述】:

我有一个在 ELB 上运行的 Django 应用程序连接到 mysql RDS db。

我最近检查过,它不再工作(应用程序运行良好,但当我尝试部署或运行​​任何与 manage.py db 相关的命令时出现以下错误。我可以手动连接到 RDS 数据库而不会出现问题。

django.db.utils.OperationalError: (2003, "Can't connect to MySQL server on '****.eu-west-1.rds.amazonaws.com' (110)"). 

我认为这与 SSL/TLS 证书的最近更新有关 - 但是我已进入我的 RDS 仪表板并在那里更新到新的 2019 版本,但我仍然收到此错误。

有谁知道这可能是什么原因造成的?在证书更改之前它运行良好,所以我只能假设它是相关的。

我已尝试将 ssl-ca rds-ca-2019-root.pem 添加到 django 的数据库选项中,但无论如何仍然会出现相同的错误。

任何帮助将不胜感激,因为我目前很困惑。

谢谢!

【问题讨论】:

【参考方案1】:

如果您使用 TLS 进行数据库连接,那么我使用 AWS 提供的“组合”ca 捆绑包获得了最大的成功。

可以在https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem 找到该文件,该文件在Using SSL/TLS to Encrypt a Connection to a DB Instance guide. 中引用。最好还查看本指南以检查您的任何其他假设。

【讨论】:

我在更改 RDS 上的安全组以暂时允许所有传入连接后设法进行部署 - 但是,尽管我没有收到任何错误,但我的查询似乎都没有实际执行任何操作。跨度>

以上是关于自 SSL/TLS 证书更新以来,Django 应用程序未连接到 RDS的主要内容,如果未能解决你的问题,请参考以下文章

在 2019 年 10 月 31 日之前更新您的 Amazon RDS SSL/TLS 证书

如果从服务器维护者处更新 SSL/TLS CA 证书,它将如何在我的设备中更新?

OpenMediaVault 5 进阶配置 启用 SSL/TLS

AWS,为 RDS 轮换 SSL/TLS 证书

请求被中止:无法创建 SSL/TLS 安全通道

通配符 SSL/TLS 证书