13.3. 데이터 암호화
옵션은 아래에 설명된 OpenStack 볼륨 암호화 기능과 같이 디스크에 저장되거나 네트워크를 통해 전송할 때마다 구현자가 프로젝트 데이터를 암호화할 수 있도록 존재합니다. 이는 사용자가 공급업체로 보내기 전에 자신의 데이터를 암호화하는 일반적인 권장 사항을 넘어선 것입니다.
프로젝트를 대신하여 데이터를 암호화하는 것은 공격자가 프로젝트 데이터에 액세스할 수 있는 공급자가 추정한 위험과 크게 관련이 있습니다. 정부 및 정책별 요구 사항, 프라이빗 계약 또는 공용 클라우드 공급업체의 프라이빗 계약과 관련된 요구 사항이 있을 수 있습니다. 프로젝트 암호화 정책을 선택하기 전에 위험 평가 및 법률적 조언을 받는 것이 좋습니다.
인스턴스별 또는 개체별 암호화는 내림차순, 프로젝트당, 호스트별, 클라우드당 집계를 통해 선호됩니다. 이 권장 사항은 구현의 복잡성과 난이도와 반대입니다. 현재 일부 프로젝트에서는 프로젝트별로 느슨하게 암호화를 구현하는 것이 어렵거나 불가능한 경우도 있습니다. 구현자는 프로젝트 데이터 암호화를 고려해야 합니다.
종종 데이터 암호화는 단순히 키를 폐기하여 프로젝트 및 인스턴스별 데이터를 안정적으로 삭제하는 기능과 긍정적인 관련이 있습니다. 이렇게 하면 신뢰할 수 있고 안전한 방식으로 해당 키를 삭제하는 것이 매우 중요합니다.
사용자의 데이터를 암호화할 수 있는 기회가 있습니다.
- Object Storage 오브젝트
- 네트워크 데이터
13.3.1. 볼륨 암호화 링크 복사링크가 클립보드에 복사되었습니다!
OpenStack의 볼륨 암호화 기능은 프로젝트별로 기밀성을 지원합니다. 지원되는 기능은 다음과 같습니다.
- 대시보드 또는 명령줄 인터페이스를 통해 시작되는 암호화된 볼륨 유형의 생성 및 사용
- 암호화를 활성화하고 암호화 알고리즘 및 키 크기와 같은 매개 변수를 선택합니다.
- iSCSI 패킷에 포함된 볼륨 데이터가 암호화됨
- 원래 볼륨이 암호화된 경우 암호화된 백업 지원
- 볼륨 암호화 상태의 대시보드 표시. 볼륨이 암호화되고 알고리즘 및 키 크기와 같은 암호화 매개 변수를 포함한다는 표시가 포함됩니다.
- 키 관리 서비스와의 인터페이스
13.3.2. 임시 디스크 암호화 링크 복사링크가 클립보드에 복사되었습니다!
임시 디스크 암호화 기능으로 데이터 프라이버시를 처리합니다. 임시 디스크는 가상 호스트 운영 체제에서 사용하는 임시 작업 공간입니다. 암호화를 사용하지 않으면 이 디스크에서 중요한 사용자 정보에 액세스할 수 있으며 디스크의 마운트를 해제한 후에도 vestigial 정보가 유지될 수 있습니다. 다음과 같은 임시 디스크 암호화 기능이 지원됩니다.
13.3.2.1. 암호화된 LVM 임시 디스크 생성 및 사용 링크 복사링크가 클립보드에 복사되었습니다!
계산 서비스는 현재 LVM 형식의 임시 디스크 암호화만 지원합니다.
계산 구성 파일(/var/lib/config-data/puppet-generated/nova_libvirt/etc/nova/nova.conf)에는 ephemeral_storage_encryption 섹션 내에 다음과 같은 기본 매개변수가 있습니다.
-
cipher = aes-xts-plain64- 이 필드는 임시 스토리지를 암호화하는 데 사용되는 암호 및 모드를 설정합니다. AES-XTS는 특히 디스크 스토리지용으로 NIST에서 권장되며, 이름은 XTS 암호화 모드를 사용하는 AES 암호화에 대해 단축됩니다. 사용 가능한 암호는 커널 지원에 따라 다릅니다. 명령줄에서cryptsetup 벤치마크를 입력하여 사용 가능한 옵션을 확인하고 벤치마크 결과를 참조하거나 /proc/crypto로 이동합니다. -
enabled = false- 임시 디스크 암호화를 사용하려면 옵션 설정:enabled = true -
key_size = 512- 백엔드 키 관리자의 키 크기 제한이 있을 수 있습니다.key_size = 256을 사용해야 하며, 이 키 크기는 128비트의 AES 키 크기만 제공해야 합니다. XTS는 암호화 키 AES 외에도 자체 "tweak 키"가 필요합니다. 일반적으로 이 키는 하나의 큰 키로 표시됩니다. 이 경우 512비트 설정을 사용하면 XTS에서 AES 및 256비트가 256비트를 사용합니다. (NIST 참조)
13.3.2.2. 키 관리 서비스와 상호 작용 링크 복사링크가 클립보드에 복사되었습니다!
키 관리 서비스는 프로젝트별로 임시 디스크 암호화 키를 제공하여 데이터 격리를 지원합니다. 임시 디스크 암호화는 백엔드 키 스토리지에서 지원하여 보안을 강화합니다. 키 관리 서비스를 사용하면 임시 디스크가 더 이상 필요하지 않은 경우 키를 삭제하면 임시 디스크 스토리지 영역을 덮어쓸 수 있습니다.
13.3.3. Object Storage 오브젝트 링크 복사링크가 클립보드에 복사되었습니다!
Object Storage(swift)는 스토리지 노드에서 유휴 상태의 오브젝트 데이터의 선택적 암호화를 지원합니다. 개체 데이터의 암호화는 무단 당사자가 디스크에 대한 물리적 액세스를 얻는 경우 사용자의 데이터를 읽을 위험을 완화하기 위한 것입니다.
유휴 상태의 데이터 암호화는 프록시 서버 WSGI 파이프라인에 포함될 수 있는 미들웨어에 의해 구현됩니다. 이 기능은 Swift 클러스터 내부이며 API를 통해 노출되지 않습니다. 클라이언트는 데이터가 swift 서비스로 내부적으로 암호화된다는 것을 인식하지 못합니다. 내부적으로 암호화된 데이터는 swift API를 통해 클라이언트로 반환되지 않아야 합니다.
다음 데이터는 swift에서 유휴 상태로 유지되는 동안 암호화됩니다.
-
오브젝트 콘텐츠(예: 오브젝트
PUT요청 본문의 콘텐츠)입니다. -
콘텐츠가 0이 아닌 개체의 엔터티 태그(E
Tag)입니다. -
모든 사용자 지정 사용자 오브젝트 메타데이터 값. 예를 들어
X-Object-Meta-접두사가 지정된 헤더를PUT또는POST요청과 함께 사용하여 전송되는 메타데이터입니다.
위 목록에 포함되지 않은 모든 데이터 또는 메타데이터는 다음을 포함하여 암호화되지 않습니다.
- 계정, 컨테이너 및 오브젝트 이름
- 계정 및 컨테이너 사용자 정의 사용자 메타데이터 값
- 모든 사용자 정의 사용자 메타데이터 이름
- 오브젝트 Content-Type 값
- 오브젝트 크기
- 시스템 메타데이터
13.3.4. 블록 스토리지 성능 및 백엔드 링크 복사링크가 클립보드에 복사되었습니다!
운영 체제를 활성화하면 현재 Intel 및 AMD 프로세서에서 사용 가능한 하드웨어 가속 기능을 사용하여 OpenStack 볼륨 암호화 성능을 향상시킬 수 있습니다. OpenStack 볼륨 암호화 기능과 OpenStack Ephemeral Disk Encryption 기능은 모두 dm-crypt 를 사용하여 볼륨 데이터를 보호합니다. dm-crypt 는 Linux 커널 버전 2.6 이상에서 투명한 디스크 암호화 기능입니다. 하드웨어 가속 기능을 사용하면 두 암호화 기능의 성능에 미치는 영향이 최소화됩니다.
13.3.5. 네트워크 데이터 링크 복사링크가 클립보드에 복사되었습니다!
컴퓨팅 노드의 프로젝트 데이터는 IPsec 또는 기타 터널을 통해 암호화할 수 있습니다. 이 방법은 OpenStack에서 일반 또는 표준이 아닌 동기부여 및 관심 있는 구현자가 사용할 수 있는 옵션입니다. 마찬가지로, 암호화된 데이터는 네트워크를 통해 전송되므로 계속 암호화됩니다.