Link Search Menu Expand Document Documentation Menu

OpenSearch 密钥库

opensearch-keystore 是一个用于管理 OpenSearch 密钥库的实用脚本。OpenSearch 密钥库提供了一种安全存储 OpenSearch 集群中使用的敏感信息(如密码和密钥)的方法。该脚本允许您安全地创建、列出、添加和删除设置。它包含在 OpenSearch 发行版中。

此密钥库与用于存储 TLS 证书(JKS 或 PKCS12/PFX 格式)以保护传输层和 HTTP 层的密钥库和信任库是分开的。有关这些密钥库的信息,请参阅密钥库和信任库文件

用法

为了使用 opensearch-keystore 脚本,您必须有权访问包含 OpenSearch 安装的文件系统,并能够执行 OpenSearch 脚本。

要使用 opensearch-keystore,请打开终端并使用以下命令语法

opensearch-keystore [command] [options]

命令

opensearch-keystore 脚本支持以下命令

  • create:初始化一个新的密钥库。如果密钥库已存在,此命令将覆盖现有密钥库。
  • list:列出密钥库中的所有设置。
  • add <setting-name>:向当前密钥库添加新设置。添加新设置时,脚本会提示您输入该设置的值。添加设置和值后,两者都会安全地存储在密钥库中。
  • add-file <file-name>:向密钥库添加新文件。
  • remove <setting-name>:从密钥库中删除现有设置。
  • upgrade <setting-name>:升级密钥库中的现有设置。
  • passwd:为密钥库设置密码。
  • has-passwd:打印密钥库是否受密码保护。
  • help:显示关于所有 opensearch-keystore 命令的帮助信息。

选项

您可以为每个命令附加以下选项

  • -h, --help:显示关于脚本及其选项的帮助信息。
  • -s, --silent:当脚本响应命令时,提供最少的输出。
  • -v, --verbose:提供详细输出用于调试。
  • -p, --password(仅限 create 命令):指定用于加密密钥库的密码。如果未使用此标志,则创建的密钥库将没有密码。

示例

以下示例提供了常用 opensearch-keystore 命令的基本语法

创建新密钥库

以下命令创建新密钥库

./bin/opensearch-keystore create

如果密钥库已存在,脚本将询问您是否要覆盖现有密钥库。

脚本响应,确认密钥库已创建

Created opensearch keystore in $OPENSEARCH_HOME/config/opensearch.keystore

创建新的受密码保护的密钥库

要创建新的受密码保护的密钥库,请运行以下命令

./bin/opensearch-keystore create -p

如果密钥库已存在,脚本将询问您是否要覆盖现有密钥库。

设置密钥库密码

以下命令设置新密钥库密码

./bin/opensearch-keystore passwd

如果密钥库密码已存在,脚本将要求您输入当前密钥库密码,然后才能重置密码。

响应

脚本响应,确认密钥库密码已成功设置

OpenSearch keystore password changed successfully.

启动 OpenSearch 时,系统会提示您输入密钥库密码。或者,您可以设置环境变量 KEYSTORE_PASSWORD 以避免在启动时提示输入密码。

列出密钥库中的设置

以下命令列出密钥库中当前的所有设置

./bin/opensearch-keystore list

脚本响应,显示密钥库中的设置列表

keystore.seed
plugins.security.ssl.http.pemkey_password_secure

添加新设置

以下命令添加新的密钥库设置

./bin/opensearch-keystore add plugins.security.ssl.http.pemkey_password_secure

执行此命令后,系统将提示您安全地输入密钥。

移除设置

以下命令移除密钥库设置

./bin/opensearch-keystore remove plugins.security.ssl.http.pemkey_password_secure

此命令没有响应。要确认设置已删除,请使用 opensearch-keystore list

有关可以使用 opensearch-keystore 配置的安全设置的完整列表,请参阅(高级)为 SSL 使用加密密码设置

作为 OpenSearch 设置的密钥库条目

将设置添加到密钥库后,它会隐式添加到 OpenSearch 配置中,就像它是 opensearch.yml 中的另一个条目一样。要修改密钥库条目,请使用 ./bin/opensearch-keystore upgrade <setting>。要删除条目,请使用 ./bin/opensearch-keystore remove <setting>