Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

13장. 프로젝트의 데이터 프라이버시

OpenStack은 다양한 데이터 요구 사항이 있는 프로젝트 간에 멀티 테넌시를 지원하도록 설계되었습니다. 클라우드 운영자는 해당 데이터 개인 정보 취급 방침과 규정을 고려해야 합니다. 이 장에서는 OpenStack 배포를 위한 데이터 리빌리티 및 폐기에 대해 다룹니다.

13.1. 데이터 개인 정보 보호 문제

이 섹션에서는 OpenStack 배포의 데이터 프라이버시에 발생할 수 있는 몇 가지 우려 사항에 대해 설명합니다.

13.1.1. 데이터 상주성

데이터의 기밀성과 격리는 지난 몇 년 동안 클라우드 채택의 주요 장애로 인식되어 왔습니다. 클라우드에서 데이터를 소유하는 사용자와 클라우드 운영자가 궁극적으로 이 데이터의 보호자로서 신뢰할 수 있는지에 대한 우려는 과거의 중요한 문제였습니다.

특정 OpenStack 서비스에는 프로젝트 또는 참조 프로젝트 정보에 속하는 데이터 및 메타데이터에 액세스할 수 있습니다. 예를 들어 OpenStack 클라우드에 저장된 프로젝트 데이터에 다음 항목이 포함될 수 있습니다.

  • 오브젝트 스토리지 오브젝트.
  • 계산 인스턴스 임시 파일 시스템 스토리지.
  • 계산 인스턴스 메모리.
  • 블록 스토리지 볼륨 데이터.
  • 계산 액세스용 공개 키.
  • 이미지 서비스의 가상 시스템 이미지.
  • 인스턴스 스냅샷.
  • Compute의 configuration-drive 확장에 전달되는 데이터.

OpenStack 클라우드에서 저장한 메타데이터에는 다음 항목이 포함됩니다(이 목록은 포괄적이지 않음).

  • 조직 이름.
  • 사용자의 "실무 이름".
  • 실행 중인 인스턴스, 버킷, 오브젝트, 볼륨 및 기타 할당량 관련 항목의 수 또는 크기.
  • 인스턴스 실행 또는 데이터 저장 시간 수.
  • 사용자의 IP 주소.
  • 컴퓨팅 이미지 번들을 위해 내부적으로 생성된 개인 키.

13.1.2. 데이터 처리

모범 사례에 따라 운영자는 조직 제어에서 릴리스되기 전에 클라우드 시스템 미디어(디지터 및 비디지컬)를 삭제해야 합니다. 삭제 방법은 특정 보안 도메인과 정보의 민감도에 따라 적절한 수준의 강점과 무결성을 구현해야 합니다.

참고

NIST Special Publication 800-53 버전 4는 이 주제에 대한 특정 관점을 취합니다.

The sanitization process removes information from the media such that the information cannot be retrieved or reconstructed. Sanitization techniques, including clearing, purging, cryptographic erase, and destruction, prevent the disclosure of information to unauthorized individuals when such media is reused or released for disposal.

클라우드 운영자는 일반 데이터 처리 및 삭제 지침을 개발할 때 다음을 고려해야 합니다(NIST 권장 보안 제어에 따라).

  • 미디어 제거 및 폐기 작업 추적, 문서화 및 확인.
  • 안전 장비 및 절차를 테스트하여 적절한 성능을 검증합니다.
  • 이러한 장치를 클라우드 인프라에 연결하기 전에 이동식 스토리지 장치를 삭제합니다.
  • 삭제할 수 없는 클라우드 시스템 미디어 삭제.

결과적으로 OpenStack 배포는 다음 방법을 해결해야 합니다(다른 방법).

  • 안전한 데이터 삭제
  • 인스턴스 메모리 스크럽
  • 블록 스토리지 볼륨 데이터
  • 컴퓨팅 인스턴스 임시 스토리지
  • 베어 메탈 서버 삭제

13.1.3. 데이터가 안전하게 삭제되지 않음

OpenStack 내에서 일부 데이터는 삭제될 수 있지만 위에 설명된 NIST 표준의 맥락에서 안전하게 지워지지는 않습니다. 이는 일반적으로 위에서 정의한 메타데이터 및 데이터베이스에 저장된 대부분의 또는 모든 메타데이터에 적용할 수 있습니다. 이는 자동 채우기 및 주기적인 자유 공간 삭제를 위한 데이터베이스 및/또는 시스템 구성으로 해결될 수 있습니다.

13.1.4. 인스턴스 메모리 스크럽

