UDB-SX keystore

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

此 keystore 与用于以 JKS 或 PKCS12/PFX 格式存储 TLS 证书以保护传输层和 HTTP 层的 keystore 和 truststore 是分开的。

用法

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

udbsx-keystore [命令] [选项]

命令

udbsx-keystore 脚本支持以下命令:

  • create:初始化一个新的 keystore。如果 keystore 已存在,此命令将覆盖现有的 keystore。

  • list:列出 keystore 中的所有设置。

  • add <设置名称>:向当前 keystore 添加新设置。添加新设置时,脚本会提示您输入该设置的值。添加设置和值后,两者都安全地存储在 keystore 中。

  • add-file <文件名>:向 keystore 添加新文件。

  • remove <设置名称>:从 keystore 中移除现有设置。

  • upgrade <设置名称>:升级 keystore 中的现有设置。

  • passwd:为 keystore 设置密码。

  • has-passwd:打印 keystore 是否受密码保护。

  • help:显示有关所有 udbsx-keystore 命令的帮助信息。

选项

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

  • -h, --help:显示有关脚本及其选项的帮助信息。

  • -s, --silent:脚本响应命令时提供最少的输出。

  • -v, --verbose:为调试目的提供详细的输出。

示例

以下示例提供了常见 udbsx-keystore 命令的基本语法:

创建新 keystore

以下命令创建新 keystore:

./udbsx-keystore create

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

脚本会响应确认 keystore 已创建:

Created opensearch keystore in /home/unvdb/udbsx/udbsx-25.0.0/config/udbsx.keystore

设置 keystore 密码

以下命令设置新的 keystore 密码:

./udbsx-keystore passwd

如果 keystore 密码已存在,脚本将在您重置密码之前要求输入当前 keystore 密码。

响应

脚本会响应确认 keystore 密码已成功设置:

OpenSearch keystore password changed successfully.

启动 UDB-SX 时,系统将提示您输入 keystore 密码。或者,您可以设置环境变量 KEYSTORE_PASSWORD 以避免在启动时提示输入密码。

添加新设置

以下命令添加新的 keystore 设置:

./udbsx-keystore add plugins.security.ssl.http.pemkey_password_secure

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

列出 keystore 中的设置

以下命令列出 keystore 中当前的所有设置:

./udbsx-keystore list

脚本会响应 keystore 中的设置列表:

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

移除设置

以下命令移除 keystore 设置:

./udbsx-keystore remove plugins.security.ssl.http.pemkey_password_secure

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

作为 UDB-SX 设置的 keystore 条目

将设置添加到 keystore 后,它会隐式地添加到 UDB-SX 配置中,就像它是 udbsx.yml 中的另一个条目一样。要修改 keystore 条目,请使用 ./udbsx-keystore upgrade <设置>。要移除条目,请使用 ./udbsx-keystore remove <设置>