centos pgadmin网络设置怎么做
导读:CentOS 上 pgAdmin 网络设置 一、先明确访问方式 常见有三种部署形态,网络配置各不相同: 容器化:运行 pgAdmin4 容器,默认端口 5050 映射到宿主机。 RPM 包 + Apache/Wsgi:以 HTTP 80...
CentOS 上 pgAdmin 网络设置
一、先明确访问方式
- 常见有三种部署形态,网络配置各不相同:
- 容器化:运行 pgAdmin4 容器,默认端口 5050 映射到宿主机。
- RPM 包 + Apache/Wsgi:以 HTTP 80/443 对外提供 Web 服务。
- 桌面版 pgAdmin:在本地图形界面运行,不涉及服务器网络。
下文分别给出网络要点与命令示例。
二、容器化部署的网络要点
- 启动容器并映射端口(示例将容器 80 映射到宿主机 5050):
- docker run --name pgadmin -p 5050:80
-e PGADMIN_DEFAULT_EMAIL=admin@pgadmin.com
-e PGADMIN_DEFAULT_PASSWORD=admin
-d dpage/pgadmin4
- docker run --name pgadmin -p 5050:80
- 访问地址:http://< 服务器IP> :5050
- 防火墙放行:
- sudo firewall-cmd --permanent --zone=public --add-port=5050/tcp
- sudo firewall-cmd --reload
- 若 pgAdmin 与 PostgreSQL 同在自定义 Docker 网络,连接数据库时请使用 容器 IP(可通过 docker network inspect < 网络名> 查看)。
三、RPM 包 + Apache/Wsgi 部署的网络要点
- 安装与初始化:
- sudo yum install -y pgadmin4-web
- 运行初始化脚本并按提示创建管理员账号:sudo /usr/pgadmin4/bin/setup-web.sh
- 配置 Apache 对外访问(示例为 80 端口;如需 443 请配置 TLS/证书):
- 复制并启用样例配置:sudo cp /etc/httpd/conf.d/pgadmin4.conf.sample /etc/httpd/conf.d/pgadmin4.conf
- 在 VirtualHost 中确保有:Listen 80 与 < VirtualHost *:80>
- 检查语法并重启:sudo httpd -t & & sudo systemctl restart httpd
- 防火墙放行:
- sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
- sudo firewall-cmd --reload
- 访问地址:http://< 服务器IP> /pgadmin4(若部署为子路径,请确保反向代理/WSGI 配置一致)。
四、被管理的 PostgreSQL 数据库的网络放行
- 要让 pgAdmin 能连到数据库,目标 PostgreSQL 需允许远程:
- 修改 postgresql.conf:listen_addresses = ‘*’
- 修改 pg_hba.conf,增加例如:host all all 0.0.0.0/0 md5
- 重启数据库:sudo systemctl restart postgresql-< 版本>
- 防火墙放行数据库端口(默认 5432):
- sudo firewall-cmd --permanent --zone=public --add-port=5432/tcp
- sudo firewall-cmd --reload
- 注意:开放 0.0.0.0/0 存在安全风险,生产环境建议限制为 内网网段 或特定 IP。
五、安全与排错建议
- 访问控制:
- 仅开放必要端口(pgAdmin 的 80/443/5050;数据库的 5432)。
- 使用 firewall-cmd --permanent --zone=public --add-rich-rule 限制来源 IP,例如仅允许 192.168.1.100 访问 pgAdmin。
- SELinux:
- 若使用 RPM + Apache 部署,遇到 403/500 等,检查 httpd 对 pgAdmin 目录的访问权限与 SELinux 布尔值(必要时 setsebool/restorecon)。
- 路径与版本差异:
- pgAdmin 4 的 Python 路径可能为 /usr/lib/python3.6/site-packages/pgadmin4-web(或 python2.7),修改配置与执行 setup.py 时请使用实际路径与对应 python 版本。
- 日志与连通性:
- 查看 /var/log/pgadmin4/pgadmin4.log 与 /var/log/httpd/error_log 定位问题;从客户端测试端口连通(如 curl/telnet)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos pgadmin网络设置怎么做
本文地址: https://pptw.com/jishu/776931.html
