我能够通过“psql”以“posgres”的身份使用任何 Linux 用户登录 - 这是一个安全问题吗?

我能够通过“psql”以“posgres”的身份使用任何 Linux 用户登录 - 这是一个安全问题吗?

sudo su postgres以 Linux 用户身份登录时使用并设置了我的数据库postgres。退出到我的普通 shell 后,以非 root 用户身份登录,我可以轻松使用psql -U postgres任何数据库、Postgres 用户等,然后对它们执行任何我想执行的操作。这是正常的吗?这会带来安全风险吗?

答案1

听起来您的pg_hba.conf设置是trust用于local连接的。如果您信任本地用户,那还不错,尽管我认为这对于生产来说不是一个好主意。

制作非常肯定trust不是为host(网络)连接设置的 - 允许 127.0.0.1 是可以的trust,但我实际上只会考虑在测试设置中这样做,永远不会在生产中这样做。您应该md5对网络客户端使用密码验证或强大的安全机制,如证书验证、Kerberos 等。

相关内容