PostgreSQL 9.2のpg_hda.confファイル設定とファイアウォール設定

PostgreSQLをインストールしただけではPostgreSQLを実行しているサーバー以外のクライアントからデータベースにアクセスすることはできません。PostgreSQLの設定ファイルにアクセスを許可するクライアントIPを記述し、ファイアウォールを開けることでPostgreSQLサーバー以外からのアクセスが可能となります。

ここでは、アクセスを許可するクライアントの指定方法とファイアウォールの開け方について説明します。

■アクセスを許可するクライアントの指定方法

テキストエディタでpg_hda.confを開きます。ファイルの場所はPostgresをインストールした時に指定したデータディレクトリにあります。
このサイトの「PostgreSQLのダウンロードとインストール」を参考にした方はC:\PostgreSQL\9.2\dataになります。

ファイルの下のほうに青色の行を追加して上書き保存してください。
※192.168.1.0/24の部分は、192.168.1.1~192.168.1.254までのIPアドレスのホスト(クライアント)を許可するという意味で、ご覧になられている方のネットワーク環境に合わせて変更してください。

# TYPE DATABASE USER ADDRESS METHOD
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 192.168.1.0/24 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
#host replication postgres 127.0.0.1/32 md5
#host replication postgres ::1/128 md5

※設定ファイルを変更したら、プログラムに設定内容を反映させるため、サービスの再起動又はWindowsの再起動を行ってください。

■ファイアウォールの開け方


↑コントロールパネルの「ファイアウォール」をクリックします。


↑「詳細設定」をクリックします。


↑「受信の規則」をクリックします。


↑「新しい規則…」をクリックします。


↑「ポート」のラジオボタンをクリックし「次へ(N)>」をクリックします。


↑「TCP」のラジオボタンが選択されていることを確認し「特定のローカルポート(S):」のテキストボックスに 5432 と入力します。

「次へ(N)>」をクリックします。


↑「接続を許可する(A)」のラジオボタンが選択されていることを確認し「次へ(N)>」をクリックします。


↑「ドメイン(D)」と「プライベート(P)」のチェックボックスをチェックし「次へ(N)>」をクリックします。
ご覧になられている方のネットワーク環境に合わせてチェックを変更してください。。


↑「名前(N):」のテキストボックスにPostgreSQLと入力し「完了(F)」をクリック します。

これでPostgreSQLが使用するポート(TCP:5432)の開放は完了です。