在研究了Postgresql的GUI之后,我发现pgadmin 4桌面客户端是一个有效的选择。
我使用的是Ubuntu 16.04服务器(Digital Ocean上的Droplet)和iptables防火墙。
如何允许远程计算机访问?安装了pgadmin的计算机有动态ip。
答案 0 :(得分:1)
您是想要从本地网络管理Postgresql,还是希望允许广阔世界中的其他用户连接到Postgresql服务器?
允许自己访问服务器以在同一子网上管理它非常容易。允许广大用户访问您的服务器是不明智的。
允许远程访问: 您需要编辑pg_HBA.conf文件。默认情况下,它只允许服务器本地用户连接到数据库。这是一个安全安全的事情。
以下代码片段来自我自己的Postgresql服务器:
# IPv4 local connections:
host all all 127.0.0.1/32 md5
这表示只允许匹配127.0.0.1/32的主机访问我的服务器。
如果您希望允许子网中的所有计算机访问Postgresql服务器,您可以执行以下操作:
# IPv4 local connections:
host all all 192.168.0.1/24 md5
上面的示例将帮助您前进,但是明智地阅读pg_hba.conf文件的postgresql文档是明智的。
如果你特别鲁莽和不负责任,享受危险生活的前景,并经常恐惧和厌恶,你会在你的pg_hba.conf文件中使用以下行,尽管我认真对待它。
# IPv4 local connections:
host all all 0.0.0.0/0 md5
这基本上说"来自任何地方的任何人都可以访问我的Postgresql服务器"我提供它只是作为一个小心谨慎的例子。
The documentation for the current version of Postgresql 9.6 can be found here在该链接附近也可以使用以前的版本,但在pg_hba.conf的情况下,版本之间似乎没有变化。
答案 1 :(得分:0)
我希望使用pgadmin等客户端从远程桌面计算机连接到我的云托管Postgresql数据库。
为实现这一点,我通过以下命令在iptables中打开了端口5432:
iptables -I INPUT 1 -m tcp -p tcp --dport 5432 -j ACCEPT
service iptables save
service iptables restart
我允许从Postgresql中的任何位置进行访问,如下所示:
nano /etc/postgresql/9.5/main/postgresql.conf
像这样编辑listen_address:
listen_addresses = '*'
保存并关闭nano编辑器并执行postgresql restart命令
service postgresql restart