인스턴스 메모리의 처리는 다양한 하이퍼바이저에만 해당됩니다. 이 동작은 계산에 정의되지 않지만 일반적으로 하이퍼바이저는 인스턴스를 만들 때 또는 둘 다 삭제할 때 인스턴스를 삭제할 때 메모리를 제거하는 것이 가장 좋습니다.

13.1.5. Cinder 볼륨 데이터 암호화

OpenStack 볼륨 암호화 기능을 사용하는 것이 좋습니다. 이 내용은 Volume Encryption(볼륨 암호화)의 Data Encryption(데이터 암호화) 섹션에서 설명합니다. 이 기능을 사용하면 암호화 키를 안전하게 삭제하여 데이터를 제거합니다. 최종 사용자는 볼륨을 생성하는 동안 이 기능을 선택할 수 있지만 관리자는 먼저 볼륨 암호화 기능을 한 번만 설정해야 합니다.

OpenStack 볼륨 암호화 기능을 사용하지 않으면 일반적으로 다른 접근법을 활성화하기가 더 어렵습니다. 백엔드 플러그인을 사용하는 경우 암호화 또는 비표준 덮어쓰기 솔루션을 수행하는 독립적인 방법이 있을 수 있습니다. OpenStack 블록 스토리지의 플러그인은 다양한 방법으로 데이터를 저장합니다. 많은 플러그인은 벤더 또는 기술에만 해당되는 반면, 다른 플러그인은 파일 시스템(예: LVM 또는 ZFS)을 중심으로 더 DIY 솔루션입니다. 데이터를 안전하게 삭제하는 방법은 플러그인, 벤더 및 파일 시스템마다 다릅니다.

일부 백엔드(예: ZFS)는 데이터 노출을 방지하기 위해 COW(Copy-On-Write)를 지원합니다. 이 경우 쓰기되지 않은 블록에서 읽기는 항상 0을 반환합니다. 다른 백엔드(예: LVM)는 기본적으로 이를 지원하지 않을 수 있으므로 cinder 플러그인은 사용자에게 전달하기 전에 이전에 작성된 블록을 재정의해야 합니다. 선택한 볼륨 백엔드에서 제공하는 보장을 검토하고 제공되지 않은 해당 보장에 대해 사용할 수 있는 수정 사항을 확인하는 것이 중요합니다.

13.1.6. 이미지 서비스 지연 삭제 기능

이미지 서비스에는 삭제 시간이 지연되어 정의된 기간 동안 이미지 삭제가 적용됩니다. 이 동작이 보안 문제가 되는 경우 이 기능을 비활성화하는 것이 좋습니다. glance-api.conf 파일을 편집하고 delay _delete 옵션을 False로 설정하여 이 작업을 수행할 수 있습니다.

13.1.7. 컴퓨팅 소프트 삭제 기능

compute에는 소프트 삭제 기능이 있으므로, 삭제된 인스턴스가 정의된 기간 동안 소프트 삭제 상태가 될 수 있습니다. 이 기간 동안 인스턴스를 복원할 수 있습니다. 소프트 삭제 기능을 비활성화하려면 /var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf 파일을 편집하고 reclaim_instance_interval 옵션을 비워 둡니다.

13.1.8. 컴퓨팅 인스턴스의 임시 스토리지

OpenStack Ephemeral disk 암호화 기능은 활성 사용과 데이터가 삭제될 때와 함께 임시 스토리지의 개인 정보 보호 및 격리를 개선하는 수단을 제공합니다. 암호화된 블록 스토리지의 경우와 마찬가지로 암호화 키를 삭제하면 효과적으로 데이터를 삭제할 수 있습니다.

임시 스토리지를 생성 및 삭제하는 데이터 프라이버시를 제공하는 대체 방법은 선택한 하이퍼바이저와 계산 플러그인에 따라 달라집니다.

계산용 libvirt 드라이버는 파일 시스템 또는 LVM에서 임시 스토리지를 직접 유지 관리할 수 있습니다. 파일 시스템 스토리지는 일반적으로 데이터를 제거할 때 덮어쓰지 않습니다. 그러나 더티 확장 영역이 사용자에게 프로비저닝되지 않는다는 보장도 있습니다.

블록 기반 LVM 백업 임시 스토리지를 사용하는 경우 정보 공개를 방지하기 위해 계산 소프트웨어에서 블록을 안전하게 지워야 합니다. 이전에는 임시 블록 스토리지 장치와 잘못 삭제된 관련 정보 공개 취약점이 있었습니다.

파일 시스템 스토리지는 더티 확장 영역을 사용자에게 배포할 수 없으므로 LVM보다 임시 블록 스토리지 장치에 더 안전한 솔루션입니다. 그러나 사용자 데이터가 삭제되지 않으므로 백업 파일 시스템을 암호화하는 것이 좋습니다.