通过端口 80 使用 phpPgAdmin 连接 Postgres 数据库有多安全?
通过端口 5432 使用数据库客户端工具访问 postgres DB 与通过端口 80 使用 phpPgAdmin 访问 postgres DB 有什么区别?
谢谢!
答案1
不同;只要你打了补丁,我不会说更安全或更不安全昨天公布的 PostgreSQL 重大安全漏洞。
如果你直接连接到没有打过补丁的 PostgreSQL,那么你的暴露风险是在进行身份验证之前,任何连接都可能遭到拒绝服务,包括数据破坏。如果您连接到已修补的 PostgreSQL,那么您就没事了;PostgreSQL 具有非常可靠的安全历史,并且此漏洞是七年来首次发现的严重漏洞。
如果您使用 PHPPgAdmin 作为前端,那么您就依赖 Web 服务器身份验证的安全性来控制对 PostgreSQL 的访问,并且依赖 PHPPgAdmin 中的安全编码来避免身份验证绕过攻击等。
不管怎样,您都需要随时注意安全补丁。使用 phpPgAdmin 会给您带来更大的攻击面,因此我倾向于将直接 PostgreSQL 连接视为更安全的选项,特别是如果您将服务器设置为需要 SSL 进行远程连接并使用防火墙限制允许的 IP 范围。
最好的选择仍然是“以上都不是”:
- 让 PostgreSQL 仅在本地主机和受信任的内部网络接口上监听,或者将其关闭;
- ssh 登录到服务器并使用
psql
。