默认启用 Amazon EBS 加密 - Amazon EBS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

默认启用 Amazon EBS 加密

您可以将您的 Amazon 账户配置为对您创建的新EBS卷和快照副本强制加密。例如,Amazon EBS 会加密您启动实例时创建的EBS卷以及您从未加密的快照中复制的快照。有关从未加密资源过渡到加密EBS资源的示例,请参阅。加密未加密的资源

默认情况下,加密对现有EBS卷或快照没有影响。

注意事项
  • 默认加密是区域特定的设置。如果您为某个区域启用了它,则无法为该区域中单独的卷或快照禁用。

  • 默认情况下,所有当前和上一代实例类型都支持 Amazon EBS 加密。

  • 如果您复制快照并将其加密为新KMS密钥,则会创建完整(非增量)副本。这会产生额外的存储成本。

  • 使用 Amazon Server Migration Service (SMS) 迁移服务器时,请勿默认开启加密。如果默认情况下已启用加密,并且您遇到增量复制失败,请默认关闭加密。相反,请在创建复制作业时启用AMI加密。

Amazon EC2 console
默认为某个区域启用加密
  1. 打开 Amazon EC2 控制台,网址为https://console.aws.amazon.com/ec2/

  2. 从导航栏中选择区域。

  3. 在导航窗格中,选择EC2控制面板

  4. 在页面的右上角,选择账户属性,然后选择数据保护和安全

  5. EBS加密部分中,选择管理

  6. 选择 启用。您可以保留 Amazon 托管式密钥 使用代表您aws/ebs创建的别名作为默认加密密钥,或者选择对称的客户托管加密密钥。

  7. 选择 “更新EBS加密”。

Amazon CLI
查看默认设置的加密
  • 对于特定区域

    $ aws ec2 get-ebs-encryption-by-default --region region
  • 对于您账户中的所有区域

    $ echo -e "Region \t Encrypt \t Key"; \ echo -e "----------- \t ------- \t -------" ; \ for region in $(aws ec2 describe-regions --region us-east-1 --query "Regions[*].[RegionName]" --output text); do default=$(aws ec2 get-ebs-encryption-by-default --region $region --query "{Encryption_By_Default:EbsEncryptionByDefault}" --output text); kms_key=$(aws ec2 get-ebs-default-kms-key-id --region $region | jq '.KmsKeyId'); echo -e "$region \t $default \t\t $kms_key"; done
默认启用加密
  • 对于特定区域

    $ aws ec2 enable-ebs-encryption-by-default --region region
  • 对于您账户中的所有区域

    $ echo -e "Region \t Encrypt \t Key"; \ echo -e "----------- \t ------- \t -------" ; \ for region in $(aws ec2 describe-regions --region us-east-1 --query "Regions[*].[RegionName]" --output text); do default=$(aws ec2 enable-ebs-encryption-by-default --region $region --query "{Encryption_By_Default:EbsEncryptionByDefault}" --output text); kms_key=$(aws ec2 get-ebs-default-kms-key-id --region $region | jq '.KmsKeyId'); echo -e "$region \t $default \t\t $kms_key"; done
默认禁用加密
  • 对于特定区域

    $ aws ec2 disable-ebs-encryption-by-default --region region
  • 对于您账户中的所有区域

    $ echo -e "Region \t Encrypt \t Key"; \ echo -e "----------- \t ------- \t -------" ; \ for region in $(aws ec2 describe-regions --region us-east-1 --query "Regions[*].[RegionName]" --output text); do default=$(aws ec2 disable-ebs-encryption-by-default --region $region --query "{Encryption_By_Default:EbsEncryptionByDefault}" --output text); kms_key=$(aws ec2 get-ebs-default-kms-key-id --region $region | jq '.KmsKeyId'); echo -e "$region \t $default \t\t $kms_key"; done
PowerShell
查看默认设置的加密
  • 对于特定区域

    PS C:\> Get-EC2EbsEncryptionByDefault -Region region
  • 对于您账户中的所有区域

    PS C:\> (Get-EC2Region).RegionName |` ForEach-Object { [PSCustomObject]@{ Region = $_; EC2EbsEncryptionByDefault = Get-EC2EbsEncryptionByDefault -Region $_; EC2EbsDefaultKmsKeyId = Get-EC2EbsDefaultKmsKeyId -Region $_ } } |` Format-Table -AutoSize
默认启用加密
  • 对于特定区域

    PS C:\> Enable-EC2EbsEncryptionByDefault -Region region
  • 对于您账户中的所有区域

    PS C:\> (Get-EC2Region).RegionName |` ForEach-Object { [PSCustomObject]@{ Region = $_; EC2EbsEncryptionByDefault = Enable-EC2EbsEncryptionByDefault -Region $_; EC2EbsDefaultKmsKeyId = Get-EC2EbsDefaultKmsKeyId -Region $_ } } | ` Format-Table -AutoSize
默认禁用加密
  • 对于特定区域

    PS C:\> Disable-EC2EbsEncryptionByDefault -Region region
  • 对于您账户中的所有区域

    PS C:\> (Get-EC2Region).RegionName |` ForEach-Object { [PSCustomObject]@{ Region = $_; EC2EbsEncryptionByDefault = Disable-EC2EbsEncryptionByDefault -Region $_; EC2EbsDefaultKmsKeyId = Get-EC2EbsDefaultKmsKeyId -Region $_ } } | ` Format-Table -AutoSize

您无法更改与现有快照或加密卷关联的密KMS钥。但是,您可以在快照复制操作期间关联不同的KMS密钥,这样生成的复制快照就会被新KMS密钥加密。