보안
원본 보기보안
Elastic 구현체는 여러 구성 요소로 이루어집니다. 클러스터를 구성하는 Elasticsearch 노드, Kibana 인스턴스, Logstash와 Beats 같은 추가 스택 구성 요소, 그리고 클러스터와 통신하는 다양한 클라이언트와 통합이 모두 포함됩니다.
데이터를 안전하게 유지하기 위해 Elastic은 악의적인 행위자가 데이터를 변조하지 못하도록 막고, 클러스터로 오가는 통신과 클러스터 내부 통신을 암호화하는 보안 기능을 제공합니다. 배포 유형과 관계없이 Elastic은 특정 보안 기능을 자동으로 설정해 줍니다.
보안 기능의 제공 여부와 구성 가능 범위는 배포 유형에 따라 다릅니다. 모든 페이지에는 어떤 내용이 어떤 배포 유형에 적용되는지 보여주는 배포 유형 표시가 있습니다. 사용 중인 배포 유형으로 태그된 섹션에 집중하고, 해당 배포 모델을 구체적으로 다루는 하위 섹션을 찾아보세요. 배포 유형별 기능 제공 여부와 구성 가능 여부를 보여주는 비교 표도 확인할 수 있습니다.
전체 보안 전략의 일부로 다음 작업도 수행할 수 있습니다.
- 비밀번호 보호 및 역할 기반 접근 제어로 무단 접근을 차단합니다.
- Spaces를 사용해 UI의 대시보드와 기타 저장된 객체에 대한 접근을 제어합니다. 해당되는 경우 각 space에 기본 CPS 범위를 설정할 수도 있습니다.
- 로컬 클러스터를 원격 클러스터에 연결해 교차 클러스터 복제와 교차 클러스터 검색을 활성화합니다.
- Elastic에 프로그래밍 방식으로 접근할 때 사용하는 API 키를 관리합니다.
Elastic Cloud에는 보안 기능이 기본 내장되어 있습니다. 예를 들어 Elastic Cloud와 인터넷 간의 HTTPS 통신은 물론 노드 간 통신도 자동으로 보호되며, 클러스터 데이터는 저장 시 암호화됩니다.
Elastic Cloud Hosted와 Elastic Cloud Serverless 모두에서 다음과 같은 방식으로 이러한 보안 기능을 강화할 수 있습니다.
- IP 필터를 구성해 배포와 프로젝트에 대한 무단 접근을 차단합니다.
- 사설 연결을 구성하고 VPC 필터링을 적용해 배포나 프로젝트에 대한 보안 연결을 구축하고 해당 사설 연결을 기준으로 트래픽을 제한합니다. Serverless는 AWS PrivateLink와 Azure Private Link만 지원하며, Elastic Cloud Hosted는 AWS PrivateLink, Azure Private Link, GCP Private Service Connect를 지원합니다.
Elastic Cloud Hosted에서는 다음 작업도 가능합니다.
- 고객 관리형 암호화 키로 배포를 암호화합니다.
- Elasticsearch와 Kibana 키스토어를 사용해 설정을 안전하게 보호합니다.
- Elastic Cloud 고정 IP 목록을 사용해 인프라 내 통신을 허용하거나 제한합니다.
Elastic Cloud Hosted는 사용자 지정 SSL 인증서를 지원하지 않습니다. 따라서 mycluster.mycompanyname.com과 같은 Elastic Cloud Hosted 엔드포인트용 사용자 지정 CNAME도 지원되지 않습니다.
Elastic의 보안 및 개인정보 보호 프로그램에 대한 자세한 내용은 Elastic Cloud 보안을 참조하세요.
Elastic Cloud Enterprise 또는 Elastic Cloud on Kubernetes에서 Elastic Stack 애플리케이션을 실행하는 경우, Elastic 제품의 배포와 관리를 담당하는 오케스트레이션 계층도 보호해야 합니다.
다음 구성 요소를 보호하는 방법을 알아보세요.
Elastic은 Elastic Cloud 오케스트레이터를 대신 보호해 줍니다.
보안을 유지하고 강화하기 위해 Elastic 클러스터 또는 배포에서 다음 항목을 구성할 수 있습니다.
Elasticsearch 보안 기능은 인증 및 권한 부여, TLS 암호화를 비롯해 이 섹션에서 설명하는 여러 보안 관련 기능을 사용할 수 있게 해줍니다. 배포를 보호하는 첫 단계는 Elasticsearch 보안 기능이 활성화되어 있고 올바르게 구성되어 있는지 확인하는 것입니다.
자체 관리형 배포에서는 가능한 경우 보안 기능이 자동으로 구성됩니다. 자동 구성 과정, 자동 구성이 생략될 수 있는 경우, 그리고 보안을 수동으로 구성하는 방법은 자체 관리형 배포에서 보안 설정하기를 참조하세요.
자체 TLS 인증서를 사용하려면 보안을 수동으로 구성해야 합니다.
Elastic Cloud on Kubernetes, Elastic Cloud Enterprise, Elastic Cloud Hosted가 관리하는 배포와 Elastic Cloud Serverless 프로젝트는 기본적으로 보안을 자동 구성합니다. 여기에는 elastic 사용자 비밀번호 설정, TLS 인증서 생성, Kibana가 Elasticsearch에 안전하게 연결되도록 구성하는 작업이 포함됩니다. 이러한 배포 유형에서는 보안 비활성화가 지원되지 않습니다.
- TLS 인증서 관리: TLS 인증서는 네트워크 통신에 보안 제어를 적용합니다. Elastic은 두 곳의 통신을 보호하기 위해 TLS 인증서를 사용합니다.
- HTTP 계층: 클러스터 또는 배포와 인터넷 간의 통신에 사용됩니다.
- 전송 계층: 주로 노드 간 통신에 사용되며, 경우에 따라 클러스터 간 통신에도 사용됩니다.
- 자체 관리형 Elasticsearch 클러스터에서는 Kibana와 Elasticsearch가 상호 TLS를 사용하도록 구성할 수도 있습니다.
- 더 강력한 암호화를 위한 암호 제품군 활성화: TLS와 SSL 프로토콜은 데이터를 보호하는 암호화 강도를 결정하는 암호 제품군을 사용합니다. TLS 통신이나 인증 공급자와의 통신에 서로 다른 암호 제품군을 사용하려면 추가 암호 제품군을 활성화할 수 있습니다.
- 네트워크 보안 정책 추가: 네트워크 보안을 통해 배포나 프로젝트에 대한 접근 방식을 제한할 수 있습니다. 인바운드 트래픽을 신뢰하는 소스로만 제한해 설치 환경과 배포에 보안 계층을 하나 더 추가하세요. Elastic Cloud Hosted 배포와 Serverless 프로젝트 모두에서 IP 주소나 CIDR 범위를 기준으로 접근을 제한할 수 있습니다. 사설 링크 서비스로 연결을 보호하고 VPC 필터로 트래픽을 필터링할 수도 있습니다. Elastic Cloud Hosted는 AWS PrivateLink, Azure Private Link, GCP Private Service Connect를 지원하며, Serverless는 AWS PrivateLink와 Azure Private Link만 지원합니다.
- Elastic Cloud Hosted IP 범위 허용 또는 거부: Elastic Cloud는 Elastic Cloud Hosted 서비스가 수신 및 발신 트래픽에 사용하는 IP 주소 목록을 공개합니다. 사용자는 이 목록을 활용해 Elastic Cloud Hosted 서비스 관련 트래픽을 허용하거나 제한하도록 네트워크 방화벽을 구성할 수 있습니다.
설정 보호: Elastic에서 구성하는 설정 중 비밀번호처럼 민감한 항목이 있으며, 이러한 설정을 보호하는 데 파일 시스템 권한에만 의존하는 것은 충분하지 않습니다. Elasticsearch 키스토어 또는 Kibana 키스토어에서 보안 설정을 구성하는 방법을 알아보세요.
저장된 객체 보호: Kibana는 대시보드, 시각화, 알림, 액션, 고급 설정 등의 엔터티를 저장된 객체로 보관하며, 이는 전용 내부 Elasticsearch 인덱스에 저장됩니다. 알림 액션이 사용하는 PagerDuty 통합 키나 이메일 서버 자격 증명처럼 민감한 정보가 객체에 포함된 경우, Kibana는 이를 암호화해 실수로 유출되거나 변조되지 않도록 합니다. 보안을 더 강화하기 위해 저장된 객체 암호화 키를 구성하고 교체할 수 있습니다.
저장 데이터 암호화: 기본적으로 Elastic Cloud는 Elastic Cloud Hosted 배포 데이터, Serverless 프로젝트 데이터, 스냅샷을 저장 시 이미 암호화합니다. ECH를 사용하는 경우 Bring Your Own Key(BYOK)라고도 하는 자체 암호화 키를 제공해 이 메커니즘을 강화할 수 있습니다.
Note다른 배포 유형은 저장 데이터 암호화를 기본으로 제공하지 않습니다. 자체 관리형 클러스터에서 저장 데이터 암호화를 구현하려면 클러스터를 실행하는 호스트에
dm-crypt와 같은 디스크 수준 암호화를 구성해야 합니다. 또한 스냅샷 대상에서도 데이터가 저장 시 암호화되도록 보장해야 합니다.dm-crypt나 유사 기술의 구성은 이 문서의 범위를 벗어나며, 디스크 암호화 관련 문제는 지원 범위에 포함되지 않습니다.
Kibana 세션을 관리해 Kibana 로그인 세션의 타임아웃과 수명은 물론 사용자별 동시 세션 수를 제어하세요.
감사 로깅은 Elastic Stack 내의 보안 관련 이벤트를 모니터링하고 추적하는 데 도움이 되는 강력한 기능입니다. 감사 로그를 활성화하면 인증 시도, 권한 부여 결정, 기타 시스템 활동을 파악할 수 있습니다.
감사 로깅은 공격이 발생했을 때 포렌식 증거도 제공하며, Elasticsearch와 Kibana에서 각각 독립적으로 활성화할 수 있습니다.
보안 기능의 제공 여부는 배포 유형에 따라 다르며, 각 기능은 다음 상태 중 하나를 갖습니다.
| 상태 | 설명 |
|---|---|
| 완전 관리형 | Elastic이 자동으로 처리하며 사용자 구성이 필요 없음 |
| 관리형 | Elastic이 자동으로 처리하지만 일부 구성이 허용됨 |
| 구성 가능 | 사용자 구성이 필요한 내장 기능(IP 필터나 비밀번호 등) |
| N/A | 이 배포 유형에서는 제공되지 않음 |
아래에서 배포 유형을 선택해 제공되는 기능과 구현 책임이 어떻게 분배되는지 확인하세요.
| 범주 | 보안 기능 | 상태 | 비고 |
|---|---|---|---|
| 통신 | TLS(HTTP 계층) | 완전 관리형 | Elastic이 자동으로 구성 |
| TLS(전송 계층) | 완전 관리형 | Elastic이 자동으로 구성 | |
| 네트워크 | IP 필터링 | 구성 가능 | IP 기반 접근 제한 구성 |
| 사설 연결 및 VPC 필터링 | 구성 가능 | 사설 연결 | |
| Kubernetes 네트워크 정책 | N/A | ||
| 공개된 고정 IP(인그레스 및 이그레스) | 관리형 | Elastic Cloud 고정 IP | |
| 데이터 | 저장 데이터 암호화 | 관리형 | 자체 암호화 키를 사용할 수 있음 |
| 보안 설정 | 구성 가능 | 보안 설정 구성 | |
| 저장된 객체 암호화 | 완전 관리형 | Elastic이 자동으로 암호화 | |
| 사용자 세션 | Kibana 세션 | 구성 가능 | 세션 파라미터 사용자 지정 |
| 범주 | 보안 기능 | 상태 | 비고 |
|---|---|---|---|
| 통신 | TLS(HTTP 계층) | 완전 관리형 | Elastic이 자동으로 구성 |
| TLS(전송 계층) | 완전 관리형 | Elastic이 자동으로 구성 | |
| 네트워크 | IP 필터링 | 구성 가능 | IP 기반 접근 제한 구성 |
| 사설 연결 및 VPC 필터링 | 구성 가능 | 사설 연결(AWS PrivateLink 및 Azure Private Link만 해당) | |
| Kubernetes 네트워크 정책 | N/A | ||
| 공개된 고정 IP(인그레스 및 이그레스) | N/A | Serverless에는 Elastic이 공개하는 범위가 제공되지 않습니다. 지원되는 경우 사설 연결을 사용하세요. | |
| 데이터 | 저장 데이터 암호화 | 완전 관리형 | Elastic이 자동으로 암호화 |
| 보안 설정 | N/A | ||
| 저장된 객체 암호화 | 완전 관리형 | Elastic이 자동으로 암호화 | |
| 사용자 세션 | Kibana 세션 | 완전 관리형 | Elastic이 자동으로 구성 |
| 범주 | 보안 기능 | 상태 | 비고 |
|---|---|---|---|
| 통신 | TLS(HTTP 계층) | 관리형 | 사용자 지정 인증서를 구성할 수 있음 |
| TLS(전송 계층) | 완전 관리형 | Elastic이 자동으로 구성 | |
| 네트워크 | IP 필터링 | 구성 가능 | IP 기반 접근 제한 구성 |
| 사설 연결 및 VPC 필터링 | N/A | ||
| Kubernetes 네트워크 정책 | N/A | ||
| 공개된 고정 IP(인그레스 및 이그레스) | N/A | 허용 목록과 방화벽 규칙에는 ECE 앞단에서 운영하는 로드 밸런서, 리버스 프록시, VPN 게이트웨이 또는 기타 엣지 네트워킹의 IP 주소를 사용하세요. | |
| 데이터 | 저장 데이터 암호화 | N/A | |
| 보안 설정 | 구성 가능 | 보안 설정 구성 | |
| 저장된 객체 암호화 | 구성 가능 | 저장된 객체 암호화 활성화 | |
| 사용자 세션 | Kibana 세션 | 구성 가능 | 세션 파라미터 사용자 지정 |
| 범주 | 보안 기능 | 상태 | 비고 |
|---|---|---|---|
| 통신 | TLS(HTTP 계층) | 관리형 | 사용자 지정을 위한 여러 옵션 제공 |
| TLS(전송 계층) | 관리형 | 사용자 지정을 위한 여러 옵션 제공 | |
| 네트워크 | IP 필터링 | 구성 가능 | IP 기반 접근 제한 구성 |
| 사설 연결 및 VPC 필터링 | N/A | ||
| Kubernetes 네트워크 정책 | 구성 가능 | Pod에 네트워크 정책 적용 | |
| 공개된 고정 IP(인그레스 및 이그레스) | N/A | 허용 목록이나 방화벽에 필요한 곳에는 직접 보유한 고정 IP를 사용하고, 노출하는 호스트명과 주소에 HTTP TLS가 일치하도록 ECK에서 HTTP 인증서를 관리하세요. | |
| 데이터 | 저장 데이터 암호화 | N/A | |
| 보안 설정 | 구성 가능 | 보안 설정 구성 | |
| 저장된 객체 암호화 | 구성 가능 | 저장된 객체 암호화 활성화 | |
| 사용자 세션 | Kibana 세션 | 구성 가능 | 세션 파라미터 사용자 지정 |
| 범주 | 보안 기능 | 상태 | 비고 |
|---|---|---|---|
| 통신 | TLS(HTTP 계층) | 구성 가능 | 자동 또는 수동으로 구성할 수 있습니다. 초기 보안 설정을 참조하세요 |
| TLS(전송 계층) | 구성 가능 | 자동 또는 수동으로 구성할 수 있습니다. 초기 보안 설정을 참조하세요 | |
| 네트워크 | IP 필터링 | 구성 가능 | IP 기반 접근 제한 구성 |
| 사설 연결 및 VPC 필터링 | N/A | ||
| Kubernetes 네트워크 정책 | N/A | ||
| 공개된 고정 IP(인그레스 및 이그레스) | N/A | 직접 운영하는 호스트와 로드 밸런서에서 고정 IP와 방화벽 규칙을 사용하세요. | |
| 데이터 | 저장 데이터 암호화 | N/A | |
| 키스토어 보안 | 구성 가능 | 보안 설정 구성 | |
| 저장된 객체 암호화 | 구성 가능 | 저장된 객체 암호화 활성화 | |
| 사용자 세션 | Kibana 세션 | 구성 가능 | 세션 파라미터 사용자 지정 |
Elasticsearch 보안 기능을 사용하면 Elasticsearch 클러스터를 보호할 수 있습니다. 다만 완전한 보안 전략을 갖추려면 Elastic Stack의 다른 애플리케이션과 Elasticsearch와 다른 Elastic Stack 구성 요소 간의 통신도 보호해야 합니다.
다른 Elastic Stack 구성 요소의 보안 주제를 확인하세요.
HTTP 클라이언트나 통합을 사용해 Elasticsearch와 통신하는 경우 클라이언트 또는 통합과 Elasticsearch 간의 통신도 보호해야 합니다.
일부 Elasticsearch 기능이나 리소스의 사용에는 보안 제약이 적용됩니다. 조직의 보안 요구 사항에 따라 이러한 기능과 리소스 일부를 제한하거나 조정하고, 우회 방법이나 대안을 찾아야 할 수도 있습니다.