Debian上pgAdmin的安全设置主要包括以下方面:
系统与软件更新
定期更新系统和pgAdmin,修复安全漏洞:
sudo apt update && sudo apt upgrade
修改默认端口
编辑/etc/pgadmin4/config_local.py,将WEB_PORT改为非默认端口(如5051):
WEB_PORT = 5051 # 选择未被占用的端口
启用SSL加密
sudo openssl req -newkey rsa:2048 -x509 -days 3650 -keyout /etc/pgadmin4/server.key -out /etc/pgadmin4/server.crt
/etc/pgadmin4/config_local.py:SSL_CERTFILE = '/etc/pgadmin4/server.crt'
SSL_KEYFILE = '/etc/pgadmin4/server.key'
sudo systemctl restart pgadmin4
配置防火墙
使用ufw限制端口访问,仅允许可信IP连接:
sudo ufw allow 5051/tcp # 允许新端口
sudo ufw deny 5050/tcp # 禁止默认端口(若修改过)
sudo ufw enable
数据库访问控制
/etc/postgresql/<version>/main/pg_hba.conf,限制IP访问并启用SSL认证:hostssl all all 0.0.0.0/0 md5 # 仅允许SSL连接
sudo systemctl restart postgresql
用户权限管理
Login/Group Roles创建角色,分配最小必要权限。审计与日志
logrotate定期归档日志,避免日志泄露。最小权限原则
普通用户避免使用root权限,通过sudo执行必要操作。
以上设置可显著提升pgAdmin的安全性,防止未授权访问和数据泄露。