この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、Cisco IOS® XEルータの動作を理解し、トラブルシューティングするための基本的なWAN MACSECプロトコルについて説明します。
このドキュメントに関しては個別の前提条件はありません。
このドキュメントの情報は、ASR 1000、ISR 4000、Catalyst 8000ファミリなどのCisco IOS XEルータに固有のものです。特定のハードウェアおよびソフトウェアのMACSECサポートを探します。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
MACsecはIEEE 802.1AE標準ベースのレイヤ2ホップバイホップ暗号化で、AES-128暗号化を使用したメディアアクセス非依存プロトコルにデータ機密性、データ整合性、およびデータ生成元認証を提供します。MACsecを使用して保護できるのは、ホスト側リンク(ネットワークアクセスデバイスとPCやIP電話などのエンドポイントデバイス間のリンク)だけです。
MACsecは、有線LAN上で安全な通信を提供します。MACsecを使用してLAN上のエンドポイント間の通信を保護する場合、ワイヤ上の各パケットは対称キー暗号化を使用して暗号化されるため、ワイヤ上で通信の監視や変更を行うことはできません。MACsecをセキュリティグループタグ(SGT)と組み合わせて使用すると、フレームのペイロードに含まれるデータとともにタグが保護されます。
MACsecは、暗号化キーにアウトオブバンド方式を使用して、有線ネットワーク上でMACレイヤの暗号化を提供します。
802.1AE(MACsec)では、フレームはIP MTUまたはフラグメンテーションに影響を与えることなく、Integrity Check Value(ICV)で暗号化および保護され、最小L2 MTUへの影響は40バイト(ベビージャイアントフレーム未満)です。
イーサネットは、プライベートLANトランスポートを超えて、さまざまなWANまたはMANトランスポートオプションを含むように進化しました。WAN MACSECは、AES 128または256ビットを使用して、ポイントツーポイントまたはポイントツーマルチポイントのレイヤ2イーサネットWANサービス全体でエンドツーエンドの暗号化を提供します。
WAN MACsecは(LAN)MACsecに基づいているため、IPsecとは別の名前になりますが、以前は利用できなかった追加機能がいくつか提供されています。
サービスプロバイダーがMACsec ethertypeをサポートしておらず、タグが暗号化されている場合にL2サービスを区別できない可能性があるため、WAN MACSECは802.1Qヘッダー以降のすべてのフレームを暗号化します。
新しい拡張機能の1つに、802.1Q Tags in the Clear(別名ClearTag)があります。 この機能拡張により、802.1Qタグを暗号化されたMACsecヘッダーの外部に公開する機能が有効になります。このフィールドを公開すると、MACsecを使用した複数の設計オプションが提供されます。また、パブリックキャリアイーサネットトランスポートプロバイダーでは、特定のトランスポートサービスを活用するために必要です。
MKA機能のサポートにより、サービスプロバイダーがサービスの多重化を提供できるように、VLANタグ(802.1Qタグ)などのトンネリング情報がクリアテキストで提供されます。これにより、1つの物理インターフェイス上に複数のポイントツーポイントサービスまたはマルチポイントサービスを共存させ、現在表示されているVLAN IDに基づいて差別化できます。
サービスの多重化に加えて、クリアテキストのVLANタグにより、サービスプロバイダーは、802.1Qタグの一部として認識されるようになった802.1P(CoS)フィールドに基づいて、SPネットワーク上の暗号化されたイーサネットパケットにQuality of Service(QoS)を提供することもできます。
MKA | IEEE 802.1XREV-2010 - Key Agreement Protocolで定義されているMACSec Key Agreement。MACSecピアの検出とキーのネゴシエーションに使用します。 |
MSK | EAP交換中に生成されるマスターセッションキー。サプリカントと認証サーバはMSKを使用してCAKを生成します |
CAK | 接続アソシエーションキーはMSKから取得されます。は、MACSecに使用される他のすべてのキーを生成するために使用される長寿命のマスターキーです。 |
CKN | Connectivity Association Key Name(接続アソシエーションキー名):CAKを識別します。 |
サック | セキュアなアソシエーションキー:CAKから取得され、サプリカントとスイッチが特定のセッションのトラフィックを暗号化するために使用するキーです。 |
KS | キーサーバの役割:
|
ケク | キー暗号化キー:MACsecキー(SAK)を保護するために使用されます。 |
MKAは、WAN MACsecで使用されるコントロールプレーンメカニズムです。IEEE Std 802.1Xで規定されており、相互に認証されたMACsecピアと次のアクションを検出します。
設定済みのキーサーバの優先度(最低)に基づいて、1つのメンバがキーサーバとして選出されます。KSの優先度がピア間で同じ場合は、最低のSCIが優先されます。
KSがSAKを生成するのは、可能性のあるすべてのピアが有効になり、少なくとも1つのライブピアが存在する場合だけです。MKA PDUまたはMKPDUを使用して、使用されるSAKと暗号を他の参加者に暗号化形式で配布します。
参加者は、SAKによって送信された暗号を確認し、サポートされている場合は、すべてのMKPDUでその暗号を使用して最新のキーを示してインストールします。サポートされていない場合は、SAKを拒否します
3ハートビート(各ハートビートはデフォルトで2秒)後に参加者からMKPDUを受信しないと、ピアはライブピアリストから削除されます。たとえば、クライアントが切断された場合、クライアントから最後のMKPDUを受信してから3ハートビートが経過するまで、スイッチの参加者はMKAの操作を続行します。
このプロセスでは、暗号化キーを駆動する方法が2つあります。
事前共有キーを使用する場合は、CAK=PSKおよびCKNを手動で入力する必要があります。キーライフタイムについては、キーのロールオーバーがあり、キー再生成の間にオーバーラップしていることを確認して、次のことを行います。
設定例:
key chain M_Key macsec key 01 cryptographic-algorithm aes-128-cmac key-string 12345678901234567890123456789001 lifetime 12:59:59 Oct 1 2023 duration 5000 key 02 cryptographic-algorithm aes-128-cmac key-string 12345678901234567890123456789002 lifetime 14:00:00 Oct 1 2023 16:15:00 Oct 1 2023 key 03 cryptographic-algorithm aes-128-cmac key-string 12345678901234567890123456789003 lifetime 16:15:00 Oct 1 2023 17:15:00 Oct 1 2023 key 04 cryptographic-algorithm aes-128-cmac key-string 12345678901234567890123456789012 lifetime 17:00:00 Oct 1 2023 infinite
太字で示されている箇所は、次のとおりです。
M_Key:キーチェーン名。
キー01:接続関連キー名(CKNと同じ)。
aes-128-cmac:MKA認証暗号。
12345678901234567890123456789012:接続アソシエーションキー(CAK)。
ポリシーの定義:
mka policy example macsec-cipher-suite gcm-aes-256
どこから? gcm-aes-256は、セキュアなアソシエーションキー(SAK)を導出するための暗号スイートを指します。
注:これは基本的なポリシー設定であり、confidentiality-offset、sak-rekey、include-icv-indicatorなどのより多くのオプションを使用できますが、実装によって異なります。
Interface:
interface TenGigabitEthernet0/1/2 mtu 2000 ip address 198.51.100.1 255.255.255.0 ip mtu 1468 eapol destination-address broadcast-address mka policy example mka pre-shared-key key-chain M_Key macsec end
注:mkaポリシーが設定または適用されていない場合、デフォルトポリシーが有効になり、show mka default-policy detailで確認できます。
EAP方式を使用する場合、すべてのキーはマスターセッションキー(MSK)から生成されます。 IEEE 802.1X Extensible Authentication Protocol(EAP)フレームワークを使用すると、MKAはデバイス間でEAPoL-MKAフレームを交換します。EAPoLフレームのイーサタイプは0x888Eで、EAPOLプロトコルデータユニット(PDU)内のパケット本文はMACsec Key Agreement PDU(MKPDU)と呼ばれます。これらのEAPoLフレームには、送信側のCKN、キーサーバプライオリティ、およびMACsec機能が含まれています。
注:デフォルトでは、スイッチはEAPoL-MKAフレームを処理しますが、転送しません。
証明書ベースのMACsec暗号化の設定例
証明書の登録(認証局が必要):
crypto pki trustpoint EXAMPLE-CA enrollment terminal subject-name CN=ASR1000@user.example, C=IN, ST=KA, OU=ENG,O=Example revocation-check none rsakeypair mkaioscarsa storage nvram:
crypto pki authenticate EXAMPLE-CA
必要な802.1x認証とAAA設定:
aaa new-model dot1x system-auth-control radius server ISE address ipv4 auth-port 1645 acct-port 1646 automate-tester username dummy key dummy123 radius-server deadtime 2 ! aaa group server radius ISEGRP server name ISE ! aaa authentication dot1x default group ISEGRP aaa authorization network default group ISEGRP
EAP-TLSプロファイルおよび802.1Xクレデンシャル:
eap profile EAPTLS-PROF-IOSCA method tls pki-trustpoint EXAMPLE-CA ! dot1x credentials EAPTLSCRED-IOSCA username asr1000@user.example pki-trustpoint EXAMPLE-CA !
Interface:
interface TenGigabitEthernet0/1/2 macsec network-link authentication periodic authentication timer reauthenticate access-session host-mode multi-host access-session closed access-session port-control auto dot1x pae both dot1x credentials EAPTLSCRED-IOSCA dot1x supplicant eap profile EAPTLS-PROF-IOSCA service-policy type control subscriber DOT1X_POLICY_RADIUS
プラットフォームに応じて適切な設定と実装サポートを確認します。キーとパラメータが一致している必要があります。次に、設定に問題があるかどうかを特定する一般的なログをいくつか示します。
%MKA-3-INVALID_MACSEC_CAPABILITY : Terminating MKA Session because no peers had the required MACsec Capability %s, Local-TxSCI %s, Peer-RxSCI %s, Audit-SessionID %s, CKN %s
ピアのハードウェアのMACsec機能を確認するか、インターフェイスのMACsec設定を変更してMACsec機能の要件を下げます。
%MKA-3-INVALID_PARAM_SET : %s, Local-TxSCI %s, Peer-RxSCI %s, Audit-SessionID %s
設定やプラットフォームの異なるデフォルト設定に基づいて、ルータが予期するかしないいくつかのオプションのパラメータがあります。設定に含めるか、または廃棄してください。
%MKA-4-MKA_MACSEC_CIPHER_MISMATCH: Lower/Higher strength MKA-cipher than macsec-cipher for RxSCI %s, AuditSessionID , CKN %s
ポリシー暗号スイートに設定の不一致があるため、適切に一致していることを確認します。
%MKA-3-MKPDU_VALIDATE_FAILURE : MKPDU validation failed for Local-TxSCI %s, Peer-RxSCI %s, Audit-SessionID %s, CKN %s
MKPDUが次の検証チェックの1つ以上に失敗しました:
設定が完了すると、%MKA-5-SESSION_STARTメッセージが表示されますが、セッションが起動するかどうかを確認する必要があります。開始に適したコマンドは、show mka sessions [interface interface_name]です。
Router1#show mka sessions Total MKA Sessions....... 1 Secured Sessions... 1 Pending Sessions... 0 ==================================================================================================== Interface Local-TxSCI Policy-Name Inherited Key-Server Port-ID Peer-RxSCI MACsec-Peers Status CKN ==================================================================================================== Te0/1/2 40b5.c133.0e8a/0012 Example NO NO 18 40b5.c133.020a/0012 1 Secured 01
Statusはコントロールプレーンセッションを示します。SecuredはRxおよびTx SAKがインストールされていることを示します。インストールされていない場合は、Not Securedとして表示されます。
%MKA-5-SESSION_UNSECURED : MKA Session was not secured for Local-TxSCI %s, Peer-RxSCI %s, Audit-SessionID %s, CKN %s
これは、MACsecでのSecure Channel(SC)の確立とSecure Associations(SA;セキュアアソシエーション)のインストールに先立って、MACsecサポートがないこと、無効なMACsec設定、またはローカルまたはピア側での他のMKA障害が原因です。show mka session [interface interface_name] detailの詳細については、detailコマンドを使用できます。
Router1#show mka sessions detail MKA Detailed Status for MKA Session =================================== Status: SECURED - Secured MKA Session with MACsec Local Tx-SCI............. 40b5.c133.0e8a/0012 Interface MAC Address.... 40b5.c133.0e8a MKA Port Identifier...... 18 Interface Name........... TenGigabitEthernet0/1/2 Audit Session ID......... CAK Name (CKN)........... 01 Member Identifier (MI)... DC5F7E3E38F4210925AAC8CA Message Number (MN)...... 14462 EAP Role................. NA Key Server............... NO MKA Cipher Suite......... AES-128-CMAC Latest SAK Status........ Rx & Tx Latest SAK AN............ 0 Latest SAK KI (KN)....... 272DA12A009CD0A3D313FADF00000001 (1) Old SAK Status........... FIRST-SAK Old SAK AN............... 0 Old SAK KI (KN).......... FIRST-SAK (0) SAK Transmit Wait Time... 0s (Not waiting for any peers to respond) SAK Retire Time.......... 0s (No Old SAK to retire) SAK Rekey Time........... 0s (SAK Rekey interval not applicable) MKA Policy Name.......... Example Key Server Priority...... 2 Delay Protection......... NO Delay Protection Timer.......... 0s (Not enabled) Confidentiality Offset... 0 Algorithm Agility........ 80C201 SAK Rekey On Live Peer Loss........ NO Send Secure Announcement.. DISABLED SCI Based SSCI Computation.... NO SAK Cipher Suite......... 0080C20001000002 (GCM-AES-256) MACsec Capability........ 3 (MACsec Integrity, Confidentiality, & Offset) MACsec Desired........... YES # of MACsec Capable Live Peers............ 1 # of MACsec Capable Live Peers Responded.. 0 Live Peers List: MI MN Rx-SCI (Peer) KS RxSA SSCI Priority Installed --------------------------------------------------------------------------------------- 272DA12A009CD0A3D313FADF 14712 40b5.c133.020a/0012 1 YES 0 Potential Peers List: MI MN Rx-SCI (Peer) KS RxSA SSCI Priority Installed ---------------------------------------------------------------------------------------
状況をよりよく理解するために、強調表示されているピアと関連データのSAK情報を探します。異なるSAKが設定されている場合は、使用されているキーとライフタイムまたは設定されているSAKキー再生成オプションを調べます。事前共有キーが使用されている場合は、show mka keychainsを使用できます。
Router1#show mka keychains MKA PSK Keychain(s) Summary... Keychain Latest CKN Interface(s) Name Latest CAK Applied ===============================================================================================
Master_Key 01 Te0/1/2 <HIDDEN>
CAKは表示されませんが、キーチェーン名とCKNを確認できます。
セッションは確立されているが、フラップまたは断続的なトラフィックフローが発生する場合は、MKPDUがピア間で正しくフローしているかどうかを確認する必要があります。タイムアウトが発生している場合は、次のメッセージを確認できます。
%MKA-4-KEEPALIVE_TIMEOUT : Keepalive Timeout for Local-TxSCI %s, Peer-RxSCI %s, Audit-SessionID %s, CKN %s
ピアが1つの場合、MKAセッションが終了します。複数のピアがあり、MKAが6秒以上いずれかのピアからMKPDUを受信しなかった場合、Live PeerはLive Peersリストから削除されます。show mka statistics [interface interface_name]から始めることができます。
Router1#show mka statistics interface TenGigabitEthernet0/1/2 MKA Statistics for Session ========================== Reauthentication Attempts.. 0 CA Statistics Pairwise CAKs Derived... 0 Pairwise CAK Rekeys..... 0 Group CAKs Generated.... 0 Group CAKs Received..... 0 SA Statistics SAKs Generated.......... 0 SAKs Rekeyed............ 0 SAKs Received........... 1 SAK Responses Received.. 0 MKPDU Statistics MKPDUs Validated & Rx... 11647 "Distributed SAK".. 1 "Distributed CAK".. 0 MKPDUs Transmitted...... 11648 "Distributed SAK".. 0 "Distributed CAK".. 0
送信および受信されるMKPDUは、1つのピアに対して同じ番号を持つ必要があります。RxとTxの両端で増加することを確認し、問題のある方向を判別または導きます。差異がある場合は、debug mka linksec-interface framesの両端を有効にできます。
*Sep 20 21:14:10.803: MKA-LLI-MKPDU: Received CKN length (2 bytes) from Peer with CKN 01 *Sep 20 21:14:10.803: MKA-LLI-MKPDU: MKPDU Received: Interface: [Te0/1/2 : 18] Peer MAC: 40:B5:C1:33:02:0A, with CK *Sep 20 21:14:12.101: MKA-LLI-MKPDU: MKPDU transmitted: Interface [Te0/1/2: 18] with CKN 01 *Sep 20 21:14:12.803: MKA-LLI-MKPDU: Received CKN length (2 bytes) from Peer with CKN 01 *Sep 20 21:14:12.803: MKA-LLI-MKPDU: MKPDU Received: Interface: [Te0/1/2 : 18] Peer MAC: 40:B5:C1:33:02:0A, with CKN 01
MKPDUを受信していない場合は、着信インターフェイスエラーまたはドロップ、ピアインターフェイスのステータス、およびmkaセッションを探します。両方のルータが送信しているが受信していない場合、MKPDUはメディアで失われ、正しい転送のために中間デバイスをチェックする必要があります。
MKPDUを送信していない場合は、物理インターフェイスの状態(回線およびエラー/ドロップ)と設定を確認します。コントロールプレーンレベルでこれらのパケットを生成しているかどうかを調べます。FIAトレースとEmbedded Packet Capture(EPC)はこの目的で信頼できるツールです。「Cisco IOS XEデータパスパケットトレース機能によるトラブルシューティング」を参照してください。
debug mka eventsを使用して、次のステップの指針となる理由を探すことができます。
注:debug mkaおよびdebug mka diagnosticsは、ルータ上でコントロールプレーンの問題を引き起こす可能性があるステートマシンと非常に詳細な情報を示すため、注意して使用してください。
セッションがセキュアで安定しているが、トラフィックが流れない場合は、両方のピアを送信する暗号化されたトラフィックを確認します。
Router1#show macsec statistics interface TenGigabitEthernet 0/1/2 MACsec Statistics for TenGigabitEthernet0/1/2 SecY Counters Ingress Untag Pkts: 0 Ingress No Tag Pkts: 0 Ingress Bad Tag Pkts: 0 Ingress Unknown SCI Pkts: 0 Ingress No SCI Pkts: 0 Ingress Overrun Pkts: 0 Ingress Validated Octets: 0 Ingress Decrypted Octets: 98020 Egress Untag Pkts: 0 Egress Too Long Pkts: 0 Egress Protected Octets: 0 Egress Encrypted Octets: 98012 Controlled Port Counters IF In Octets: 595380 IF In Packets: 5245 IF In Discard: 0 IF In Errors: 0 IF Out Octets: 596080 IF Out Packets: 5254 IF Out Errors: 0 Transmit SC Counters (SCI: 40B5C1330E8B0013) Out Pkts Protected: 0 Out Pkts Encrypted: 970 Transmit SA Counters (AN 0) Out Pkts Protected: 0 Out Pkts Encrypted: 970 Receive SA Counters (SCI: 40B5C133020B0013 AN 0) In Pkts Unchecked: 0 In Pkts Delayed: 0 In Pkts OK: 967 In Pkts Invalid: 0 In Pkts Not Valid: 0 In Pkts Not using SA: 0 In Pkts Unused SA: 0 In Pkts Late: 0
SecYカウンタは物理インターフェイス上の現在のパケットですが、その他のカウンタはTx Secure Channelに関連しています。つまり、パケットが暗号化されて送信されていることを意味し、Rx Secured Associationはインターフェイスで受信された有効なパケットを意味します。
debug mka errorsやdebug mka packetsなどのその他のデバッグは、問題の特定に役立ちます。大量のロギングを引き起こす可能性があるため、この最後のデバッグは予防策として使用してください。
改定 | 発行日 | コメント |
---|---|---|
1.0 |
11-Oct-2023 |
初版 |