【问题标题】:can't change postgres 10.4 user password on AWS ec2无法更改 AWS ec2 上的 postgres 10.4 用户密码
【发布时间】:2021-02-26 04:51:28
【问题描述】:

我想为我在 Amazon Linux ec2 服务器上设置的 psql db 添加密码保护。我只希望可以通过服务器实例访问数据库(我通过 putty 连接到服务器),并且只能通过密码验证。

以前,我的 pg_hba.conf(位于 /var/lib/pgsql/data/)看起来像这样(用户:全部,方法:信任):

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             postgres                                trust
# IPv4 local connections:
host    all             postgres        127.0.0.1/32            trust
# IPv6 local connections:
host    all             postgres        ::1/128                 trust
# replication privilege.
local   replication     postgres                                trust
host    replication     postgres        127.0.0.1/32            trust
host    replication     postgres        ::1/128                 trust

为了保护它,我把它改成了这个(用户:postgres,方法:scram-sha-256):

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     scram-sha-256
# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
# IPv6 local connections:
host    all             all             ::1/128                 scram-sha-256
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     scram-sha-256
host    replication     all             127.0.0.1/32            scram-sha-256
host    replication     all             ::1/128                 scram-sha-256

设置密码,我用过(进入 postgres 终端):

[ec2-user@AWS]: sudo -u postgres psql

然后我运行:

postgres=# ALTER ROLE postgres PASSWORD 'new_password';

我收到了:

ALTER ROLE

然后当我退出 postgres 终端并更改为 postgres 用户时:

[ec2-user@AWS]: su - postgres

系统提示我输入密码。 我输入之前的设置:

Password: 'new_password'

我得到:

su: Authentification failure

我错过了什么..?

【问题讨论】:

    标签: linux authentication amazon-ec2 psql postgresql-10


    【解决方案1】:

    您必须将password_encryption 设置为scram-sha-256 并在更改密码之前重新加载服务器。 scram-sha-256 身份验证仅适用于 scram-sha-256-hashed 密码。

    【讨论】:

    • 啊,我们开始了 - 这是一个打开和关闭的案例。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-04
    • 1970-01-01
    • 1970-01-01
    • 2018-05-26
    • 2016-12-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多