Application Layer Gateway für IPSec-Protokoll

Wenn die Kommunikation zwischen zwei Netzwerkgeräten (z. B. Client und Server) das IPSec-Protokoll verwendet, verwendet der IKE-Datenverkehr (der über UDP liegt) Portfelder, aber Encapsulating Security Payload (ESP) Datenverkehr nicht. Wenn ein NAT-Gerät auf dem Pfad zwei oder mehr Clients an demselben Ziel dieselbe NAT-IP-Adresse (aber unterschiedliche Ports) zuweist, kann das NAT-Gerät den Return ESP-Datenverkehr nicht unterscheiden und ordnungsgemäß weiterleiten. Daher schlägt IPSec-ESP-Datenverkehr auf dem NAT-Gerät fehl.

NAT-Traversal (NAT-T) -fähige IPSec-Endpunkte erkennen das Vorhandensein eines zwischengeschalteten NAT-Geräts während der IKE-Phase 1 und wechseln zum UDP-Port 4500 für alle nachfolgenden IKE- und ESP-Datenverkehr (Verkapselung von ESP in UDP). Ohne NAT-T-Unterstützung auf den Peer-IPSec-Endpunkten wird IPsec-geschützter ESP-Datenverkehr ohne UDP-Kapselung übertragen. Daher schlägt IPSec-ESP-Datenverkehr auf dem NAT-Gerät fehl.

Die Citrix ADC Appliance unterstützt IPSec ALG-Funktionalität (Application Layer Gateway) für große NAT-Konfigurationen. Die IPsec-ALG verarbeitet IPsec-ESP-Datenverkehr und verwaltet Sitzungsinformationen, so dass der Datenverkehr nicht fehlschlägt, wenn die IPSec-Endpunkte NAT-T (UDP-Kapselung des ESP-Datenverkehrs) nicht unterstützen.

Funktionsweise von IPsec ALG

Eine IPsec-ALG überwacht den IKE-Datenverkehr zwischen einem Client und dem Server und ermöglicht nur einen IKE-Phase-2-Nachrichtenaustausch zwischen dem Client und dem Server zu einem bestimmten Zeitpunkt.

Sobald die bidirektionalen ESP-Pakete für einen bestimmten Flow empfangen werden, erstellt die IPSec-ALG eine NAT-Sitzung für diesen bestimmten Flow, sodass nachfolgender ESP-Datenverkehr reibungslos fließen kann. Der ESP-Datenverkehr wird durch Sicherheitsparameterindizes (SPIs) identifiziert, die für einen Fluss und für jede Richtung eindeutig sind. Eine IPsec-ALG verwendet ESP-SPIs anstelle von Quell- und Zielports für die Ausführung großer NAT.

Wenn ein Tor keinen Verkehr erhält, ist ein Zeitabfall. Nach dem Timeout der beiden Tore ist ein weiterer IKE-Phase-2-Austausch zulässig.

IPsec-ALG-Timeouts

IPsec ALG auf einer Citrix ADC Appliance verfügt über drei Timeoutparameter:

  • ESP-Gate-Zeitüberschreitung. Maximale Zeit, die die Citrix ADC Appliance ein IPsec-ALG-Gate für einen bestimmten Client auf einer bestimmten NAT-IP-Adresse für einen bestimmten Server blockiert, wenn kein bidirektionaler ESP-Datenverkehr zwischen dem Client und dem Server ausgetauscht wird.
  • IKE-Sitzungszeitüberschreitung. Maximale Zeit, die die Citrix ADC Appliance die IKE-Sitzungsinformationen aufbewahrt, bevor sie entfernt wird, wenn für diese Sitzung kein IKE-Datenverkehr vorhanden ist.
  • ESP-Sitzungszeitüberschreitung. Maximale Zeit, die Citrix ADC Appliance die ESP-Sitzungsinformationen aufbewahrt, bevor sie entfernt wird, wenn für diese Sitzung kein ESP-Datenverkehr vorhanden ist.

Vor der Konfiguration von IPsec ALG zu berücksichtigende Punkte

Bevor Sie mit der Konfiguration von IPSec ALG beginnen, sollten Sie die folgenden Punkte beachten:

  • Sie müssen die verschiedenen Komponenten des IPSec-Protokolls verstehen.
  • IPsec ALG wird für DS-Lite und Large Scale NAT64 Konfigurationen nicht unterstützt.
  • IPsec ALG wird für den Haarnadel-LSN-Fluss nicht unterstützt.
  • IPsec ALG funktioniert nicht mit RNAT Konfigurationen.
  • IPsec ALG wird in Citrix ADC-Clustern nicht unterstützt.

Konfigurationsschritte

Die Konfiguration von IPsec ALG für großformatige NAT44 auf einer Citrix ADC Appliance umfasst folgende Aufgaben:

  • Erstellen Sie ein LSN-Anwendungsprofil und binden Sie es an die LSN-Konfiguration. Legen Sie beim Konfigurieren eines Anwendungsprofils die folgenden Parameter fest:
    • Protokoll = UDP
    • IP-Pooling = PAIRED
    • Port=500

