我在另一台服务器上使用远程PostgreSQL,并希望将Rails应用程序部署到AWS。我希望AWS与远程PostgreSQL数据库服务器通信。
我收到了错误:
致命:用户“postgres”的对等身份验证失败
虽然我已将pg_hba.conf
我是如何列入白名单的?
我在AWS控制台中看到了公共IP并添加了它。我已经ping了我的AWS网站并添加了IP。
答案 0 :(得分:0)
Peer authentication
表示您未尝试远程连接,而是本地连接。您必须查看database.yml
中的设置。看到
PG Peer authentication failed了解相关问题。
一旦您准备好连接到真正的远程服务器,那可能仍然无法使用评论中链接到的pg_hba.conf
,因为:
不接受host all all * md5 host all all [AWS-PINGED-IP] md5 host all all [AWS-SPECIFIED-PUBLIC-IP] md5
*
作为IP地址掩码,此处不欢迎使用shell通配符语法。在CIDR表示法中使用0.0.0.0/0
表示"任何IPv4地址"。
或者如果你没有意思接受来自任何地址的连接,那么完全删除这一行,这似乎是在给定两行之后的情况。
请注意,规则解释会在第一场比赛中按照声明的顺序停止,因此拥有" accept-all"是不合理的。规则后面是一个更严格的规则,因为后者将永远被忽略。