概要
このドキュメントでは、ハイアベイラビリティ(HA)セットアップでpostgresユーザにアクセスするためにパスワードを要求する方法について説明します。
前提条件
要件
このドキュメントに特有の要件はありません。
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- クラウドセンター< v4.8.0.1
- 4.8.0.1アップグレード
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
問題:CCMデータベースのPostgresユーザがパスワードを必要としない
Cloud Center Manager(CCM)データベース(DB)が4.8.0.1より前のバージョンのCCMから切り離されたHAセットアップ、または古いバージョンから4.8.0.1にアップグレードした場合(4.8.0.1以降のクリーンインストールは影響を受けません)、CCMデータベース上のpostgresははははパスワードはこれは、潜在的なセキュリティの脆弱性です。
解決方法
各DBインスタンスで次のコマンドを実行します。
echo "*:*:*:replication:password" >> /root/.pgpass
echo "*:*:*:replication:password" >> ~postgres/.pgpass
sed -i 's/\(0.0.0.0.*\)trust/\1md5/' /var/lib/pgsql/9.5/data/pg_hba.conf
pg_hba.confの信頼のすべてのインスタンスがmd5に変更されていることを確認します。変更されていない場合は、手動でtrustという単語をmd5に変更します。
su - postgres
/usr/pgsql-9.5/bin/pg_ctl reload
\q
これにより、設定の変更に伴ってpostgresがリロードされ、データベースがパスワードレス認証のために開かれないことを確認します。
問題が解決したかどうかを確認し、CCMにログインして、このコマンドを実行できます。postgresパスワードの入力を求められたら、変更が成功したことを確認してください。
psql -h IP_ADDRESS_OF_DATABASE -U postgres