在CentOS环境下配置Filebeat日志加密功能,其实只需要掌握几个核心操作步骤。从安装部署到参数设置,再到最终的验证检查,每个环节都有其关键要点。接下来我将逐一详细讲解,确保你能够顺利完成任务。
1. 安装Filebeat工具
首先请确认你的CentOS系统中是否已经安装了Filebeat。如果尚未安装,无需担心,执行以下命令即可快速完成安装:
sudo yum install filebeat -y
2. 配置Filebeat参数
安装完成后,真正的关键环节就来了——对Filebeat进行详细配置。找到主配置文件/etc/filebeat/filebeat.yml,使用编辑器打开并启用加密功能。
2.1 启用TLS/SSL传输加密
为了保证Filebeat与Elasticsearch之间的数据传输安全,启用TLS/SSL是必不可少的一步。具体操作步骤如下:
生成证书文件
首先需要生成CA证书,这是整个信任链的基础。使用OpenSSL工具即可完成,相关命令如下:
# 生成CA证书
openssl genrsa -out ca-key.pem 2048
openssl req -new -x509 -days 365 -key ca-key.pem -out ca-cert.pem -subj "/CN=MyCA"
# 生成服务器证书
openssl genrsa -out server-key.pem 2048
openssl req -new -key server-key.pem -out server-csr.pem -subj "/CN=localhost"
# 生成服务器证书签名请求
openssl x509 -req -in server-csr.pem -CA ca-cert.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem -days 365
# 生成客户端证书
openssl genrsa -out client-key.pem 2048
openssl req -new -key client-key.pem -out client-csr.pem -subj "/CN=client"
# 生成客户端证书签名请求
openssl x509 -req -in client-csr.pem -CA ca-cert.pem -CAkey ca-key.pem -CAcreateserial -out client-cert.pem -days 365
修改Filebeat配置文件
证书生成完毕后,接下来需要在配置文件中填入相应内容。请确保路径和证书名称与实际存放位置一致:
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
output.elasticsearch:
hosts: ["https://localhost:9200"]
ssl.certificate_authorities: ["/etc/filebeat/ca-cert.pem"]
ssl.certificate: "/etc/filebeat/server-cert.pem"
ssl.key: "/etc/filebeat/server-key.pem"
setup.template.settings:
index.number_of_shards: 1
xpack.monitoring.collection.enabled: true
2.2 配置日志文件加密
如果你希望对原始的日志文件本身也进行加密保护,可以使用gpg工具实现。在Filebeat的输入配置中添加一个处理器,用于处理解密逻辑(以下示例展示了如何配置加密解密处理流程):
processors:
- add_cloud_metadata: ~
- decrypt_logs:
fields: ["log"]
secret_key: "your-secret-key"
output_mode: "copy"
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
processors:
- decrypt_logs:
fields: ["log"]
secret_key: "your-secret-key"
output_mode: "copy"
3. 启动Filebeat服务
所有配置完成后,即可启动Filebeat服务,并设置开机自启动,确保长期稳定运行:
sudo systemctl start filebeat
sudo systemctl enable filebeat
4. 验证配置效果
验证环节同样不可忽视。通过检查日志文件的输出流,确认Filebeat是否能够正常将加密后的日志发送至Elasticsearch。以下两条命令可以帮助你快速定位潜在问题:
sudo tail -f /var/log/filebeat/filebeat
sudo tail -f /var/log/elasticsearch/elasticsearch.log
这样一来,日志在传输和存储过程中的安全性便得到了充分保障。整个配置流程实际上并不复杂,关键在于每一处细节都要准确到位。从证书生成到服务启动,再到最后的验证检查,各个环节环环相扣,只要按照上述步骤逐一执行,基本不会遇到障碍。
