目錄

簡介

必要條件

需求

採用元件

問題：CCM資料庫上的Postgres使用者不需要密碼

解決方案

簡介

本文說明如何要求密碼在高可用性(HA)設定中訪問postgres使用者。

必要條件

需求

本文件沒有特定需求。

採用元件

本文中的資訊係根據以下軟體和硬體版本：

- 雲中心< v4.8.0.1

- 4.8.0.1升級

本文中的資訊是根據特定實驗室環境內的裝置所建立。文中使用到的所有裝置皆從已清除（預設）的組態來啟動。如果您的網路正在作用，請確保您已瞭解任何指令可能造成的影響。

問題：CCM資料庫上的Postgres使用者不需要密碼

在HA設定中，對於低於4.8.0.1的版本，Cloud Center Manager(CCM)資料庫(DB)與CCM分離，或者如果從較低版本升級到4.8.0.1（4.8.0.1之後的clean安裝不受影響），CCM資料庫上的postgres使用者在連線到該資料庫時不需要密碼。這是一個潛在的安全漏洞。

解決方案

在每個資料庫例項上運行以下命令：

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重新載入

\q

這會重新載入配置更改的postgres，並確保資料庫未開啟以進行無口令身份驗證。

您可以確認問題是否已解決，然後登入到CCM並運行此命令。如果系統提示您輸入postgres密碼，請確保更改成功。

psql -h IP_ADDRESS_OF_DATABASE -U postgres