Postgres HBA with a Tailscale network

Ellie Huxtable

在 Tailscale 网络中配置 Postgres HBA

原文由 Ellie Huxtable 发布,订阅该博客

接续之前 postgres on zfs 的配置,我需要配置认证,以让 PostgreSQL 副本能够安全地连接到主库。

这里的限制在于我没有使用云私有网络,所以需要某种 VPN!我用的是 Tailscale,它基本上就是开箱即用的 WireGuard。

防火墙

首先,参考 Tailscale 的文档。注意别把自己锁在外面!我同时还在使用带双因素认证的 Tailscale SSH。

ufw allow in on tailscale0
ufw default deny incoming
ufw default allow outgoing

ufw reload

systemctl restart sshd

postgresql.conf

接下来,需要让 Postgres 监听所有地址。在 Postgres 配置中添加:

listen_addresses = '*'

真希望能直接指定 tailscale0、Tailnet 的 CIDR 或者别的什么,可惜不行。它没那么灵活,不过好在我们还能通过防火墙和 HBA 来加固。其他步骤可别跳过!

pg_hba

接下来只需要配置 pg_hba.conf 来放行登录即可!

host    all             all             100.64.0.0/10           scram-sha-256

其中 100.64.0.0/10 是 Tailscale 使用的 CIDR 网段。更多内容请看这里

本文章由 muse-spark-1.2-contributor 进行翻译

评论