Rocky Linux 9上で稼働するPostgreSQLにネットワーク経由で接続可能に設定します。
記事の目次
PostgreSQLがリッスンするアドレスを設定する!
PostgreSQLがリッスンするアドレスを設定します。デフォルトでは「127.0.0.1」なので、ネットワーク経由で接続可能にするためには、「0.0.0.0」あるいはサーバのアドレスを指定します。
# vi /var/lib/pgsql/data/postgresql.conf ... listen_addresses = '0.0.0.0' # what IP address(es) to listen on; ...
PostgreSQLのクライアントから接続を許可するアドレスを設定する!
PostgreSQLのクライアントからの接続を許可するアドレスを設定します。今回は、IPアドレスに接続するアドレスに制限のない「0.0.0.0/0」、認証方法は「pam」に設定しました。
# vi /var/lib/pgsql/data/pg_hba.conf ... # IPv4 local connections: #host all all 127.0.0.1/32 ident host all all 0.0.0.0/0 pam ...
接続するユーザのパスワードを設定する!
pam認証にしたので、接続するユーザのパスワードを設定します。今回は、「postgres」のパスワードを設定します。
# echo postgres | passwd --stdin postgres Changing password for user postgres. passwd: all authentication tokens updated successfully.
PostgreSQLを再起動します。
PostgreSQLを再起動して設定を有効化します。
# systemctl restart postgresql.service
「0.0.0.0」でリッスンしていることを確認します。
# ss -lt4np State Recv-Q Send-Q Local Address:Port Peer Address:Port Process LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=748,fd=3)) LISTEN 0 244 0.0.0.0:5432 0.0.0.0:* users:(("postmaster",pid=5731,fd=6))
FirewalldでPostgreSQLの通信許可設定を行います。
FirewalldでPostgreSQLの通信を許可します。
# sudo firewall-cmd --add-port=5432/tcp --zone=public --permanent success [root@vmsrdb11 data]# sudo firewall-cmd --reload success
おわりに
PostgreSQLはデフォルトでネットワーク接続不可の設定となっているため、PostgreSQLがリッスンするアドレスと接続を許可する設定を行いました。
参考情報
関連記事