私は私のウェブサイトのデータベースである資格情報を持つデータベースを持っています。
ローカルマシンからIP、ユーザー、パスワードを使用してこのデータベースにアクセスする方法はありますか?
Ubuntu 18.04、phppgadmin、PostgreSQLを使用します。
ありがとう。
警告:静的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
をホストとして使用して、そのポートに接続できます。
Webサイトをホストするプロバイダーは、データベースへのアクセスをWebサーバーからのリクエストに制限します。他のすべての要求は無視されます。さもなければ、彼らはデータベースに侵入したいハッカーからの絶え間ない攻撃を受けるでしょう。
したがって、データベースにアクセスできる唯一のプログラムは、Webサーバーで実行されるプログラムです。通常、これはPHPプログラム、たとえばWebサイトの構築プログラムなどです。データベースにアクセスするための資格情報は設定ファイルに保存されます。また、サービスとして、ホスティング会社は通常PHPMyAdmin( MySQLの場合)またはPHPPGAdmin(PostgreSQLの場合)後者の場合、データベース資格情報を自分で提供する必要があります。