postgres 服务器在 LAN 上运行但在 WAN 上运行不成功(连接被拒绝)

postgres 服务器在 LAN 上运行但在 WAN 上运行不成功(连接被拒绝)

我正在尝试设置一个 postgres 服务器,但无法通过互联网访问它。它在我的局域网上运行良好。服务器只是一台使用 Ubuntu 12.04 桌面的台式计算机。

免责声明:我不打算永久使用此配置。最终我将通过 SSH 隧道进行连接,而我所做的某些操作可能不安全,但现在我只想弄清楚为什么它不起作用。

在我的 postgresql.conf 文件中,我设置了listen_addresses = '*'。为了测试它不是我的pg_hba.conf,我注释了所有内容,然后只使用

host all all all trust

防火墙似乎没有发生任何事情——确保我安装了 gufw 并允许服务器和客户端上的所有传入和传出流量。

当我尝试通过指向服务器外部 IP 地址的域名进行连接时,我收到以下消息:

psql: could not connect to server: Connection refused
Is the server running on host "<hostname>" (<IP address>) and accepting
TCP/IP connections on port 5432?

结果netstat -an | grep 5432似乎表明 postgres 确实正在监听所有地址上的连接:

tcp        0      0 0.0.0.0:5432            0.0.0.0:*               LISTEN     
tcp6       0      0 :::5432                 :::*                    LISTEN     
unix  2      [ ACC ]     STREAM     LISTENING     9771     /var/run/postgresql/.s.PGSQL.5432

答案1

pg_hba.conf 中的一行,例如:

host all all 0.0.0.0/0 md5

相关内容