linux

Linux下pgAdmin的网络设置

小樊
54
2025-10-07 09:08:50
栏目: 智能运维

Linux下pgAdmin网络设置指南

一、基础网络环境准备

在配置pgAdmin网络前,需确保Linux系统的网络接口已正确设置,可通过以下命令查看网络接口信息:
ip addr show(或传统命令ifconfig,若未安装需通过sudo apt install net-tools获取)。
若需配置静态IP(避免动态IP变动导致连接问题),编辑Netplan配置文件(通常位于/etc/netplan/目录,如01-netcfg.yaml),示例如下:

network:
  renderer: networkd
  ethernets:
    ens33:  # 网络接口名称(通过`ip addr`确认)
      dhcp4: no
      addresses: [192.168.1.101/24]  # 静态IP地址及子网掩码
      gateway4: 192.168.1.1  # 网关地址
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]  # DNS服务器

保存后应用配置:sudo netplan apply(部分系统可能需要重启网络服务:sudo systemctl restart NetworkManager)。

二、pgAdmin自身网络配置

pgAdmin的网络设置主要涉及监听地址端口,需修改其配置文件(路径因安装方式而异,常见为/etc/pgadmin/pgadmin.conf/opt/pgadmin4/config_local.py):

  1. 修改监听地址
    找到listen_address参数(若不存在则添加),设置为0.0.0.0以允许所有网络接口访问(若仅需本地访问,可保留127.0.0.1):
    [pgadmin]
    listen_address = 0.0.0.0
    
  2. 修改监听端口(可选):
    默认端口为5050(pgAdmin 4),若需更改,修改port参数:
    port = 8080  # 更改为自定义端口(如8080)
    
    保存配置文件后,重启pgAdmin服务使更改生效:
    sudo systemctl restart pgadmin4(若为手动启动,需重启终端或进程)。

三、PostgreSQL数据库网络配置(pgAdmin连接数据库必需)

pgAdmin需连接PostgreSQL数据库才能管理,因此需确保PostgreSQL允许远程连接:

  1. 修改PostgreSQL监听地址
    编辑PostgreSQL配置文件(路径通常为/etc/postgresql/<version>/main/postgresql.conf<version>为PostgreSQL版本号,如15),找到listen_addresses参数,设置为*(允许所有IP连接)或特定IP:
    listen_addresses = '*'
    
  2. 配置客户端认证
    编辑pg_hba.conf文件(位于同一目录),添加允许远程连接的规则(如允许所有IP通过MD5密码认证):
    host all all 0.0.0.0/0 md5
    
  3. 重启PostgreSQL服务
    sudo systemctl restart postgresql(或sudo service postgresql restart,取决于发行版)。

四、防火墙设置

需开放pgAdmin和PostgreSQL的端口,允许外部访问:

  1. 检查防火墙状态
    若使用firewalld(CentOS/RHEL常用),运行:sudo firewall-cmd --list-all
    若使用iptables(Ubuntu/Debian常用),运行:sudo iptables -L
  2. 开放端口
    • 对于firewalld,开放pgAdmin端口(默认5050)和PostgreSQL端口(默认5432):
      sudo firewall-cmd --permanent --add-port=5050/tcp  # pgAdmin端口
      sudo firewall-cmd --permanent --add-port=5432/tcp # PostgreSQL端口
      sudo firewall-cmd --reload
      
    • 对于iptables,添加规则:
      sudo iptables -A INPUT -p tcp --dport 5050 -j ACCEPT  # pgAdmin
      sudo iptables -A INPUT -p tcp --dport 5432 -j ACCEPT  # PostgreSQL
      sudo service iptables save  # 保存规则(部分系统需手动保存)
      
  3. 验证端口开放
    在另一台机器上运行telnet <服务器IP> 5050(或5432),若连接成功则表示端口开放。

五、测试pgAdmin网络连接

  1. 本地访问
    在服务器浏览器中输入http://localhost:5050(或自定义端口),使用pgAdmin安装时设置的凭据登录。
  2. 远程访问
    在另一台机器的浏览器中输入http://<服务器IP>:5050,若能访问则表示网络配置成功。
  3. 连接数据库
    在pgAdmin界面点击“+”→“服务器”,输入数据库服务器的IP地址(如192.168.1.100)、端口(默认5432)、用户名(如postgres)和密码,点击“保存”即可连接。

0
看了该问题的人还看了