Benchmark: Elasticsearch
Description
This benchmark provides a set of controls that detect Terraform AWS Elasticsearch resources deviating from security best practices.
Usage
Install the mod:
mkdir dashboardscd dashboardspowerpipe mod initpowerpipe mod install github.com/turbot/steampipe-mod-terraform-aws-compliance
Start the Powerpipe server:
steampipe service startpowerpipe server
Open http://localhost:9033 in your browser and select Elasticsearch.
Run this benchmark in your terminal:
powerpipe benchmark run terraform_aws_compliance.benchmark.es
Snapshot and share results via Turbot Pipes:
powerpipe benchmark run terraform_aws_compliance.benchmark.es --share
Controls
- Elasticsearch domains should have audit logging enabled
- Elasticsearch domains should have at least three data nodes
- Elasticsearch domains should be configured with at least three dedicated master nodes
- Connections to Elasticsearch domains should be encrypted using TLS 1.2
- Elasticsearch domain should be encrypted with KMS CMK
- ES domain encryption at rest should be enabled
- Elasticsearch domain should enforces HTTPS
- Elasticsearch domain error logging to CloudWatch Logs should be enabled
- Amazon Elasticsearch Service domains should be in a VPC
- Elasticsearch domain should send logs to cloudWatch
- Elasticsearch domain node-to-node encryption should be enabled
- Elasticsearch domain should not use the default security group