phppgadmin 可以访问网站数据库吗?

phppgadmin 可以访问网站数据库吗?

我有一个带有凭证的数据库,它是我的网站的数据库。

有没有办法从我的本地机器使用 IP、用户和密码访问该数据库?

使用 Ubuntu 18.04、phppgadmin 和 PostgreSQL。

谢谢。

答案1

是的,如果您具有服务器的根访问权限。

警告:如果您没有静态 IP 地址,则不建议使用此方法,因为您需要向全世界开放您的数据库,而出于安全措施的考虑,此功能默认是禁用的,最好使用下面的方法。

如果你想忽略我的警告:

postgresql.conf

listen_addresses = '*'
#or
listen_addresses = 'your-static-ip'

添加pg_hba.conf此项以允许来自任何 IP 的远程连接:

host    all             all              0.0.0.0/0                       md5
#or
host    all             all              your-static-ip/32               md5

推荐方法:

如果您可以使用 连接到服务器ssh,那么还有更好/更安全的方法:

首先创建本地端口转发隧道:

ssh -L 5432:127.0.0.1:5432 your-server.com
#or
ssh -L 5432:localhost:5432 your-server.com

这会将本地端口转发ssh到您服务器上的端口。然后,您可以作为localhost主机连接到该端口。

答案2

很可能不是。

托管网站的提供商将限制对数据库的访问,仅允许来自 Web 服务器的请求。所有其他请求都将被忽略。否则,他们将不断受到想要侵入数据库的黑客的攻击。

因此,唯一可以访问数据库的程序是那些在您的 Web 服务器上运行的程序。通常这意味着 PHP 程序,例如您网站所基于的程序。访问数据库的凭据将存储在配置文件中。此外,作为一项服务,托管公司通常提供 PHPMyAdmin(对于 MySQL)或 PHPPGAdmin(对于 PostgreSQL)。对于后者,您需要自己提供数据库凭据。

相关内容