Direct Connect における MAC セキュリティ
MAC Security (MACsec) は IEEE 標準の 1 つです。データの機密性、データの整合性、およびデータオリジンの信頼性を定義しています。MACsec は、AWS へのクロス接続でレイヤー 2 のポイントツーポイント暗号化を提供し、2 つのレイヤー 3 ルーター間で動作します。MACsec は、ルーターと Direct Connect ロケーション間の接続をレイヤー 2 で保護します。一方、AWS は、データが Direct Connect ロケーションと AWS リージョン間のネットワークを流れるときに物理レイヤーですべてのデータを暗号化することで、セキュリティを強化します。これにより、トラフィックが最初に AWS に入るときと AWS ネットワークを通過するときの両方で保護される階層的セキュリティアプローチが実現します。
次の図では、Direct Connect クロス接続コネクトはお客様のエッジデバイスの MACsec 対応インターフェイスに接続されている必要があります。Direct Connect 経由の MACsec は、Direct Connect エッジデバイスとお客様のエッジデバイス間のポイントツーポイントトラフィックにレイヤー 2 暗号化を提供します。この暗号化は、クロス接続の両端のインターフェイス間でセキュリティキーが交換および検証された後に行われます。
注記
MACsec は、イーサネットリンク上でポイントツーポイントのセキュリティを提供します。そのため、複数のシーケンシャルイーサネットまたは他のネットワークセグメントにまたがってエンドツーエンドの暗号化を提供することはありません。
MACsec の概念
MACsec の主な概念は次のとおりです。
-
MAC Security (MACsec) — IEEE 802.1 レイヤー 2 標準の 1 つで、データの機密性、データの整合性、およびデータオリジンの信頼性を定義しています。このプロトコルの詳細については、「802.1AE: MAC Security (MACsec)
」を参照してください。 -
セキュア関連付けキー (SAK) – お客様側のオンプレミスルーターと Direct Connect ロケーションにある接続ポートの間で、MACsec 接続を確立するセッションキー。SAK は事前共有ではなく、暗号化キー生成プロセスを通じて CKN/CAK ペアから自動的に派生します。この派生は、お客様が CKN/CAK ペアを指定してプロビジョニングした後に接続の両端で行われます。SAK は、MACsec セッションが確立されるたびに、セキュリティ目的で定期的に再生成されます。
-
接続関連付けキー名 (CKN) と接続関連付けキー (CAK) – このペアの値は、MACsec キーを生成するために使用されます。お客様はこのペア値を生成し、Direct Connect 接続に関連付けた上で、Direct Connect 接続の終端にあるエッジデバイスにそれらをプロビジョニングします。Direct Connect では、静的 CAK モードのみがサポートされ、動的 CAK モードはサポートされません。静的 CAK モードのみがサポートされるため、キーの生成、配布、ローテーションについては独自のキー管理ポリシーに従うことをお勧めします。
-
キー形式 – キー形式は、16 進数文字を使用し、正確に 64 文字で指定する必要があります。Direct Connect では、64 文字の 16 進文字列に対応する、専用接続用の Advanced Encryption Standard (AES) 256 ビットキーのみがサポートされます。
-
暗号化モード – Direct Connect では、次の 2 つの MACsec 暗号化モードがサポートされます。
-
must_encrypt – このモードでは、接続はすべてのトラフィックに MACsec 暗号化が必要です。MACsec ネゴシエーションが失敗するか、暗号化を確立できない場合、接続はトラフィックを一切送信しません。このモードは最高のセキュリティ保証を提供しますが、MACsec 関連の問題がある場合には、可用性に影響を与える可能性があります。
-
should_encrypt – このモードでは、接続は MACsec 暗号化を確立しようとしますが、MACsec ネゴシエーションが失敗した場合には、暗号化されていない通信にフォールバックします。このモードでは、柔軟性と可用性が向上しますが、特定の障害シナリオで暗号化されていないトラフィックが許可される可能性があります。
暗号化モードは、接続を設定するときに設定でき、後で変更できます。デフォルトでは、新しい MACsec 対応接続は、初期設定時の潜在的な接続の問題を防止するために、「should_encrypt」モードに設定されます。
-
MACsec キーローテーション
-
CNN/CAK ローテーション (手動)
Direct Connect MACsec は、最大 3 つの CKN/CAK ペアを保存できる容量を持つ MACsec キーチェーンをサポートします。これにより、お客様は接続を中断することなく、これらの長期キーを手動でローテーションできます。
associate-mac-sec-keyコマンドを使用して新しい CKN/CAK ペアを関連付ける場合は、デバイスで同じペアを設定する必要があります。Direct Connect デバイスは、最後に追加されたキーを使用しようとします。そのキーがデバイスのキーに一致しない場合は、以前の使用可能キーにフォールバックし、ローテーション時の接続の安定性を確保します。associate-mac-sec-keyの使用については、「associate-mac-sec-key」を参照してください。 -
セキュア関連付けキー (SAK) のローテーション (自動)
アクティブな CKN/CAK ペアから派生した SAK は、以下の条件に基づいて自動的にローテーションされます。
-
時間間隔
-
暗号化されるトラフィックの量
-
MACsec セッションの確立
このローテーションは、プロトコルによって自動的に処理され、接続の中断なしに透過的に行われます。手動による介入は必要ありません。SAK は永続的に保存されることはなく、IEEE 802.1X 標準に従った安全なキー派生プロセスを通じて再生成されます。
-
サポートされている接続
MACsec は、専用 Direct Connect 接続と Link Aggregation Group で使用できます。
注記
サポート対象デバイスを使用しているパートナーは、MACsec を使用して、エッジネットワークデバイスと Direct Connect デバイス間のレイヤー 2 接続を暗号化できます。この機能を有効にしているパートナーは、保護されたリンクを通過するすべてのトラフィックを暗号化できます。MACsec 暗号化は、レイヤー 2 の 2 つの特定のデバイス間で動作し、ホスト接続ではサポートされません。
MACsec をサポートする接続の注文方法については、AWS Direct Connect
専用接続
以下は、Direct Connect 専用接続の MACsec をより良く理解するために役立ちます。MACsec の使用には追加料金はかかりません。専用接続で MACsec を設定する手順は、「専用接続で MacSec の使用を開始する」を参照してください。
パートナー相互接続オペレーションは、専用接続と同じ手順に従います。パートナー相互接続に対して CLI または SDK コマンドを実行すると、レスポンスに MACsec 関連情報が含まれます (該当する場合)。
専用接続の MACsec 前提条件
専用接続では、次の MACsec の要件に注意してください。
-
MACsec は、選択された POP (Point Of Presence) において、10Gbps、100Gbps、および400Gbpsの専用 Direct Connect 接続でサポートされています。これらの接続では、次の MACsec 暗号スイートがサポートされています。
-
10Gbps 接続の場合、GCM-AES-256 および GCM-AES-XPN-256。
-
100 Gbps、400 Gbps 接続の場合、GCM-AES-XPN-256。
-
-
256 ビット MACsec キーのみがサポートされています。
-
100 Gbps および 400 Gbps 接続には、拡張パケット番号付け (XPN) が必要です。10Gbps 接続の場合、Direct Connect は GCM-AES-256 と GCM-AES-XPN-256 の両方をサポートします。100 Gbps 専用接続や 400 Gbps 専用接続などの高速接続では、MACsecの元の32ビットパケット番号空間がすぐに枯渇してしまうため、新しい接続アソシエーションを確立するために数分ごとに暗号鍵をローテーションする必要があります。この状況を回避するため、IEEE Std 802.1AEbw -2013 修正では、拡張パケット番号付けが導入され、番号付けスペースが 64 ビットに拡大され、キーローテーションの適時性要件が緩和されました。
-
Secure Channel Identifier (SCI) は必須であり、オンにする必要があります。この設定は調整できません。
-
IEEE 802.1Q (Dot1q/VLAN) タグ offset/dot1q-in-clear は、暗号化されたペイロードの外部への VLAN タグの移動ではサポートされていません。
さらに、専用接続で MACsec の設定を行う前に、以下のタスクを完了する必要があります。
-
MACsec キー用の CKN/CAK ペアを作成します。
このペアの作成には、公開された標準ツールが使用できます。作成するペアは、ステップ 4: オンプレミスのルーターを設定する で指定された要件を満たしている必要があります。
-
接続の末端には、MacSec をサポートする適切なデバイスが設置されている必要があります。
-
Secure Channel Identifier (SCI) をオンにする必要があります。
-
256 ビットの MACsec キーのみがサポートされており、最新の高度なデータ保護を提供します。
LAG
次の要件は、Direct Connect Link Aggregation Group (LAG) の MACsec を理解するのに役立ちます。
-
LAG は、MACsec 暗号化をサポートする MACsec 対応専用接続で構成されている必要があります。
-
LAG 内の接続はすべて同じ帯域幅で、MACsec をサポートしている必要があります。
-
MACsec 設定は、LAG 内のすべての接続に均一に適用されます。
-
LAG 作成と MACsec を同時に有効にできます。
-
すべての LAG リンクでいつでも使用できる MACsec キーは 1 つだけです。複数の MACsec キーをサポートする機能は、キーのローテーションのみを目的としています。
パートナー相互接続
相互接続を所有しているパートナーアカウントは、その物理接続または LAG で MACsec を使用できます。オペレーションは専用接続の場合と同じですが、パートナー固有の API/SDK 呼び出しを使用して実行します。
サービスにリンクされたロール
Direct Connect は AWS Identity and Access Management (IAM) サービスリンクロールを使用します。サービスにリンクされたロールは、 に直接リンクされた一意のタイプの IAM ロールですDirect Connect サービスにリンクされたロールは、Direct Connect による事前定義済みのロールであり、ユーザーに代わってサービスから AWS の他のサービスを呼び出すために必要なすべてのアクセス許可を備えています。サービスにリンクされたロールを使用すると、必要なアクセス許可を手動で追加する必要がなくなるため、Direct Connect の設定が簡単になります。Direct Connect は、このサービスにリンクされたロールのアクセス許可を定義します。特に定義されている場合を除き、Direct Connect のみがそのロールを引き受けることができます。定義される許可は、信頼ポリシーと許可ポリシーに含まれており、その許可ポリシーを他の IAM エンティティにアタッチすることはできません。詳細については、「Direct Connect のサービスにリンクされたロールの使用」を参照してください。
MACSec の事前共有 CKN/CAK キーに関する考慮事項
AWS Direct Connect は、接続または LAG に関連付ける事前共有されたキーに AWS マネージド CMK を使用します。Secrets Manager は、Secrets Manager のルートキーが暗号化するシークレットとして、事前共有された CKN と CAK のペアを保存します。詳細については、AWS Key Management Service デベロッパーガイドの「AWS 管理の CMK」を参照してください。
保存されたキーは設計上読み取り専用ですが、AWS Secrets Manager コンソールまたは API を使用して、7~30 日間隔での削除をスケジュールできます。削除をスケジュールすると、CKN を読み取ることができなくなるため、ネットワーク接続に影響が生じる場合があります。この場合、次のルールが適用されます。
-
接続が保留状態の場合は、その接続での CKN の関連付けを解除します。
-
接続が使用可能な状態の場合は、接続の所有者に電子メールで通知します。所有者が 30日以内に何らかの措置を講じなかった場合は、対象の CKN の接続との関連付けが当社により解除されます。
接続から最後の CKN の関連付けを解除した際に、接続の暗号化モードが「must encrypt」に設定されている場合は、モードを「should_encrypt」に設定して突然のパケット損失を防ぎます。