Logstash|Logstash 参考指南(安全设置的Secrets Keystore)
安全设置的Secrets Keystore 在配置Logstash时,你可能需要指定敏感设置或配置,比如密码,与依赖文件系统权限来保护这些值不同,你可以使用Logstash keystore来安全地存储用于配置设置的secret值。
在向keystore中添加key及其secret值之后,你可以在配置敏感设置时使用key代替secret值。
引用key的语法与环境变量的语法相同:${KEY}
,KEY
是key的名称。
例如,假设keystore包含一个名为ES_PWD
的key,其值为yourelasticsearchpassword
:
- 在配置文件中使用:
output { elasticsearch {...password => "${ES_PWD}" } } }
- 在
logstash.yml
中使用:xpack.management.elasticsearch.password: ${ES_PWD}
elasticsearch.yml
值,但是Logstash keystore允许你指定可在Logstash配置中引用的任意名称。
当前不支持从
pipelines.yml
或命令行(-e)引用keystore数据。
从集中式管道管理引用keystore数据需要每个Logstash部署都有keystore的本地副本。当Logstash解析设置(
Logstash.yml
)或配置(/etc/logstash/conf.d/*.conf
)时,它会在解析环境变量之前解析keystore中的key。keystore密码 你可以通过在名为
LOGSTASH_KEYSTORE_PASS
的环境变量中存储密码来保护对Logstash keystore的访问,如果在设置此变量后创建Logstash keystore,它将受到密码保护。这意味着环境变量需要被正在运行的Logstash实例访问,这个环境变量还必须为需要发出keystore命令(添加、列表、删除等)的任何用户正确设置。建议使用keystore密码,但这是可选的,即使你没有设置密码,数据也会被加密。但是,强烈建议配置keystore密码并对任何可能包含环境变量值的文件授予限制性权限,如果你选择不设置密码,那么你可以跳过本节的其余部分。
例如:
set +o history
export LOGSTASH_KEYSTORE_PASS=mypassword
set -o history
bin/logstash-keystore create
这个设置要求运行Logstash的用户定义环境变量
LOGSTASH_KEYSTORE_PASS=mypassword
,如果没有定义环境变量,Logstash就无法访问keystore。当你从RPM或DEB包安装中运行Logstash时,环境变量来自
/etc/sysconfig/logstash
。你可能需要创建对于其他发行版,如Docker或ZIP,请参阅运行时环境(Windows、Docker等)的文档,了解如何为运行Logstash的用户设置环境变量,确保该环境变量(以及密码)只能被该用户访问。/etc/sysconfig/logstash
,这个文件应该由具有600
权限的root
用户拥有,/etc/sysconfig/logstash
的格式应该是ENVIRONMENT_VARIABLE=VALUE
,每行一个条目。
keystore位置 keystore必须位于Logstash的
path.settings
目录,这是包含logstash.yml
文件的同一个目录。在对keystore执行任何操作时,建议为keystore命令设置path.settings
,例如,在RPM/DEB安装上创建keystore :set +o history
export LOGSTASH_KEYSTORE_PASS=mypassword
set -o history
sudo -E /usr/share/logstash/bin/logstash-keystore --path.settings /etc/logstash create
有关默认目录位置的更多信息,请参阅Logstash目录布局。
如果创建keystore 要创建keystore,请使用path.settings
没有指向与logstash.yml
相同的目录,你将看到一个警告。
create
:bin/logstash-keystore create
在
path.settings
配置设置中定义的目录中创建密钥存储库。建议在创建keystore时设置keystore密码。添加key 要存储敏感值,比如Elasticsearch的身份验证凭证,可以使用
add
命令:bin/logstash-keystore add ES_PWD
当提示时,为key输入一个值。
key列表 要列出在keystore中定义的key,请使用:
bin/logstash-keystore list
移除key 【Logstash|Logstash 参考指南(安全设置的Secrets Keystore)】要从keystore中移除key,请使用:
bin/logstash-keystore remove ES_PWD
推荐阅读
- [情感]撩妹指南(二)
- 能力和自信的良性循环
- Spring集成|Spring集成 Mina
- 构建App(一)(框架与结构)
- 一个安排明白的交作业小指南
- Spring源码解析_属性赋值
- 张晧奕(7.8国际黄金,原油丨日内进场操作策略建议,黄金参考策略)
- iPhone手机这些使用指南|iPhone手机这些使用指南 你知道多少()
- 虎刺梅
- MySQL|MySQL 5.7参考手册_11.1 数据类型概览