AWS Direct Connect 中的 MAC 安全
MAC 安全(MACsec)是一项 IEEE 标准,可提供数据机密性、数据完整性和数据来源真实性。MACsec 通过交叉连接向 AWS 提供第 2 层点对点加密。MacSec 在两个第 3 层路由器之间的第 2 层运行,为第 2 层域提供加密功能。在离开数据中心之前,所有流经与数据中心和区域互连的 AWS 全球网络的数据都会在物理层自动加密。
在下图中,专用连接和本地资源都必须支持 MACsec。通过专用连接传入或传出数据中心的第 2 层流量都经过加密。
MACsec 概念
以下是 MACsec 的主要概念:
-
MAC 安全(MACsec):一项 IEEE 802.1 第 2 层标准,可提供数据机密性、数据完整性和数据来源真实性。有关该协议的更多信息,请参阅 802.1AE:MAC 安全(MACsec)
。 -
MACsec 密钥:一种预共享密钥,用于在客户本地路由器和 AWS Direct Connect 位置的连接端口之间建立 MACsec 连接。密钥是由连接末端的设备使用您提供给 AWS 并在设备上预置的 CKN/CAK 对生成的。
-
连接密钥名称(CKN)和连接关联密钥(CAK):这对密钥中的值用于生成 MACsec 密钥。您可以生成对值,将它们与 AWS Direct Connect 连接关联,并在 AWS Direct Connect 连接末端的边缘设备上进行预置。
MACsec 密钥轮换
轮换密钥时,MACsec 密钥链支持密钥轮换。Direct Connect MACsec 支持 MACsec 密钥链,最多可存储三对 CKN/CAK。您可以使用 associate-mac-sec-key
命令将 CKN/CAK 对与已启用 MACsec 的现有连接相关联。然后,在 AWS Direct Connect 连接端的设备上配置相同的 CKN/CAK 对。Direct Connect 设备将尝试使用上次存储的密钥进行连接。如果该密钥与设备上的密钥不一致,则 Direct Connect 将继续使用之前的有效密钥。
有关使用 associate-mac-sec-key
的信息,请参阅 associate-mac-sec-key
支持的连接
MACsec 在专用连接上可用。有关如何订购支持 MACsec 的连接的信息,请参阅 AWS Direct Connect
专用连接上的 MACsec
以下内容可帮助您熟悉 AWS Direct Connect 专用连接上的 MACsec。使用 MACsec 无需支付额外费用。
可以在 开始在专用连接上使用 MACsec 中查看在专用连接上配置 MACsec 的步骤。在专用连接上配置 MACsec 之前,请注意以下内容:
-
选定入网点的 10 Gbps、100 Gbps 和 400 Gbps 专用 Direct Connect 连接支持 MACsec。对于上述连接,支持以下 MACSec 密码套件:
-
对于 10 Gbps 连接,请使用 GCM-AES-256 和 GCM-AES-XPN-256。
-
对于 100 Gbps 和 400 Gbps 的连接,请使用 GCM-AES-XPN-256。
-
-
仅支持 256 位 MACSec 密钥。
-
100 Gbps 和 400 Gbps 连接需要扩展数据包编号(XPN)。对于 10 Gbps 连接,Direct Connect 同时支持 GCM-AES-256 和 GCM-AES-XPN-256。高速连接(例如 100 Gbps 和 400 Gbps 的专用连接)可能会很快耗尽 MACSec 最初的 32 位数据包编号空间,因此您可能需要每隔几分钟轮换一次加密密钥,以建立新的连接关联。为了避免这种情况,IEEE Std 802.1AEbw-2013 修订版添加了扩展数据包编号,将编号空间增加到 64 位,从而放宽了密钥轮换的及时性要求。
-
安全通道标识符(SCI)是必填项,必须处于打开状态。此设置无法调整。
-
不支持 IEEE 802.1Q(Dot1q/VLAN)标签偏移/dot1q-in-clear 将 VLAN 标签移出加密有效载荷。
有关 Direct Connect 和 MACSec 的更多信息,请参阅 AWS Direct Connect 常见问题
MACsec 专用连接的先决条件
在专用连接上配置 MACsec 之前,请完成以下任务。
-
为 MACsec 密钥创建一个 CKN/CAK 对。
您可以使用开放标准工具创建该对。该对必须满足 步骤 4:配置本地路由器 中指定的要求。
-
确保连接端具有支持 MACsec 的设备。
-
必须开启安全通道标识符(SCI)。
-
仅支持 256 位 MACsec 密钥,提供最新的高级数据保护。
服务相关角色
AWS Direct Connect 使用 AWS Identity and Access Management(IAM)服务相关角色。服务相关角色是一种独特类型的 IAM 角色,它与 AWS Direct Connect 直接相关。服务相关角色是由 AWS Direct Connect 预定义的,并包含该服务代表您调用其他 AWS 服务所需的所有权限。服务相关角色使 AWS Direct Connect 的设置更轻松,因为您不必手动添加必要的权限。AWS Direct Connect 定义其服务相关角色的权限,除非另行定义,否则仅 AWS Direct Connect 可以担任其角色。定义的权限包括信任策略和权限策略,以及不能附加到任何其他 IAM 实体的权限策略。有关更多信息,请参阅 Direct Connect 的服务相关角色。
MACsec 预共享 CKN/CAK 密钥注意事项
AWS Direct Connect 使用 AWS 托管 CMK 作为与连接或 LAG 关联的预共享密钥。Secrets Manager 将您预共享的 CKN 和 CAK 对,存储为 Secrets Manager 根密钥加密的密钥。有关更多信息,请参阅《AWS Key Management Service 开发人员指南》中的 AWS 托管 CMK。
存储的密钥设计为只读,但您可以使用 AWS Secrets Manager 控制台或 API 计划七到三十天的删除时间。当您计划删除时,无法读取 CKN,这可能会影响网络连接。发生这种情况时,我们会采用以下规则:
-
如果连接处于待处理状态,我们会解除 CKN 与连接的关联。
-
如果连接处于可用状态,我们会通过电子邮件通知连接所有者。如果您在 30 天内未采取任何行动,我们会解除 CKN 与连接的关联。
当我们解除最后一个 CKN 与连接的关联,并且连接加密模式设置为“必须加密”时,我们会将模式设置为“should_encrypt”,以防止突然丢包。