首页主机资讯Filebeat在CentOS上的日志加密方法是什么

Filebeat在CentOS上的日志加密方法是什么

时间2025-12-12 00:53:04发布访客分类主机资讯浏览1298
导读:Filebeat在CentOS上的日志加密方法 一、传输层加密 TLS 到 Elasticsearch 或 Logstash 适用场景:保护日志在网络传输过程中的机密性与完整性(最常见、优先采用)。 核心思路:在 Filebeat 输出侧...

Filebeat在CentOS上的日志加密方法

一、传输层加密 TLS 到 Elasticsearch 或 Logstash

  • 适用场景:保护日志在网络传输过程中的机密性与完整性(最常见、优先采用)。
  • 核心思路:在 Filebeat 输出侧启用 SSL/TLS,配置 CA/客户端证书,并在对端(Elasticsearch 或 Logstash)开启 TLS 监听与校验。

示例配置 filebeat.yml(输出到 Elasticsearch):

  • 启用 TLS 并指定证书
    filebeat.inputs:
    - type: log
      enabled: true
      paths:
        - /var/log/*.log
    
    output.elasticsearch:
      hosts: ["https://es.example.com:9200"]
      ssl.enabled: true
      ssl.certificate_authorities: ["/etc/filebeat/certs/ca.crt"]
      ssl.certificate: "/etc/filebeat/certs/filebeat.crt"
      ssl.key: "/etc/filebeat/certs/filebeat.key"
      username: "elastic"
      password: "your_password"
    
  • 若仅需单向校验(推荐先可用):可仅配置 ssl.certificate_authorities;如需双向认证(mTLS),再补充 ssl.certificate/ssl.key。
  • 输出到 Logstash(Beats 协议)时,同样在 Logstash 的 Beats 输入启用 TLS,Filebeat 侧使用 https:// 或配置 TLS 参数与证书。

二、生成证书与密钥(自签名 CA 示例)

  • 建议将证书集中到目录(如:/etc/filebeat/certs),并设置权限仅允许 root 读取。
  • 生成自签名 CA
    mkdir -p /etc/filebeat/certs
    openssl genrsa -out /etc/filebeat/certs/ca.key 2048
    openssl req -x509 -new -nodes -key /etc/filebeat/certs/ca.key -sha256 -days 3650 \
      -out /etc/filebeat/certs/ca.crt -subj "/CN=Filebeat-CA"
    
  • 为 Filebeat 生成客户端证书
    openssl genrsa -out /etc/filebeat/certs/filebeat.key 2048
    openssl req -new -key /etc/filebeat/certs/filebeat.key -out /etc/filebeat/certs/filebeat.csr -subj "/CN=filebeat"
    openssl x509 -req -in /etc/filebeat/certs/filebeat.csr -CA /etc/filebeat/certs/ca.crt -CAkey /etc/filebeat/certs/ca.key \
      -CAcreateserial -out /etc/filebeat/certs/filebeat.crt -days 365 -sha256
    chmod 600 /etc/filebeat/certs/*.key
    
  • ca.crt 分发到 Elasticsearch/Logstash 节点并配置信任;Filebeat 侧使用上述 ca.crt / filebeat.crt / filebeat.key

三、对端服务配置要点(Elasticsearch 示例)

  • 启用安全与传输层 TLS(示例为单节点演示,生产请按集群实际调整):
    xpack.security.enabled: true
    xpack.security.transport.ssl.enabled: true
    xpack.security.transport.ssl.verification_mode: certificate
    xpack.security.transport.ssl.keystore.path: /etc/elasticsearch/certs/elastic-certificates.p12
    xpack.security.transport.ssl.truststore.path: /etc/elasticsearch/certs/elastic-certificates.p12
    
  • 若 Elasticsearch 对外也提供 HTTPS 访问,需在其 http.ssl 配置中启用证书与密钥,并重启服务。

四、启动与验证

  • 重启服务
    sudo systemctl restart filebeat
    sudo systemctl restart elasticsearch
    
  • 连接性验证(Elasticsearch)
    curl -u elastic:your_password --cacert /etc/filebeat/certs/ca.crt \
      --cert /etc/filebeat/certs/filebeat.crt --key /etc/filebeat/certs/filebeat.key \
      https://es.example.com:9200
    
  • 查看 Filebeat 自身日志以排查握手或证书错误
    sudo journalctl -u filebeat -f
    
  • 若使用自签名证书,务必在所有相关节点导入 CA 证书,否则会出现证书不被信任的错误。

五、字段级加密与注意事项

  • 字段级加密:Filebeat 原生不提供“对指定字段自动加密”的处理器;如需对敏感字段在写入前加密,建议在 Logstash 通过插件(如基于 AES 的加密插件)或在应用侧完成,再写入 Elasticsearch。
  • 安全建议:
    • 使用强密钥与足够长的有效期策略,并定期轮换证书与密钥。
    • 传输层优先启用 TLS;对高安全场景启用 双向认证(mTLS)
    • 保护私钥文件权限(如 600),并限制证书分发范围。
    • 自签名证书仅用于测试或内网;生产建议使用受信任 CA 签发的证书。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Filebeat在CentOS上的日志加密方法是什么
本文地址: https://pptw.com/jishu/770010.html
CentOS下Apache安全配置指南 如何在CentOS上利用Filebeat进行日志备份

游客 回复需填写必要信息