SA-Lebensdauern in IKEv2: weiche Schlüsselerneuerung, harte Ablaufzeit, getrennte Reauthentifizierung
Eine weiche Grenze startet den Austausch, eine harte Grenze setzt den alten Zustand außer Betrieb, und Nutzungsgrenzen können zuerst greifen. Keine davon wiederholt die Benutzerauthentifizierung.
Zeitgeber entscheiden, wann die Schlüssel eines Tunnels ersetzt werden, und die beiden beteiligten Schwellen werden oft als eine gelesen. Sie sind es nicht. Eine weiche Lebensdauer fordert den Peer auf, einen Ersatz aufzubauen, während die aktuelle Sicherheitsassoziation noch Datenverkehr trägt, und eine harte Lebensdauer ist die Frist, nach der die alte Assoziation verschwunden ist, gleich ob der Ersatz funktioniert hat. Dazwischen liegt ein Überlappungsfenster, das existiert, damit Pakete nicht in eine Lücke fallen.
Was eine Lebensdauer tatsächlich begrenzt
Eine IPsec-Sicherheitsassoziation ist ein Bündel kryptografischen Zustands: Schlüssel für eine Richtung, ein Sicherheitsparameterindex, ein Algorithmensatz und ein Selektor. Die Lebensdauer begrenzt, wie lange dieser Zustand verwendet werden darf, was begrenzt, wie viel Datenverkehr ein Schlüssel schützt. Sie ist eine Eindämmungsmaßnahme für den Schlüssel, keine Aussage darüber, wie lange eine Benutzersitzung dauern sollte.
IKE-Kontrollassoziationen haben eigene Schlüssel und eigene Lebensdauern, getrennt von den Kindassoziationen, die Daten tragen. Das ist die erste Stelle, an der Menschen zwei Zeitpläne verwechseln.
Weich startet den Austausch, hart beendet den alten Zustand
Wenn die weiche Schwelle näher rückt, leitet der Peer einen Austausch ein. Implementierungen greifen meist früh und randomisieren den Zeitpunkt, damit ein Headend mit Hunderten von Tunneln nicht alle auf einmal neu verschlüsselt. In IKEv2 ist der Austausch ein CREATE_CHILD_SA-Austausch mit frischen Nonces plus einem Diffie-Hellman-Austausch, wenn Perfect Forward Secrecy konfiguriert ist. Das Ergebnis ist ein neues Paar Assoziationen mit neuen Schlüsseln.
Die Überlappung zählt. Für kurze Zeit kann der Peer die alte und die neue Assoziation halten, und ein Mitschnitt kann zwei Sätze von Identifikatoren zeigen. Das ist der Mechanismus bei der Arbeit, kein Fehler.
Die harte Schwelle ist unerbittlich. Ist der Austausch bis dahin nicht abgeschlossen, muss die alte Assoziation außer Betrieb genommen werden, und Datenverkehr, der nur durch sie geschützt war, kommt zum Erliegen. Wiederholte fehlgeschlagene Schlüsselerneuerungen, die bis zur harten Ablaufzeit durchlaufen sind das operative Signal zum Nachforschen, denn der Tunnel wird in jedem Zyklus von einer Frist gestützt.
Nutzungsgrenzen können vor jeder Uhr greifen
Zeit ist nicht die einzige Grenze. Implementierungen können die Bytes oder Pakete begrenzen, die ein Schlüssel schützt, und ein ausgelasteter Tunnel erreicht eine Nutzungsgrenze lange vor einem mehrstündigen Zeitgeber. strongSwan bietet getrennte Einstellungen für Lebensdauer und Marge bei Zeit, Bytes und Paketen, was bedeutet, dass der effektive Erneuerungspunkt die zuerst eintreffende Schwelle ist, abzüglich der konfigurierten Marge.
Erneuert sich ein Tunnel viel häufiger, als seine konfigurierten Stunden nahelegen, prüfen Sie die Byte- und Paketgrenzen, bevor Sie die Uhr beschuldigen. Eine gesättigte Verbindung und eine im Leerlauf befindliche Verbindung mit denselben Zeiteinstellungen haben sichtbar unterschiedliche Erneuerungsraten, und nur eine von ihnen folgt dem Zeitgeber.
Jeder Peer setzt seine eigene Richtlinie durch
IKEv2 handelt keine einzige Lebensdauer aus, die beide Peers identisch anzeigen müssen. Jede Seite wendet ihre lokale Richtlinie an und kann den Austausch einleiten, wenn sich ihre eigene Grenze nähert, wie in RFC 7296 Abschnitt 2.8 beschrieben. Eine Abweichung zwischen den konfigurierten Stunden zweier Peers ist also nicht automatisch ein Defekt, obwohl stark unterschiedliche Werte Unruhe erzeugen können, wenn eine Seite ständig Zustand ersetzt, den die andere gerade installiert hat.
Koordination bedeutet kompatibles Verhalten: Überlappungsfenster, die lang genug für den Austausch sind, Margen, die Raum für Wiederholungen lassen, und Überwachung, die zeigt, welche Seite jede Erneuerung eingeleitet hat.
Schlüsselerneuerung ist keine Reauthentifizierung
Eine Schlüsselerneuerung frischt Schlüssel unter der bestehenden authentifizierten Beziehung auf. Eine Reauthentifizierung wiederholt die Identitätsprüfung, sei es ein Zertifikatsaustausch oder ein EAP-Gespräch. Beide laufen nach getrennten Zeitplänen, und eine erfolgreiche Erneuerung sagt nichts darüber, ob das Konto noch Zugang haben sollte.
Dieser Unterschied zählt für den Widerruf. Ein Konto deaktivieren, ein Zertifikat widerrufen oder eine Sitzung beenden sind Zugriffsentscheidungen, die eine ausdrückliche Richtlinie in der Implementierung brauchen; sie folgen nicht aus dem SA-Zeitgeber, und eine Schlüsselerneuerung kann munter für eine Identität weiterlaufen, der bereits alle Rechte entzogen wurden.
Was pro Tunnel zu erfassen ist
Protokollieren Sie, welche Assoziation die Erneuerung ausgelöst hat, die alten und neuen Identifikatoren, welche Schwelle gegriffen hat und ob der Austausch innerhalb der Überlappung abgeschlossen wurde. Diese vier Felder machen ein Erneuerungsproblem sichtbar, bevor es zum Ausfall wird, und sie unterscheiden eine aggressive Richtlinie von einer scheiternden.
Halten Sie den Zeitplan für die Zugriffsentfernung neben diesem Datensatz statt darin. Kryptografische Hygiene und Identitätsrichtlinie sind verschiedene Kontrollen, und ein Tunnel, der Schlüssel pünktlich rotiert, kann immer noch eine Sitzung halten, die niemand behalten wollte.