安全设置密钥库
编辑安全设置密钥库
编辑配置 Winlogbeat 时,您可能需要指定敏感设置,例如密码。您可以使用 Winlogbeat 密钥库来混淆存储的密钥值以用于配置设置,而不是依赖文件系统权限来保护这些值。
将密钥及其密钥值添加到密钥库后,您可以在配置敏感设置时使用密钥来代替密钥值。
引用密钥的语法与环境变量的语法相同。
${KEY}
其中 KEY 是密钥的名称。
例如,假设密钥库包含一个名为 ES_PWD
的密钥,其值为 yourelasticsearchpassword
- 在配置文件中,使用
output.elasticsearch.password: "${ES_PWD}"
- 在命令行中,使用:
-E "output.elasticsearch.password=\${ES_PWD}"
Winlogbeat 解包配置时,会在解析环境变量和其他变量之前解析密钥。
请注意,Winlogbeat 密钥库与 Elasticsearch 密钥库不同。Elasticsearch 密钥库允许您按名称存储 elasticsearch.yml
值,而 Winlogbeat 密钥库允许您指定可在 Winlogbeat 配置中引用的任意名称。
要创建和管理密钥,请使用 keystore
命令。有关完整的命令语法(包括可选标志),请参阅 命令参考。
keystore
命令必须由将运行 Winlogbeat 的同一用户运行。
创建密钥库
编辑要创建密钥库,请使用
winlogbeat keystore create
Winlogbeat 会在 path.data
配置设置定义的目录中创建密钥库。
添加密钥
编辑要存储敏感值(例如 Elasticsearch 的身份验证凭据),请使用 keystore add
命令。
winlogbeat keystore add ES_PWD
出现提示时,输入密钥的值。
要覆盖现有密钥的值,请使用 --force
标志。
winlogbeat keystore add ES_PWD --force
要通过 stdin 传递值,请使用 --stdin
标志。您也可以使用 --force
。
cat /file/containing/setting/value | winlogbeat keystore add ES_PWD --stdin --force
列出密钥
编辑要列出密钥库中定义的密钥,请使用
winlogbeat keystore list
移除密钥
编辑要从密钥库中移除密钥,请使用
winlogbeat keystore remove ES_PWD