Percona Server for MongoDB와 HashiCorp Vault: 암호화 키 손실 방지 전략
Percona Server for MongoDB: HashiCorp Vault와 함께하는 암호화 키 손실 방지
안녕하세요, 데이터베이스 관리 및 보안에 관한 인사이트를 공유하는 블로그에 오신 것을 환영합니다. 오늘은 Percona Server for MongoDB를 HashiCorp Vault와 함께 사용할 때 발생할 수 있는 암호화 키 손실 문제를 방지하는 방법에 대해 알아보겠습니다.
데이터 암호화 키 저장 옵션
Percona Server for MongoDB에서 데이터 암호화(일명 투명 데이터 암호화)를 설정할 때, 마스터 암호화 키를 저장할 수 있는 세 가지 옵션이 있습니다:
- 파일 시스템의 암호화 키 파일
- KMIP 서버
- HashiCorp의 Vault
파일 시스템에 있는 암호화 키 파일은 보안성이 떨어져 테스트 용도로만 적합합니다. KMIP에 대한 자세한 내용은 여기에서 확인할 수 있으며, 이전 블로그 포스트에서는 Vault를 마스터 암호화 키 저장소로 설정하는 방법에 대한 완전한 지침을 제공합니다. 오늘 포스트에서는 HashiCorp의 Vault를 사용할 때 잠재적인 암호화 키 손실을 방지하는 방법에 대해 논의하겠습니다.
Percona Server for MongoDB를 최신 버전으로 업그레이드
HashiCorp Vault를 사용하여 키 손실 위험을 제거하려면 다음과 같은 조치를 취해야 합니다:
- Percona Server for MongoDB를 버전 6.0.18-15, 7.0.15-9, 8.0.4-1 이상으로 업그레이드합니다.
- Vault 서버에서 max_versions를 설정합니다.
- Percona Server for MongoDB가 Vault 서버에서 추가적인 읽기 권한을 부여받도록 합니다.
이 포스트에서 더 자세히 설명하겠습니다.
Vault와의 통합
Percona Server for MongoDB는 Vault의 버전 관리된 키-값 비밀 엔진인 kv-v2를 지원합니다. 비밀 엔진 내의 저장된 엔티티는 기본적으로 키-값 쌍의 집합입니다. Percona Server는 단일 항목 비밀을 구성하며, base64로 인코딩된 마스터 암호화 키가 특정 구현 정의 키에 대한 값으로 저장됩니다.
Percona Server가 Vault에서 비밀을 찾을 때, {<full_secret_path>, <version>}
쌍을 복합 식별자로 사용합니다. 이 구성에서 full_secret_path는 암호화된 키가 저장된 전체 경로입니다. 사용자는 Percona Server 설정 시 일반적으로 비밀 버전에 대해 걱정할 필요가 없습니다.
비밀 덮어쓰기 및 Percona 서버 업그레이드
비밀 경로에서 새로운 보안 버전을 추가하는 과정은 종종 Vault가 비밀 버전을 순차적으로 저장하는 것과 유사하게 묘사됩니다. 그러나 Vault는 기본적으로 각 비밀의 가장 최근 버전 10개만 유지하고, 그 이상이 저장될 경우 가장 오래된 버전이 영구적으로 삭제됩니다. 이러한 저장 방식은 여러 노드가 동일한 비밀 경로를 공유할 경우 키 손실을 초래할 수 있습니다.
Percona Server for MongoDB의 새로운 버전에서는 security.vault.checkMaxVersions 설정 파일 옵션을 사용하여 비밀 덮어쓰기를 방지합니다. 이 옵션은 기본적으로 활성화되어 있으며, Percona Server가 새로운 비밀을 Vault 서버에 저장하기 전에 추가적인 검증을 수행합니다.
max_versions 구성
max_versions 값을 설정하려면 다음과 같은 두 가지 셸 명령어를 사용할 수 있습니다:
vault kv metadata put -max-versions=N -mount=mongokeys/prod cluster-zulu/host-alpha
vault write mongokeys/prod/config max_versions=N
이렇게 하면 해당 비밀의 메타데이터가 업데이트되어 최대 N개의 버전을 가질 수 있습니다.
결론
Percona Server for MongoDB의 버전 6.0.18-15, 7.0.15-9 및 8.0.4-1은 Vault 서버에서의 잠재적인 키 손실을 방지하는 방법을 제공합니다. 새로운 버전들은 Vault 서버에서 추가적인 권한을 요구하지만, 이를 구성하는 것은 어렵지 않습니다. 마스터 암호화 키가 손실되거나 데이터가 복호화되지 않는 상황을 피하기 위해, 가능한 빨리 배포를 위의 버전으로 업그레이드할 것을 권장합니다. 도움이 필요하다면 언제든지 Percona 전문가에게 문의하시기 바랍니다.
지금 바로 Percona에 문의하기 를 클릭해 주세요.
이번 포스트가 유익하셨다면 구독 버튼을 눌러주세요! 데이터베이스 관련 더 많은 정보를 제공해드리겠습니다. 감사합니다!