PostgreSQLは、デフォルトでは自ホスト内の接続しか許可されていません。
JDBC等で他のホストからアクセスする際の接続設定をまとめます。実行環境は次の通りです。
・CentOS 7.5
・PostgreSQL 9.2.23
#postgresq.confファイルの修正
デフォルトで、localhostからの接続しかListenしていない為、下記を設定
# vi /var/lib/pgsql/data/postgresql.conf
listen_addresses = '*' (#を外し、'localhost' から'*'に変更)
port = 5432 (#を外す)
※listen_addressesにアドレス範囲は指定出来ず、pg_hba.confファイルで指定する
Firewallの設定
# firewall-cmd --add-port=5432/tcp --zone=public --permanent
# systemctl restart firewalld
#pg_hba.confファイルの修正
・pg_hba.conf:対象DBへの該当DBユーザの接続元と認証方式を指定
接続を許可するクライアントのアドレスと認証方式を追記する
例)クライアントは10.44.59.0/24でmd5(暗号化パスワード)認証
# vi /var/lib/pgsql/data/pg_hba.conf
host all all 10.44.59.0/24 md5
サービス再起動
# systemctl restart postgresql