高度なMACsec機能の設定
メディアアクセス制御セキュリティ(MACsec)は、イーサネットリンク上のほぼすべてのタイプのトラフィックに安全な通信を提供する業界標準のセキュリティ技術です。MACsecは、直接接続されたノード間のイーサネットリンクにポイントツーポイントセキュリティを提供し、サービス拒否、侵入、中間者攻撃、マスカレード、受動的盗聴、プレイバック攻撃など、ほとんどのセキュリティ脅威を特定して防止することができます。MACsecはIEEE 802.1AEで標準化されています。
暗号化オプションの設定
暗号化アルゴリズムの割り当て
次のいずれかの MACsec 暗号化アルゴリズムを使用して、インターフェイスに出入りするすべてのトラフィックを暗号化できます。
-
gcm-aes-128—拡張パケット番号付け(XPN)モードを使用しない GCM-AES-128 暗号スイート
-
gcm-aes-256-GCM-AES-256 暗号スイート(XPN なし)
-
gcm-aes-xpn-128 — XPN モードを使用した GCM-AES-XPN_128暗号スイート
-
gcm-aes-xpn-256—GCM-AES-XPN_256 XPN モードを使用した暗号スイート
MACsec 暗号化が有効で、暗号化アルゴリズムが指定されていない場合、XPN モードなしのデフォルト(gcm-aes-128)暗号化アルゴリズムが使用されます。
40Gおよび100GリンクでMACsecを使用する場合は、XPNの使用を強くお勧めします。
-
XPN モードの暗号化アルゴリズムは、MX シリーズ MPC7E-10G ルーターではサポートされていません。
-
MIC-3D-20GE-SFP-E および MIC-3D-20GE-SFP-EH では、GCM-AES-128 のみがサポートされています。
[edit security macsec connectivity-association <varname>connectivity-association-name</varname>] user@host# set cipher-suite (gcm-aes-128 | gcm-aes-256 | gcm-aes-xpn-128 | gcm-aes-xpn-256)
例えば、GCM-AES-XPN-128 アルゴリズムを使用して、 という ca1
接続性アソシエーションで暗号化を行いたい場合:
[edit security macsec connectivity-association ca1] user@host# set cipher-suite gcm-aes-xpn-128
暗号化を無効にする
MACsecのデフォルトの動作は、リンクを通過するトラフィックを暗号化することです。MACsec を使用してエンドポイントの認証とリンクの整合性を保証する場合にのみ、暗号化を無効にすることができます。これは整合性のみのモードと呼ばれます。インテグリティのみモードは、複数のホップで MACsec を伝送する際に暗号化されていないペイロードを表示する必要がある場合に便利です。
暗号化を無効にすると、トラフィックはクリアテキストのイーサネットリンクを介して転送されます。監視時にリンクを通過するイーサネット フレーム内の暗号化されていないデータを表示できます。ただし、MACsec ヘッダーは引き続きフレームに適用され、すべての MACsec データ整合性チェックはリンクの両端で実行され、リンク上で送受信されたトラフィックが改ざんされていないか、セキュリティ上の脅威を表すものではないことを確認します。
暗号化を無効にするには、以下のコマンドを使用します。
[edit security macsec connectivity-association connectivity-association-name] user@host# set no-encryption
オフセットを設定する
オフセットは、完全な百科事典と暗号化なしの間のオプションを提供します。ペイロードのセットバイト数を公開し、残りのデータを暗号化するオフセットを設定します。これは、中間ロード バランシングや、ホスト間リンクの場合はホストでの負荷分散に使用できます。
デフォルトのオフセットは0です。暗号化が有効 offset
になっており、 が設定されていない場合、接続アソシエーション内のすべてのトラフィックが暗号化されます。
オフセットを 30 に設定すると、IPv4 ヘッダーと TCP/UDP ヘッダーは暗号化されず、残りのトラフィックは暗号化されません。オフセットを 50 に設定すると、IPv6 ヘッダーと TCP/UDP ヘッダーは暗号化されず、残りのトラフィックは暗号化されません。
通常、機能で機能を実行するためにオクテット内のデータを表示する必要がある場合は、暗号化されていない最初の30または50オクテットでトラフィックを転送しますが、それ以外の場合はリンクを通過するフレーム内の残りのデータを暗号化する方が好ましいです。特にロード バランシング機能は、トラフィックを正しくロード バランスするために、通常、最初の 30 または 50 オクテットの IP および TCP/UDP ヘッダーを確認する必要があります。
オフセットを設定するには、以下のコマンドを使用します。
[edit security macsec connectivity-association connectivity-association-name] user@host# set offset (0 | 30 | 50)
例えば、 という名前 ca1
の接続アソシエーションでオフセットを30に設定したい場合:
[edit security macsec connectivity-association ca1] user@host# set offset 30
フェイルオープンモードでのMACsecキー契約プロトコルの設定
MKAセッションが非アクティブな場合にトラフィックがドロップされるのを防ぐために、MACsecのフェイルオープンモードを設定することができます。これは、情報セキュリティよりもネットワークの可用性を優先するサービス プロバイダにお勧めです。
MACsecは、MACsecセキュアリンクで送信されたイーサネットフレームにMACsecヘッダーを追加することで、データの整合性を維持します。MKA セッションがアクティブな場合、MACsec ヘッダーを持つフレームに対してのみ、リンク上のトラフィックが許可されます。MKA セッションが非アクティブな場合、フレームは MACsec ヘッダーを受信しません。イングレスとエグレスの両方のすべてのトラフィックは破棄されます。唯一の例外は EAPoL トラフィックです。
CLI ステートメントを使用して、フェイル オープン モードを should-secure
設定できます。これにより、MKAセッションが非アクティブであっても、MACsecで保護されたリンク上のトラフィックが許可されます。トラフィックは、MACsec ヘッダーなしでクリアテキストで送信されます。
フェイルオープンモードでMKAプロトコルを設定するには:
[edit security macsec connectivity-association connectivity-association-name] user@host# set mka should-secure;
リプレイ保護の設定
MACsec は、MACsec で保護されたリンク上の各パケットに ID 番号を割り当てます。リプレイ保護が有効になっている場合、受信インターフェイスは MACsec 保護リンクを通過したすべてのパケットの ID 番号をチェックします。パケットが順序外に到着し、パケット番号の差がリプレイ保護ウィンドウサイズを超えた場合、受信インターフェイスはパケットをドロップします。
例えば、リプレイ保護ウィンドウサイズを5に設定し、1006のIDを割り当てたパケットが1000のIDを割り当てたパケットの直後に、受信リンクに到着した場合、ID 1006を持つパケットはリプレイ保護ウィンドウの外に落ちるので破棄されます。
リプレイ防御は中間者攻撃と戦うために便利です。中間者の攻撃者がイーサネット リンク上で再生したパケットは、受信側のリンクに順番外れで到着するため、リプレイ防御によって、ネットワークを介して転送されるのではなく、再生されたパケットをドロップするのに役立ちます。
リプレイウィンドウサイズを0に設定することで、すべてのパケットが順番に到着することを要求することができます。パケットが順不同で到着すると予想される場合、リプレイ保護を有効にしないでください。
リプレイ保護を有効にするには、次のコマンドを使用します。
[edit security macsec connectivity-association connectivity-association-name] user@host# set replay-protect replay-window-size number-of-packets
例えば、接続アソシエーション ca1
でウィンドウサイズ5でリプレイ保護を有効にするには:
[edit security macsec connectivity-association ca1] user@host# set replay-protect replay-window-size 5
制限付き遅延保護の設定
制限付き遅延保護を設定して、2秒以上の遅延後にメディアアクセス制御セキュリティ(MACsec)フレームが配信されないようにすることができます。これにより、中間者攻撃に起因するMACsecフレームの遅延が検出されないようになります。
制限付き遅延保護を設定する場合、リプレイ保護も設定する必要があります。これは、重複したパケットとリプレイパケットが許可されるウィンドウです。制限された遅延がリプレイ保護よりも優先されます。ウィンドウ サイズの値を小さく設定することで、制限付き遅延保護の有効性を高めることができます。
制限付き遅延保護を設定する前に、リプレイ保護を設定する必要があります。 リプレイ保護の設定を参照してください。
制限付き遅延保護を設定するには、以下のコマンドを使用します。
[edit security macsec connectivity-association connectivity-association-name mka] user@host# set bounded-delay
制限された遅延は、CPU の使用率に影響を与え、パフォーマンスの低下を招く可能性があります。絶対に必要なインターフェイスに限定された遅延のみを設定することをお勧めします。
フォールバック PSK による MACsec の設定
静的CAKセキュリティモードを使用してMACsecを有効にすると、ポイントツーポイントイーサネットリンクの各エンドにあるデバイス間で事前共有キー(PSK)が交換されます。PSKには、接続アソシエーション名(CKN)と接続アソシエーションキー(CAK)が含まれています。PSKは、MACsecセッションを確立するために、複数のデバイスで一致する必要があります。不一致がある場合、セッションは確立されず、すべてのパケットが破棄されます。
プライマリ PSK が接続を確立できない場合に備えて、フォールバック PSK を設定してトラフィックロスを防ぐことができます。初期 MACsec ネゴシエーションでプライマリ キーが一致しない場合、フォールバック PSK が使用されます。
MACsecセッションが既に確立されており、一方のデバイスでプライマリPSKが変更されていますが、もう一方では変更されていない場合、その結果の不一致は古いプライマリPSKを使用して解決されます。古いプライマリPSKは、前述のPSKと呼ばれる一時的なキーです。
フォールバック PSK が設定されている場合、MACsec セッションは次のいずれかのキーで保護できます。
プライマリ PSK(設定可能)— 優先鍵。
フォールバックPSK(設定可能)—プライマリPSKがMACsecセッションを確立できない場合に使用されます。
先行 PSK(設定不可)—新しいプライマリ PSK が設定されると、古いプライマリ PSK が先行 PSK になります。
各キーの CAK ステータスは、ライブ、アクティブ、または進行中のいずれかです。各ステータスの説明については、 表 1 を参照してください。
CAK ステータスの | 説明 |
---|---|
ライブ |
|
アクティブ |
|
進行中 |
|
新しい PSK が MACsec リンクの一方で設定され、もう一方の PSK が誤って設定されているか、新しい鍵で設定されていない場合、キーの不一致が発生します。フォールバック動作は、PSK のどのコンポーネントが変更されるか(CAK、CKN、またはその両方)によって異なります。各不一致のシナリオを以下に示します。
CAK が変更され、CKN が変わらない場合、既存の MACsec セッションは切断されます。新しいセッションは、古い CKN と新しい CAK 値で開始されます。
CKN が変更され、CAK が変わらない場合、既存の CAK とペアになっている古い CKN が先行 PSK となり、セッションは先行 PSK とライブになります。新しく作成された CKN と CAK で新しいセッションが開始されます。CAK は、ピア ノードも同じ CKN で設定されるまで進行中です。
CAK と CKN の両方が変更された場合、古い CAK+CKN ペアが先行 PSK となり、セッションは前の PSK と同じになります。新しいセッションは、新しい CAK+CKN ペアで開始されます。このペアは、ピア ノードも同じ CAK+CKN で設定されるまで進行中です。
前述の PSK はフォールバック PSK よりも優先されるため、セッションが前述の PSK と一緒に稼働している場合、フォールバック PSK は有効にはなりません。フォールバック PSK でセッションを稼働させたい場合は、 ステートメントを設定する disable-preceding-key
必要があります。
フォールバック PSK は、事前共有キーチェーンでサポートされています。フォールバック PSK は、事前共有キーや事前共有キーチェーンとともに設定できます。事前共有キーと事前共有キーチェーンは相互に排他的です。
フォールバック PSK のみが設定され、プライマリ PSK がない場合、両方のデバイスはフォールバック PSK とのセッションの確立を試みます。セッションが立ち上がると、フォールバックPSKから派生したSAKがデータトラフィックの暗号化に使用されます。確立されたセッションが壊れている場合、デバイスはセッションの再確立を試み続け、セッションが再確立されるまでトラフィックはドロップされます。
フォールバック PSK は、CA(接続アソシエーション)の一部として設定されています。CA は、すべてのインターフェイスに対して、またはインターフェイスごとにグローバルに設定でき、インターフェイスごとに異なるフォールバック キーを使用できます。
フォールバック PSK を設定するには、CA の一部として CAK と CKN を設定します。
[edit security macsec connectivity-association ca-name] user@switch# set fallback-key cak key user@switch# set fallback-key ckn key-name
フォールバック PSK 設定には、以下の制限が適用されます。
フォールバック CAK と CKN は、事前共有鍵 CKN と CAK、または同じ CA の下のキーがキーチェーンに設定されているとは一致しません。
フォールバック キーを構成するには、セキュリティ モードの設定が存在する必要があります。
構成された暗号スイートの鍵長制限は、フォールバック CAK と CKN に適用されます。