RDS PostgreSQL:常规错误:7 SSL错误:密钥长度无效

问题描述 投票:5回答:2

有时我从RDS PostgreSQL中捕获错误。

SQLSTATE [HY000]:常规错误:7 SSL错误:密钥长度无效

通常它工作正常,但有时错误。

会是什么呢?有任何想法吗?

  • 引擎:PostgreSQL 9.4.1
  • 证书颁发机构:rds-ca-2015(2020年3月5日)
  • 实例类:db.m3.medium
  • 存储类型:通用(SSD)
  • IOPS:已禁用
  • 存储:100 GB
  • 加密已启用:否
  • 数据库实例状态:可用
  • 多AZ:不。

更新2016-01-18

SQL请求无关紧要,我用不同的请求捕获错误,通常是原始的。我没有看到与SQL请求有任何关系。

我注意到,当SQL请求有延迟时会发生这种情况:

  • < - 来自PayPal Webhook活动的请求
  • - > SQL请求(一切都很好)
  • - >请求PayPal REST API进行验证(一切正常)
  • - > SQL请求(捕获错误)

我无法理解,这只适用于AWS / RDS,或者有人在其他情况下捕获它?

更新2016-01-27

来自error / postgresql.log

日志:无法从客户端接收数据:由对等方重置连接

当我尝试再次执行查询时,我收到另一个错误:

SQLSTATE [HY000]:一般错误:7没有连接到服务器

重新连接没有帮助,我有同样的错误“没有连接到服务器”


该脚本在白天进行了50次尝试,最后脚本工作没有错误。

似乎与网络或连接相关的错误(PDO连接,PHP-FPM,PHP 5.6,SSL)

postgresql amazon-web-services ssl networking rds
2个回答
3
投票

与Paypal相同的问题,我关闭了PostgreSQL连接池(内部网络)中的sslmode

sslmode=disable

dsn = 'pgsql:host=host.com;port=5432;dbname=postgres;sslmode=disable'

0
投票

TLDR;

如果您使用OpenSSL或与其相关的任何内容以及PHP <7.1,关闭Postgres的SSL可能会解决您的问题。

非TLDR;

自定义框架,AWS VM上的Postgres 9.3和遗留PHP 5.3也存在同样的问题。

工作了3年没有任何问题然后突然一个简单的选择开始抛出此错误而没有对代码/配置进行任何相关更改。它不是我们拥有的最长查询(字符计数),并且它不是需要很长时间才能执行的查询。

虽然在Postgres qazxsw poi中关闭SSL,但在SAN中明确禁用它:qazxsw poi(请参阅@Gergo Bacskai回答)确实有帮助,错误没有返回。

因此,经过深入调查后,似乎是什么原因是这个错误:pg_hba.conf

我们在与第三方服务集成时已经开始使用sslmode=disable,它可能使用https://bugs.php.net/bug.php?id=69524或其替代品,这就是我们开始接收这些错误的那一刻。

© www.soinside.com 2019 - 2024. All rights reserved.