Binden Sie das Anwendungsprofil an die LSN-Gruppe einer LSN-Konfiguration. Anweisungen zum Erstellen einer LSN-Konfiguration finden Sie unterKonfigurationsschritte für LSN.

  • Erstellen Sie ein IPsec-ALG-Profil. Ein IPSec-Profil enthält verschiedene IPSec-Timeouts, wie z. B. IKE-Sitzungszeitüberschreitung, ESP-Sitzungszeitüberschreitung und ESP-Gate-Zeitüberschreitung. Sie binden ein IPSec-ALG-Profil an eine LSN-Gruppe. Ein IPsec-ALG-Profil weist die folgenden Standardeinstellungen auf:
    • IKE-Sitzungszeitüberschreitung = 60 Minuten
    • ESP-Sitzungszeitüberschreitung = 60 Minuten
    • ESP-Gate-Zeitüberschreitung = 30 Sekunden
  • Binden Sie das IPSec-ALG-Profil an die LSN-Konfiguration. IPsec ALG ist für eine LSN-Konfiguration aktiviert, wenn Sie ein IPSec-ALG-Profil an die LSN-Konfiguration binden. Binden Sie das IPSec-ALG-Profil an die LSN-Konfiguration, indem Sie den IPsec-ALG-Profilparameter auf den Namen des erstellten Profils in der LSN-Gruppe festlegen. Ein IPSec-ALG-Profil kann an mehrere LSN-Gruppen gebunden werden, aber eine LSN-Gruppe kann nur ein IPSec-ALG-Profil haben.

So erstellen Sie ein LSN-Anwendungsprofil mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung Folgendes ein:

add lsn appsprofile <appsprofilename> UDP -ippooling PAIRED

show lsn appsprofile

So binden Sie den Zielport mit der Befehlszeilenschnittstelle an das LSN-Anwendungsprofil

Geben Sie an der Eingabeaufforderung Folgendes ein:

bind lsn appsprofile <appsprofilename> <lsnport>

show lsn appsprofile

So binden Sie ein LSN-Anwendungsprofil mit der Befehlszeilenschnittstelle an eine LSN-Gruppe

Geben Sie an der Eingabeaufforderung Folgendes ein:

bind lsn group <groupname> -appsprofilename <string>

show lsn group

So erstellen Sie ein IPsec-ALG-Profil mit der CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

add ipsecalg profile <name> [-ikeSessionTimeout <positive_integer>] [-espSessionTimeout <positive_integer>] [-espGateTimeout <positive_integer>] [-connfailover ( ENABLED | DISABLED)

show ipsecalg profile <name>

So binden Sie ein IPSec-ALG-Profil an eine LSN-Konfiguration mit der CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

bind lsn group <groupname> -poolname <string> - ipsecAlgProfile <string>

show lsn group <name>

So erstellen Sie ein LSN-Anwendungsprofil und binden es mit der GUI an eine LSN-Konfiguration

Navigieren Sie zu System > Large Scale NAT > Profile, klicken Sie auf die Registerkarte Anwendung, fügen Sie ein LSN-Anwendungsprofil hinzu und binden Sie es an eine LSN-Gruppe.

So erstellen Sie ein IPsec-ALG-Profil mit der GUI**

Navigieren Sie zu System > Large Scale NAT > Profile, klicken Sie auf IPSEC ALG Registerkarte, und fügen Sie dann ein IPsec-ALG-Profil hinzu.

So binden Sie ein IPSec-ALG-Profil mit der GUI**an eine LSN-Konfiguration

  1. Navigieren Sie zu System > Large Scale NAT > LSN Group, öffnen Sie die LSN-Gruppe.
  2. Klicken Sie unter Erweiterte Einstellungenauf + IPSEC-ALG-Profil, um das erstellte IPSec-ALG-Profil an die LSN-Gruppe zu binden.

Beispielkonfiguration

In der folgenden großformatigen NAT44-Beispielkonfiguration ist IPSec ALG für Abonnenten im 192.0.2.0/24-Netzwerk aktiviert. IPsec-ALG-Profil IPSECALGPROFILE-1 mit verschiedenen IPSec-Zeitüberschreitungseinstellungen wird erstellt und ist an LSN-Gruppe LSN-Gruppe -1 gebunden.

Beispielkonfiguration:

add lsn client LSN-CLIENT-1

Done

bind lsn client LSN-CLIENT-1 -network 192.0.2.0 -netmask 255.255.255.0

Done

add lsn pool LSN-POOL-1

Done

bind lsn pool LSN-POOL-1 203.0.113.3-203.0.113.9

Done

add lsn appsprofile LSN-APPSPROFILE-1 UDP -ippooling PAIRED

Done

bind lsn appsprofile LSN-APPSPROFILE-1 500

Done

add ipsecalg profile  IPSECALGPROFILE-1 -ikeSessionTimeout 45 –espSessionTimeout 40 –espGateTimeout 20 -connfailover ENABLED

Done

bind lsn group LSN-GROUP-1 -appsprofilename LSN-APPSPROFILE-1

Done

bind lsn group LSN-GROUP-1 -poolname LSN-POOL-1

Done

bind lsn group LSN-GROUP-1 - ipsecAlgProfile IPSECALGPROFILE-1

Done