要在Debian上配置Filebeat以使用SSL加密传输,请按照以下步骤操作:
首先,您需要为Filebeat和Elasticsearch生成证书和密钥。可以使用OpenSSL或其他证书颁发机构(CA)来生成。以下是使用OpenSSL生成自签名证书的示例:
# 创建一个目录来存储证书和密钥
mkdir -p /etc/filebeat/ssl
# 生成私钥
openssl genrsa -out /etc/filebeat/ssl/filebeat.key 2048
# 生成证书签名请求(CSR)
openssl req -new -key /etc/filebeat/ssl/filebeat.key -out /etc/filebeat/ssl/filebeat.csr -subj "/C=US/ST=YourState/L=YourCity/O=YourOrganization/CN=filebeat"
# 生成自签名证书
openssl x509 -req -days 365 -in /etc/filebeat/ssl/filebeat.csr -signkey /etc/filebeat/ssl/filebeat.key -out /etc/filebeat/ssl/filebeat.crt
编辑Filebeat配置文件(通常位于/etc/filebeat/filebeat.yml
),并添加以下内容以启用SSL加密传输:
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
ssl.enabled: true
ssl.certificate_authorities: ["/etc/filebeat/ssl/filebeat.crt"]
ssl.certificate: "/etc/filebeat/ssl/filebeat.crt"
ssl.key: "/etc/filebeat/ssl/filebeat.key"
ssl.verify_mode: full
ssl.peer_certificate_authorities: ["/etc/filebeat/ssl/filebeat.crt"]
ssl.peer_certificate: "/etc/filebeat/ssl/filebeat.crt"
ssl.peer_key: "/etc/filebeat/ssl/filebeat.key"
根据您的实际情况修改证书和密钥的路径。
编辑Elasticsearch配置文件(通常位于/etc/elasticsearch/elasticsearch.yml
),并添加以下内容以启用SSL加密传输:
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
保存更改后,重启Filebeat和Elasticsearch服务以使配置生效:
sudo systemctl restart filebeat
sudo systemctl restart elasticsearch
现在,Filebeat应该已经使用SSL加密传输数据到Elasticsearch了。请注意,这里的示例使用了自签名证书,实际生产环境中建议使用由受信任的证书颁发机构签发的证书。