目录

简介

先决条件

要求

使用的组件

问题：CCM数据库上的Postgres用户不需要密码

解决方案

简介

本文档介绍如何在高可用性(HA)设置中要求密码才能访问postgres用户。

先决条件

要求

本文档没有任何特定的要求。

使用的组件

本文档中的信息基于以下软件和硬件版本：

- 云中心< v4.8.0.1

- 4.8.0.1升级

本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始（默认）配置。如果您使用的是真实网络，请确保您已经了解所有命令的潜在影响。

问题：CCM数据库上的Postgres用户不需要密码

在HA设置中，Cloud Center Manager(CCM)数据库(DB)与CCM中对于4.8.0.1以前的版本，或者如果从旧版本升级到4.8.0.1（4.8.0.1之后的全新安装不会受到影响），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 reload

\q

这会重新加载配置更改的postgres，并确保数据库未打开以进行无密码身份验证。

您可以确认问题是否已解决并登录到CCM并运行此命令。如果系统提示您输入postgres密码，请确保更改成功。

psql -h IP_ADDRESS_OF_DATABASE -U postgres