I've working on a proof of concept where I'm using Elasticsearch, Logstash, Kibana and Winlogbeat.
The Winlogbeat service is running on a remote system and then sending events directly to Logstash. I've setup my configurations as follows:
Logstash config:
input {
beats {
port => 5044
ssl => true
ssl_certificate => "logstash-remote.crt"
ssl_key => "logstash-remote.key"
}
}
Winlogbeat config:
output.logstash:
hosts: ["X.X.X.X:5044"]
ssl.certificate_authorities: ['logstash-remote.crt']
compression_level: 3
bulk_max_size: 2048
This is far from optimal as far as security goes (no central CA, no additional configurations, etc)., however for a proof of concept I'm just trying to make sure none can install their own Winlogbeat service and send bogus data to my Logstash node and any traffic sent between the Winlogbeat service and Logstash can be decrypted unless they have the two certificates residing on the Logstash node.
Do my configurations look correct so far for basic encryption and authentication?
Thanks in advance!