场景:验证 PostgreSQL 服务器

扩展所有 | 折叠所有

我们建议您使用 TLS 证书对 PostgreSQL 服务器进行身份验证。您可以使用来自可信证书颁发机构 (CA) 的证书或自签名证书。请使用来自可信 CA 的证书,因为自签名证书仅提供有限保护。

管理服务器支持 PostgreSQL 的单向和双向 SSL 身份验证。

请按照以下步骤为 PostgreSQL 配置 SSL 身份验证:

  1. 为 PostgreSQL 服务器生成证书。

    在基于 OpenSSL 的跨平台实用程序中,执行以下命令:

    openssl req -new -x509 -days 365 -nodes -text -out psql.crt -keyout psql.key -subj "/CN=psql"

    chmod og-rwx psql.key

  2. 为管理服务器生成证书。

    运行以下命令。CN 值应与代表管理服务器连接到 PostgreSQL 的用户名匹配。默认情况下,用户名设置为 postgres。

    openssl req -new -x509 -days 365 -nodes -text -out postgres.crt -keyout postgres.key -subj "/CN=postgres"

    chmod og-rwx postgres.key

  3. 配置客户端证书身份验证。

    修改 pg_hba.conf 如下:

    hostssl all all 0.0.0.0/0 md5

    确保 pg_hba.conf 不包含以host开头的记录。

  4. 指定 PostgreSQL 证书。

    单向 SSL 身份验证

    双向 SSL 身份验证

  5. 重新启动 PostgreSQL 守护进程。

    运行以下命令:

    systemctl restart postgresql-14.service

  6. 指定管理服务器的服务器标志。

    单向 SSL 身份验证

    双向 SSL 身份验证

  7. 重启管理服务器服务。
页顶