在Debian上配置Filebeat以使用TLS/SSL加密數據傳輸涉及幾個步驟。以下是詳細的指南:
如果您尚未安裝Filebeat,請按照官方文檔中的說明進行安裝:Filebeat安裝指南。
使用OpenSSL生成自簽名證書和密鑰。請確保將your_domain.com
替換為您自己的域名。
openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout filebeat.key -out filebeat.crt -subj "/CN=your_domain.com"
這將在當前目錄下生成filebeat.key
(私鑰)和filebeat.crt
(證書)文件。
將生成的證書和密鑰文件復制到Filebeat的配置目錄(通常位于/etc/filebeat
)。
sudo cp filebeat.key /etc/filebeat/filebeat.key
sudo cp filebeat.crt /etc/filebeat/filebeat.crt
編輯Filebeat配置文件(通常位于/etc/filebeat/filebeat.yml
),以啟用SSL加密傳輸。在output.elasticsearch
部分添加以下設置:
output.elasticsearch:
hosts: ["your_elasticsearch_domain:9200"] # 替換為您的Elasticsearch域名和端口
ssl.enabled: true
ssl.certificate_authorities: ["/etc/filebeat/filebeat.crt"]
ssl.certificate: "/etc/filebeat/filebeat.crt"
ssl.key: "/etc/filebeat/filebeat.key"
如果您的Elasticsearch集群使用客戶端證書進行身份驗證,請在setup.template.settings
部分添加以下設置:
setup.template.settings:
index.number_of_shards: 3
index.codec: best_compression
_source.enabled: true
process.template.levels: ["copy", "flatten"]
discovery.seed_hosts: ["host1", "host2"] # 替換為您的Elasticsearch節點主機名或IP地址
cluster.initial_master_nodes: ["node-1", "node-2"] # 替換為您的Elasticsearch主節點名稱
保存更改并重啟Filebeat服務以應用新配置。
sudo systemctl restart filebeat
現在,Filebeat應該已經配置為使用SSL加密傳輸數據到Elasticsearch。請注意,由于我們使用的是自簽名證書,因此在連接到Elasticsearch時可能會收到安全警告。在生產環境中,建議使用權威證書頒發機構(CA)簽發的證書。
通過以上步驟,您可以在Debian上成功配置Filebeat以使用SSL加密,從而保護日志數據的傳輸安全。