如何为多个ip地址配置postgresql postgresql.conf listen_addresses

chr*_*arx 57 postgresql

我可以很好地连接到远程postgresql服务器,该服务器对pg_hba.conf中的几个ips有连接限制,但是如果你在postgresql.conf文件中将listen_addresses设置为"*"就足够了吗?

该文件表明该参数可以采用逗号分隔的IP地址列表,但如果我这样做,则会失去远程连接的能力.

postgresql-8.4.9 rhel

dbe*_*hur 81

listen_addresses控制服务器将回答哪些IP,而不是服务器允许连接进行身份验证的IP.使用它是完全合理和正常的,listen_addresses '*'因此服务器将接受分配给postgresql服务器主机上的接口的任何ip上的传入连接,同时使用pg_hba.conf来控制服务器将接受登录的更细粒度级别的访问.特定数据库和用户.

  • 编辑以使其更加明确“pg_hba.conf”控制*登录*。服务器仍然接受任何侦听接口上的 TCP/IP 连接并与连接客户端进行对话。它只是很快得出结论,客户端不在允许的 IP 范围内并关闭连接。这意味着预身份验证漏洞可以与“pg_hba”排除一起使用,但如果 Pg 根本没有在漏洞进入的接口上侦听,则不能。答案是防火墙规则,而不是“listen_addresses”。 (3认同)
  • `/etc/postgresql/11/main/postgresql.conf` 是在 Ubuntu 上添加 `listen_addresses` 的地方 (3认同)

ara*_*nid 5

dbenhur指出,将listen_addresses设置为'*'是正常的。另外,您可以使用iptables之类的工具来拒绝访问某些远程IP之外的端口。您甚至可以做到这两者:安全性冗余不一定是一件坏事(尽管依靠IP地址安全性并不是很好)。