在CentOS上,要实现Filebeat日志的加密传输,可以使用以下方法:
使用TLS/SSL加密传输:
为了在Filebeat和Elasticsearch之间启用TLS/SSL加密传输,需要对Filebeat和Elasticsearch进行配置。
a. 首先,为Elasticsearch生成证书。可以使用Elasticsearch的x-pack安全功能或其他证书颁发机构(CA)生成证书。
b. 将生成的证书分发到Filebeat和Elasticsearch服务器,并配置Filebeat以使用这些证书。
c. 在Filebeat的配置文件(filebeat.yml)中,启用TLS/SSL并指定证书路径。例如:
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
ssl.enabled: true
ssl.certificate_authorities: ["/etc/filebeat/certs/ca.pem"]
ssl.certificate: "/etc/filebeat/certs/filebeat.pem"
ssl.key: "/etc/filebeat/certs/filebeat-key.pem"
d. 在Elasticsearch的配置文件(elasticsearch.yml)中,启用TLS/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
e. 重启Filebeat和Elasticsearch服务以应用更改。
使用Logstash进行加密传输:
如果你已经在使用Logstash处理Filebeat日志,可以在Filebeat和Logstash之间启用TLS/SSL加密传输。
a. 为Logstash生成证书,并将其分发到Filebeat和Logstash服务器。
b. 在Filebeat的配置文件(filebeat.yml)中,启用TLS/SSL并指定证书路径。例如:
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
ssl.enabled: true
ssl.certificate_authorities: ["/etc/filebeat/certs/ca.pem"]
ssl.certificate: "/etc/filebeat/certs/filebeat.pem"
ssl.key: "/etc/filebeat/certs/filebeat-key.pem"
c. 在Logstash的配置文件(logstash.yml)中,启用TLS/SSL并指定证书路径。例如:
http.host: "0.0.0.0"
http.port: 5044
xpack.monitoring.collection.enabled: true
xpack.monitoring.elasticsearch.hosts: ["https://localhost:9200"]
xpack.monitoring.http.ssl.enabled: true
xpack.monitoring.http.ssl.certificate_authorities: ["/etc/logstash/certs/ca.pem"]
xpack.monitoring.http.ssl.certificate: "/etc/logstash/certs/logstash-forwarder.pem"
xpack.monitoring.http.ssl.key: "/etc/logstash/certs/logstash-forwarder-key.pem"
d. 重启Filebeat和Logstash服务以应用更改。
通过以上方法,你可以实现CentOS上Filebeat日志的加密传输。