설명
검색 클러스터는 색인 데이터, 로그와 문서를 여러 노드에 걸쳐 주고받습니다. 노드 간 암호화가 없으면 이 내부 통신이 평문으로 전달될 수 있습니다.
노드 간 TLS는 도메인 내부 통신을 보호합니다. 클라이언트의 HTTPS 연결, 저장 암호화와 접근 정책은 별도로 설정해야 합니다.
잠재적 영향
내부 통신 경로가 침해되면 암호화되지 않은 데이터가 노출될 수 있습니다. 노드 간 암호화가 없으면 내부 서비스 통신에 대한 암호화 요구사항도 충족하지 못할 수 있습니다.
해결 방법
node_to_node_encryption { enabled = true }를 설정하세요.- 새 Elasticsearch 도메인은 6.0 이상, 기존 도메인의 활성화는 6.7 이상이 필요합니다. 호환되는 버전과 변경 계획을 확인하세요. 활성화한 설정은 같은 도메인에서 다시 비활성화할 수 없습니다.
- HTTPS 강제, 저장 암호화와 접근 권한도 함께 검토하세요.
예시
var.elasticsearch_version에는 노드 간 암호화와 해당 인스턴스 유형을 지원하는 버전을 지정하세요. 아래는 도메인 설정의 일부입니다.
변경 전
hcl
resource "aws_elasticsearch_domain" "example" {
domain_name = "example"
elasticsearch_version = var.elasticsearch_version
cluster_config {
instance_type = "r4.large.elasticsearch"
}
}
노드 간 암호화를 활성화하지 않습니다.
변경 후
hcl
resource "aws_elasticsearch_domain" "example" {
domain_name = "example"
elasticsearch_version = var.elasticsearch_version
cluster_config {
instance_type = "r4.large.elasticsearch"
}
node_to_node_encryption {
enabled = true
}
}
내부 노드 통신을 암호화합니다. 이 설정만으로 클라이언트의 HTTP 접속이 차단되거나 저장 데이터가 암호화되지는 않습니다.