Konfigurieren erweiterter MACsec-Funktionen
Media Access Control Security (MACsec) ist eine branchenübliche Sicherheitstechnologie, die sichere Kommunikation für nahezu alle Arten von Datenverkehr über Ethernet-Verbindungen bietet. MACsec bietet Punkt-zu-Punkt-Sicherheit auf Ethernet-Verbindungen zwischen direkt verbundenen Knoten und ist in der Lage, die meisten Sicherheitsbedrohungen zu erkennen und zu verhindern, einschließlich Denial-of-Service, Intrusion, Man-in-the-Middle, Masquerading, passives Abhören und Playback-Angriffe. MACsec ist in IEEE 802.1AE standardisiert.
Konfigurieren von Verschlüsselungsoptionen
Verschlüsselungsalgorithmus zuweisen
Sie können den gesamten Datenverkehr, der die Schnittstelle betritt oder verlässt, mit einem der folgenden MACsec-Verschlüsselungsalgorithmen verschlüsseln:
-
gcm-aes-128 – GCM-AES-128 Cipher Suite ohne erweiterten XPN-Modus (Packet Numbering)
-
gcm-aes-256 – GCM-AES-256 Cipher Suite ohne XPN
-
gcm-aes-xpn-128 – GCM-AES-XPN_128 Cipher Suite mit XPN-Modus
-
gcm-aes-xpn-256 – GCM-AES-XPN_256 Cipher Suite mit XPN-Modus
Wenn die MACsec-Verschlüsselung aktiviert ist und kein Verschlüsselungsalgorithmus angegeben ist, wird der Standard-Verschlüsselungsalgorithmus (gcm-aes-128) ohne XPN-Modus verwendet.
Wir empfehlen dringend, XPN bei der Verwendung von MACsec auf 40G- und 100G-Verbindungen zu verwenden.
-
Die Verschlüsselungsalgorithmen mit XPN-Modus werden auf MPC7E-10G-Routern der MX-Serie nicht unterstützt.
-
Nur GCM-AES-128 wird auf MIC-3D-20GE-SFP-E und MIC-3D-20GE-SFP-EH unterstützt.
[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)
Wenn Sie beispielsweise den GCM-AES-XPN-128-Algorithmus in der Konnektivitätszuordnung mit folgendem Namen ca1
verschlüsseln möchten:
[edit security macsec connectivity-association ca1] user@host# set cipher-suite gcm-aes-xpn-128
Verschlüsselung deaktivieren
Das Standardverhalten von MACsec besteht in der Verschlüsselung des Datenverkehrs, der über den Link übertragen wird. Sie können die Verschlüsselung deaktivieren, wenn Sie MACsec nur zur Authentifizierung eines Endpunkts und zur Gewährleistung der Integrität der Verbindung verwenden möchten. Dies wird als Integritätsmodus bezeichnet. Der integrity-only-Modus ist nützlich, wenn Die unverschlüsselte Nutzlast sichtbar sein muss, wenn MACsec über mehrere Hops übertragen wird.
Wenn Sie die Verschlüsselung deaktivieren, wird der Datenverkehr im Klartext über den Ethernet-Link weitergeleitet. Sie können unverschlüsselte Daten im Ethernet-Frame anzeigen, die über den Link übertragen werden, wenn Sie ihn überwachen. Der MACsec-Header wird jedoch weiterhin auf den Frame angewendet, und alle MACsec-Datenintegritätsprüfungen werden an beiden Enden des Links ausgeführt, um sicherzustellen, dass der an der Verbindung gesendete oder empfangene Datenverkehr nicht manipuliert wurde und keine Sicherheitsbedrohung darstellt.
Um die Verschlüsselung zu deaktivieren, verwenden Sie den folgenden Befehl:
[edit security macsec connectivity-association connectivity-association-name] user@host# set no-encryption
Versatz konfigurieren
Der Offset bietet eine Option zwischen vollständiger Encyption und keiner Verschlüsselung. Konfigurieren Sie einen Offset, um eine festgelegte Anzahl von Bytes der Nutzlast offenzulegen und den Rest zu verschlüsseln. Dies kann zum Zwischenlastenausgleich oder zur Lastverteilung am Host, im Fall von Switch-to-Host-Verbindungen, verwendet werden.
Der Standard-Offset ist 0. Der gesamte Datenverkehr in der Konnektivitätsverbindung wird verschlüsselt, wenn die Verschlüsselung aktiviert ist, und ein offset
wird nicht festgelegt.
Wenn der Offset auf 30 festgelegt ist, werden der IPv4-Header und der TCP/UDP-Header unverschlüsselt, während der Rest des Datenverkehrs verschlüsselt wird. Wenn der Offset auf 50 festgelegt ist, werden der IPv6-Header und der TCP/UDP-Header unverschlüsselt, während der Rest des Datenverkehrs verschlüsselt wird.
Sie würden normalerweise Datenverkehr mit den ersten 30 oder 50 nicht verschlüsselten Oktetten weiterleiten, wenn eine Funktion die Daten in den Oktetten sehen musste, um eine Funktion auszuführen. Ansonsten bevorzugen Sie die Verschlüsselung der verbleibenden Daten in den Bildern, die über den Link übertragen werden. Insbesondere Load Balancing-Funktionen müssen in der Regel die IP- und TCP/UDP-Header in den ersten 30 oder 50 Oktetten einsehen, um den Datenverkehr ordnungsgemäß zu lasten.
Um einen Offset zu konfigurieren, verwenden Sie den folgenden Befehl:
[edit security macsec connectivity-association connectivity-association-name] user@host# set offset (0 | 30 | 50)
Wenn Sie z. B. den Versatz in der Konnektivitätszuordnung auf ca1
30 festlegen möchten:
[edit security macsec connectivity-association ca1] user@host# set offset 30
Konfigurieren des MACsec Key Agreement-Protokolls im offenen Fail-Modus
Sie können den offenen Fehlermodus für MACsec konfigurieren, um zu verhindern, dass der Datenverkehr abgebrochen wird, wenn die MKA-Sitzung inaktiv ist. Dies wird für Service Provider empfohlen, die die Netzwerkverfügbarkeit über informationssicherheit priorisieren.
MACsec behält die Datenintegrität bei, indem ein MACsec-Header an Ethernet-Frames angehängt wird, die über eine MACsec-gesicherte Verbindung übertragen werden. Wenn die MKA-Sitzung aktiv ist, ist der Datenverkehr auf der Verbindung nur für Frames mit einem MACsec-Header zulässig. Wenn die MKA-Sitzung inaktiv ist, erhalten Frames keinen MACsec-Header. Der gesamte eingehende und ausgehende Datenverkehr wird abgebrochen. Die einzige Ausnahme ist DER EAPoL-Datenverkehr.
Sie können den "Fail Open Mode" mithilfe der should-secure
CLI-Anweisung konfigurieren. Dies ermöglicht den Datenverkehr über die MACsec-gesicherte Verbindung, auch wenn die MKA-Sitzung inaktiv ist. Der Datenverkehr wird ohne MACsec-Header als Klartext übertragen.
So konfigurieren Sie das MKA-Protokoll im offenen Fail-Modus:
[edit security macsec connectivity-association connectivity-association-name] user@host# set mka should-secure;
Replay-Schutz konfigurieren
MACsec weist jedem Paket auf einer MACsec-gesicherten Verbindung eine ID-Nummer zu. Wenn der Wiedergabeschutz aktiviert ist, überprüft die Empfangsschnittstelle die ID-Nummer aller Pakete, die über die MACsec-gesicherte Verbindung übertragen wurden. Wenn ein Paket aus der Sequenz eintrifft und die Differenz zwischen den Paketnummern die Fenstergröße des Wiedergabeschutzes überschreitet, wird das Paket an der Empfangsschnittstelle abgeschrieben.
Wenn beispielsweise die Größe des Replay-Schutzfensters auf fünf festgelegt ist und ein Paket, dem die ID 1006 zugewiesen wurde, unmittelbar nach dem 1000-Paket auf dem empfangenden Link eintrifft, wird das Paket mit der ID 1006 abgebrochen, weil es außerhalb des Wiedergabeschutzfensters fällt.
Replay-Schutz ist nützlich, um Man-in-the-Middle-Angriffe zu bekämpfen. Ein Paket, das von einem Man-in-the-Middle-Angreifer auf der Ethernet-Verbindung wiedergegeben wird, kommt unsequenzlos auf dem empfangenden Link an, sodass der Wiedergabeschutz dafür sorgt, dass das wiedergegebene Paket abgebrochen wird, anstatt es über das Netzwerk weiterzuleiten.
Sie können verlangen, dass alle Pakete in der Reihenfolge ankommen, indem Sie die Größe des Wiedergabefensters auf 0 festlegen. Der Replay-Schutz sollte nicht aktiviert sein, wenn erwartet wird, dass Pakete außer Ordnung kommen.
Verwenden Sie zum Aktivieren des Replay-Schutzes den folgenden Befehl:
[edit security macsec connectivity-association connectivity-association-name] user@host# set replay-protect replay-window-size number-of-packets
Um beispielsweise einen Wiedergabeschutz mit einer Fenstergröße von fünf bei Der Konnektivitätszuordnung ca1
zu aktivieren:
[edit security macsec connectivity-association ca1] user@host# set replay-protect replay-window-size 5
Konfigurieren von Bounded Delay Protection
Sie können den Schutz vor begrenzter Verzögerung konfigurieren, um sicherzustellen, dass ein MACsec-Frame (Media Access Control Security) nach einer Verzögerung von zwei Sekunden oder mehr nicht geliefert wird. Dadurch wird sichergestellt, dass eine Verzögerung von MACsec-Frames, die sich aus einem Man-in-the-Middle-Angriff ergeben, nicht unentdeckt bleibt.
Wenn Sie den Begrenzungsverzögerungsschutz konfigurieren, müssen Sie auch den Wiedergabeschutz konfigurieren. Dies ist das Fenster, in dem Duplizierungs- und Wiedergabepakete zugelassen werden. Die beschränkte Verzögerung hat Vorrang vor Replay-Schutz. Sie können die Effektivität des Begrenzungsverzögerungsschutzes erhöhen, indem Sie einen niedrigeren Wert für die Fenstergröße konfigurieren.
Bevor Sie den Begrenzungsverzögerungsschutz konfigurieren, müssen Sie den Wiedergabeschutz konfigurieren. Siehe Konfigurieren von Replay-Schutz.
Verwenden Sie den folgenden Befehl, um den Schutz vor begrenzter Verzögerung zu konfigurieren:
[edit security macsec connectivity-association connectivity-association-name mka] user@host# set bounded-delay
Die beschränkte Verzögerung wirkt sich auf die CPU-Auslastung aus, was die Leistung beeinträchtigen kann. Wir empfehlen nur die Konfiguration begrenzter Verzögerungen an Schnittstellen, an denen sie unbedingt erforderlich ist.
Konfigurieren von MACsec mit Fallback PSK
Wenn Sie MACsec mithilfe des statischen CAK-Sicherheitsmodus aktivieren, wird ein Preshared Key (PSK) zwischen den Geräten an jedem Ende der Point-to-Point-Ethernet-Verbindung ausgetauscht. Das PSK umfasst einen Verbindungsverbandsnamen (CKN) und einen Connectivity Association Key (CAK). Das PSK muss geräteübergreifend übereinstimmen, damit eine MACsec-Sitzung eingerichtet werden kann. Wenn es zu einem Mismatch kommt, wird die Sitzung nicht eingerichtet und alle Pakete werden abgebrochen.
Sie können ein Fallback-PSK konfigurieren, um Datenverkehrsverluste zu verhindern, falls der primäre PSK keine Verbindung herstellt. Das Fallback-PSK wird verwendet, wenn primärer Schlüssel nicht mit der anfänglichen MACsec-Erkennung übereinstimmt.
Wenn eine MACsec-Sitzung bereits eingerichtet wurde und der primäre PSK auf einem Gerät geändert wird, aber nicht auf dem anderen, wird die daraus resultierende Mismatch mithilfe des älteren primären PSK gelöst. Der ältere primäre PSK ist ein temporärer Schlüssel, der als vorhergehendes PSK bekannt ist.
Mit der Konfiguration von Fallback PSK kann eine MACsec-Sitzung mit einem der folgenden Schlüssel gesichert werden:
Primär-PSK (konfigurierbar) – Der bevorzugte Schlüssel.
Fallback PSK (konfigurierbar): Wird verwendet, wenn der primäre PSK keine MACsec-Sitzung einrichten kann.
Vor PSK (nicht konfigurierbar): Wenn ein neuer primärer PSK konfiguriert ist, wird der alte primäre PSK zum vorherigen PSK.
Der Status des CAK für jeden Schlüssel kann entweder live, aktiv oder in Bearbeitung sein. Eine Beschreibung jedes Status finden Sie in Tabelle 1 .
CAK Statusbeschreibung | |
---|---|
Live |
|
Aktiv |
|
In Bearbeitung |
|
Eine Mismatch von Schlüsseln tritt auf, wenn ein neuer PSK auf einer Seite des MACsec-Links konfiguriert ist und die andere Seite entweder falsch konfiguriert oder nicht mit dem neuen Schlüssel konfiguriert ist. Das Fallback-Verhalten hängt davon ab, welche Komponenten des PSK geändert werden (CAK, CKN oder beides). Jedes Mismatch-Szenario wird unten beschrieben:
Wenn der CAK geändert wird und das CKN gleich bleibt, wird die vorhandene MACsec-Sitzung getrennt. Es wird eine neue Sitzung mit dem alten CKN- und dem neuen CAK-Wert eingeleitet.
Wenn das CKN geändert wird und der CAK gleich bleibt, wird das alte CKN, gekoppelt mit dem vorhandenen CAK, zum vorherigen PSK, und die Sitzung wird mit vorherigem PSK live sein. Mit dem neu erstellten CKN und dem CAK wird eine neue Sitzung eingeleitet, die im Gange ist, bis der Peerknoten auch mit demselben CKN konfiguriert ist.
Wenn sowohl CAK als auch CKN geändert werden, wird das alte CAK+CKN-Paar zum vorherigen PSK, und die Sitzung wird mit dem vorherigen PSK live. Eine neue Sitzung wird mit dem neuen CAK+CKN-Paar eingeleitet, das in Bearbeitung ist, bis der Peer-Knoten auch mit demselben CAK+CKN konfiguriert ist.
Der vorhergehende PSK hat Vorrang vor dem Fallback-PSK. Wenn die Sitzung mit dem vorhergehenden PSK live ist, wird der Fallback-PSK nicht wirksam. Wenn Sie möchten, dass die Sitzung mit dem Fallback PSK live ist, müssen Sie die disable-preceding-key
Anweisung konfigurieren.
Fallback PSK wird für preshared Keychains unterstützt. Sie können ein Fallback-PSK zusammen mit einem Preshared-Schlüssel oder mit einer Preshared-Schlüsselkette konfigurieren. Preshared Key und Preshared Keychain schließen sich gegenseitig aus.
Wenn nur ein Fallback-PSK konfiguriert ist und kein primäres PSK vorhanden ist, versuchen beide Geräte, eine Sitzung mit dem Fallback-PSK einzurichten. Wenn die Sitzung angezeigt wird, wird der aus dem Fallback PSK abgeleitete SAK für die Datenverkehrverschlüsselung verwendet. Wenn die etablierte Sitzung unterbrochen wird, versuchen die Geräte weiterhin, die Sitzung wiederhergestellt zu haben, und der Datenverkehr wird unterbrochen, bis die Sitzung wieder hergestellt wird.
Das Fallback-PSK wird als Teil der Konnektivitätszuordnung (Connectivity Association, CA) konfiguriert. Die CA kann global für alle Schnittstellen oder auf Schnittstellenbasis konfiguriert werden, sodass unterschiedliche Fallback-Schlüssel für verschiedene Schnittstellen möglich sind.
Um das Fallback-PSK zu konfigurieren, konfigurieren Sie CAK und CKN als Teil der CA:
[edit security macsec connectivity-association ca-name] user@switch# set fallback-key cak key user@switch# set fallback-key ckn key-name
Für die Fallback-PSK-Konfiguration gelten die folgenden Einschränkungen:
Fallback CAK und CKN sollten nicht mit dem vorinstallierten Schlüssel CKN und CAK oder einem Schlüssel übereinstimmen, der in der Schlüsselkette unter derselben CA konfiguriert ist.
Die Konfiguration des Sicherheitsmodus muss vorhanden sein, um den Fallback-Schlüssel zu konfigurieren.
Die wichtigsten Längeneinschränkungen für die konfigurierte Cipher Suite gelten für Fallback CAK und CKN.