Logstash Elasticsearch输入插件双向TLS认证相关配置咨询
针对Logstash Elasticsearch输入插件TLS配置的问题解答
结合你已经部署好双向TLS认证Elasticsearch集群、用Logstash输入插件拉取数据的场景,我来逐一解答你的两个问题:
问题1:单向TLS场景下跳过主机名验证
有的,你可以通过ssl_verification_mode配置项来跳过主机名验证——将这个参数设置为none即可。
⚠️ 注意:这个操作会削弱TLS连接的安全性,它只保留对CA证书合法性的校验,会跳过服务端证书中主机名/IP与实际连接地址的匹配验证,仅建议在测试环境或特殊场景下使用。
修改后的配置示例:
input { elasticsearch { hosts => ["host:port"] ssl => true user => "myUser" password => "myPassword" ca_file => "path/to/my/certificate/authority/cert.pem" ssl_verification_mode => "none" # 新增此行跳过主机名验证 index => "index_name" } }
问题2:双向TLS场景下配置客户端证书认证
Logstash Elasticsearch输入插件完全支持双向TLS认证,你只需要通过两个核心配置项提供客户端的证书和密钥:
client_certificate:指定客户端证书文件的路径(一般为.pem格式)client_key:指定对应客户端证书的私钥文件路径
额外注意点:
- 要确保Logstash进程对这两个文件有读取权限
- 如果私钥设置了密码,还需要添加
client_key_passphrase配置项来提供密码
双向TLS完整配置示例:
input { elasticsearch { hosts => ["host:port"] ssl => true user => "myUser" password => "myPassword" ca_file => "path/to/my/certificate/authority/cert.pem" index => "index_name" # 双向TLS认证相关配置 client_certificate => "path/to/client/cert.pem" client_key => "path/to/client/key.pem" # 如果私钥有密码,取消下面注释并填写对应密码 # client_key_passphrase => "your_key_password" } }
配置完成后,Elasticsearch服务端会在TLS握手阶段验证Logstash提供的客户端证书,完成双向认证流程。
内容的提问来源于stack exchange,提问作者liotur
相关产品推荐
相关产品推荐

