首页主机资讯Ubuntu上PostgreSQL安全设置指南

Ubuntu上PostgreSQL安全设置指南

时间2025-11-19 11:29:04发布访客分类主机资讯浏览507
导读:Ubuntu 上 PostgreSQL 安全设置指南 一 基础安全加固 修改默认账户口令:切换到系统 postgres 用户并登录数据库,设置强口令。示例:sudo -u postgres psql -c “ALTER USER post...

Ubuntu 上 PostgreSQL 安全设置指南

一 基础安全加固

  • 修改默认账户口令:切换到系统 postgres 用户并登录数据库,设置强口令。示例:sudo -u postgres psql -c “ALTER USER postgres WITH PASSWORD ‘StrongPass!2025’”; 避免使用弱口令或历史口令。完成后可本地验证:psql -U postgres -h 127.0.0.1 -p 5432。
  • 保持软件更新:定期执行 sudo apt update & & sudo apt upgrade,及时修补 PostgreSQL 与操作系统漏洞。
  • 最小权限原则:仅授予应用与用户必需权限,避免使用 SUPERUSER;按“人-库-表-列”逐级授权,定期审计。
  • 备份与恢复演练:建立周期性备份(如基础备份+WAL归档或逻辑备份),并定期验证可恢复性。

二 网络与访问控制

  • 监听地址最小化:编辑 /etc/postgresql/< 版本> /main/postgresql.conf,将 listen_addresses 设为仅需要的地址(如仅内网 IP),避免暴露到公网。示例:listen_addresses = ‘127.0.0.1,10.0.0.5’。
  • 精细化的 pg_hba.conf:仅允许受控来源、指定数据库与用户、使用强认证方式(推荐 scram-sha-256,至少使用 md5),拒绝默认“trust”。示例:
    • 本地:local all all peer(或 md5,视本地安全策略而定)
    • 内网应用:host mydb appuser 10.0.1.0/24 scram-sha-256
    • 管理通道:host postgres admins 10.0.0.10/32 scram-sha-256
      修改后执行 sudo systemctl reload postgresql 使 ACL 生效。
  • 防火墙与云安全组:仅开放 5432/TCP 到白名单来源;在云上通过安全组限制入站,避免 0.0.0.0/0。

三 加密与传输安全

  • 启用 SSL/TLS:在 postgresql.conf 中启用 ssl = on,并配置 server.crt 与 server.key(生产建议使用受信任 CA 签发证书);在客户端连接串中指定 sslmode=verify-full 或至少 require。
  • 管理通道加密:对 pgAdmin、运维跳板机等管理连接统一走 TLS,避免明文凭据与数据泄露。
  • 证书与密钥管理:保护私钥权限(如 600),定期轮换证书,确保证书链完整。

四 身份与权限管理

  • 角色与用户:优先使用“角色+登录权限”模型,按职责划分角色(只读、读写、DDL、运维)。示例:CREATE ROLE app_read WITH LOGIN PASSWORD ‘R3ad0nly!’;
  • 库与模式权限:按库授予 CONNECT,按模式授予 USAGE,按表/列授予 SELECT/INSERT/UPDATE/DELETE;避免使用 PUBLIC 默认权限。示例:GRANT CONNECT ON DATABASE mydb TO app_read; GRANT USAGE ON SCHEMA public TO app_read; GRANT SELECT ON ALL TABLES IN SCHEMA public TO app_read;
  • 变更可审计:对 DDL 操作建立工单与审计记录,必要时通过事件触发器或审计扩展增强可追溯性。

五 运维与监控

  • 日志与审计:在 postgresql.conf 中开启 log_connections、log_disconnections、log_statement(生产建议至少 ddl 或 mod),并集中到安全的日志服务器进行留存与告警。
  • 入侵检测与防护:结合 fail2ban 对暴力连接进行封禁;对异常登录、失败次数、来源 IP 进行阈值告警。
  • 备份与演练:定期执行基础备份与 WAL 归档(或逻辑备份),并进行恢复演练与校验,确保 RPO/RTO 达标。
  • 版本与补丁:订阅安全公告,及时升级小版本修复漏洞;对扩展与依赖组件同步更新。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu上PostgreSQL安全设置指南
本文地址: https://pptw.com/jishu/750996.html
如何在Ubuntu上优化PostgreSQL查询 Ubuntu PostgreSQL日志管理技巧

游客 回复需填写必要信息