Debian上PostgreSQL网络设置解析
Debian上PostgreSQL网络设置主要涉及配置文件修改与防火墙调整,核心步骤如下:
-
修改
postgresql.conf
- 找到
listen_addresses
参数,设置为'*'
以允许所有IP连接(或指定具体IP,如192.168.1.100
)。 - 确认
port
参数(默认5432)与防火墙规则一致。
- 找到
-
配置
pg_hba.conf
- 添加规则允许远程访问,例如:
host all all 0.0.0.0/0 md5
(允许所有IP通过密码认证,生产环境不推荐)。
或限制特定网段:host all all 192.168.1.0/24 md5
。 - 支持的认证方法包括
md5
(密码加密)、scram-sha-256
(更安全的加密方式)。
- 添加规则允许远程访问,例如:
-
重启服务与验证
- 重启PostgreSQL使配置生效:
sudo systemctl restart postgresql
。 - 使用
sudo netstat -plnt | grep postgres
检查端口监听状态,确认0.0.0.0:5432
在监听。
- 重启PostgreSQL使配置生效:
-
防火墙设置
- 若使用
ufw
,允许PostgreSQL端口:sudo ufw allow 5432/tcp
。 - 若使用
iptables
,添加规则:sudo iptables -A INPUT -p tcp --dport 5432 -j ACCEPT
。
- 若使用
-
安全建议
- 生产环境中避免使用
listen_addresses='*'
,应指定具体IP。 - 优先使用
scram-sha-256
替代md5
,并定期更新密码。 - 通过
pg_hba.conf
限制仅允许必要IP访问,最小化权限。
- 生产环境中避免使用
配置文件路径:
postgresql.conf
:/etc/postgresql/<版本>/main/postgresql.conf
。pg_hba.conf
:/etc/postgresql/<版本>/main/pg_hba.conf
。
参考来源:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权请联系我们,一经查实立即删除!