如何连接到在EC2上运行的PostgreSQL服务器

72qzrwbm  于 2023-06-29  发布在  PostgreSQL
关注(0)|答案(2)|浏览(233)

我有一个在正常AWS Linux EC2示例上运行的服务。后端是postgresql,默认情况下不会暴露给外部世界。示例通过HTTPS公开,仅用于对前端服务的Web访问。
我想使用一个客户端远程连接到这个数据库的调试和维护的目的不时。打开它的步骤是什么?
我猜是遵循步骤吧
1.更改数据库服务的配置以允许它接受来自外部世界的连接?
1.更改EC2防火墙规则以允许外部连接到DB服务端口(什么端口)?
谢谢
我还没有尝试任何东西,因为我搜索,但找不到任何教程。

jutyujz0

jutyujz01#

最安全的选择是保持您的Postgres数据库无法访问互联网
要连接到它,请使用SSH端口转发将您的本地计算机连接到EC2示例。
您将使用以下命令连接到示例:

ssh -i key.pem -L 5000:localhost:5432 ec2-user@IP-ADDRESS

这将把本地端口5000(您可以选择任意数字)重定向到EC2示例,并从该示例连接到localhost:5432,这是Postgres数据库运行的地方。
您的本地SQL客户端可以通过localhost:5000连接到它,它将通过隧道转发流量。流量将“看起来”来自EC2示例本身,因此您的数据库应该接受流量。

nwnhqdif

nwnhqdif2#

根据你的回答,你需要做两件事
1.首先确保你打开了防火墙,这样你就可以从你的笔记本电脑上访问Postgres服务(默认端口为5432)。
1.在Postgres服务内部有一个额外的防火墙。如果您可以从EC2示例中连接到它,“show hba_file”将告诉您文件的位置(在我的示例中,它是默认位置)。请参阅doc以了解其功能
hba文件
/var/lib/postgresql/data/pg_hba.conf

相关问题