在Ubuntu上配置Filebeat以使用SSL/TLS加密传输数据到Elasticsearch集群,需要完成以下几个步骤:
生成或获取SSL证书:
配置Elasticsearch以接受SSL连接:
elasticsearch.yml
,通常位于/etc/elasticsearch/
目录下。xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
elastic-certificates.p12
文件存在并包含正确的证书和密钥。filebeat.yml
,通常位于/etc/filebeat/
目录下。filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
processors:
- add_cloud_metadata: ~
output.elasticsearch:
hosts: ["https://your_elasticsearch_host:9200"]
ssl.verification_mode: "certificate"
ssl.certificate_authorities: ["/etc/filebeat/certs/ca.pem"]
ssl.certificate: "/etc/filebeat/certs/filebeat.pem"
ssl.key: "/etc/filebeat/certs/filebeat-key.pem"
your_elasticsearch_host
为你的Elasticsearch主机地址。/etc/filebeat/certs/
目录下有ca.pem
、filebeat.pem
和filebeat-key.pem
文件,分别对应CA证书、Filebeat客户端证书和私钥。sudo systemctl restart elasticsearch
sudo systemctl restart filebeat
请注意,这些步骤假设你已经有一个运行中的Elasticsearch集群,并且你有权限对其进行配置。如果你是在生产环境中操作,请确保遵循最佳安全实践,比如使用有效的SSL证书,定期更新证书,以及限制对Elasticsearch端点的访问。