在CentOS上配置Filebeat以使用SSL加密傳輸,需要完成以下幾個步驟:
首先,確保你已經在CentOS上安裝了Filebeat。你可以從Elastic官方網站下載并安裝最新版本的Filebeat。
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.10.0-amd64.deb
sudo dpkg -i filebeat-7.10.0-amd64.deb
編輯Filebeat的配置文件/etc/filebeat/filebeat.yml
,添加或修改以下配置項以啟用SSL加密傳輸。
假設你已經有一個運行中的Elasticsearch實例,并且啟用了SSL。
filebeat.inputs:
- type: log
enabled: true
paths:
- /var/log/*.log
output.elasticsearch:
hosts: ["https://your_elasticsearch_host:9200"]
ssl.verification_mode: certificate
ssl.certificate_authorities: ["/etc/filebeat/certs/ca.crt"]
ssl.certificate: "/etc/filebeat/certs/client.crt"
ssl.key: "/etc/filebeat/certs/client.key"
你需要生成或獲取以下證書和密鑰:
ca.crt
: CA證書client.crt
: 客戶端證書client.key
: 客戶端私鑰你可以使用OpenSSL生成這些證書和密鑰。
# 生成CA證書
openssl req -x509 -newkey rsa:4096 -keyout ca.key -out ca.crt -days 3650 -nodes
# 生成客戶端證書和密鑰
openssl req -newkey rsa:2048 -keyout client.key -out client.csr
openssl x509 -req -in client.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out client.crt -days 365
將生成的證書和密鑰文件放置在/etc/filebeat/certs/
目錄下。
sudo mkdir -p /etc/filebeat/certs
sudo cp ca.crt /etc/filebeat/certs/
sudo cp client.crt /etc/filebeat/certs/
sudo cp client.key /etc/filebeat/certs/
配置完成后,啟動Filebeat服務并設置開機自啟動。
sudo systemctl start filebeat
sudo systemctl enable filebeat
你可以通過查看Filebeat的日志來驗證SSL配置是否成功。
sudo journalctl -u filebeat -f
如果一切配置正確,你應該會看到Filebeat成功連接到Elasticsearch并開始發送日志數據。
600
。sudo chmod 600 /etc/filebeat/certs/*.crt
sudo chmod 600 /etc/filebeat/certs/*.key
通過以上步驟,你應該能夠在CentOS上成功配置Filebeat以使用SSL加密傳輸日志數據到Elasticsearch。