【问题标题】:"PG::ConnectionBad: SSL error: point is not on curve" in Redshift via Ruby/PG gem using SSL“PG :: ConnectionBad:SSL错误:点不在曲线上”通过Ruby / PG gem在Redshift中使用SSL
【发布时间】:2015-12-07 16:03:51
【问题描述】:

尝试通过 SSL 使用 Ruby(通过 PG gem)在 Amazon Redshift 上运行查询时遇到以下错误:

PG::ConnectionBad: SSL error: point is not on curve

此错误仅在我的本地 Mac OS X El Capitan 机器上尝试通过 SSL 连接时发生。没有 SSL 的连接工作正常。在 Ubuntu 开发服务器上通过 SSL 连接也可以正常工作,这让我认为这是我本地 Ruby/OpenSSL 设置的问题。

运行 Ruby 2.2.2、OpenSSL 1.0.2e、pg gem 0.18.2。

我已验证我的 Ruby 使用的是预期版本的 OpenSSL:

2.2.2 :001 > OpenSSL::OPENSSL_VERSION => "OpenSSL 1.0.2e 3 Dec 2015"

我还通过 Sequel gem 验证了错误发生在 Rails/ActiveRecord 和普通旧 ruby​​ 中。

我使用的 pg 数据库配置设置为 sslmode: require

想法?

【问题讨论】:

  • 请发布您用于连接服务器的确切 URL,并发布 openssl s_client -connect <hostname>:<port> -tls1 -servername <hostname> | openssl x509 -text -noout 的输出。通过单击编辑将其添加到您的问题中(不要将其作为评论发布)。否则,我们无法重现它,也没有足够的信息来帮助解决它。

标签: openssl amazon-redshift pg


【解决方案1】:

我使用的是旧版本的 Postgres.app。将其更新到最新版本并重新安装 ruby​​(通过 RVM)解决了我的问题。

关于为什么这可以解决问题的当前理论:显然 Postgres.app 提供了 psql 或在编译 pg gem 的本机扩展的过程中使用的其他东西。无论 Postgres.app 提供什么都不好,因此结果会直接传播到 gem 和应用程序本身。

【讨论】:

    猜你喜欢
    • 2014-07-13
    • 2013-01-13
    • 2015-09-24
    • 2020-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-18
    • 2017-01-03
    相关资源
    最近更新 更多