In diesem Dokument wird beschrieben, wie die Funktion zur Umgehung des TCP-Zustands konfiguriert wird, mit der der ausgehende und der eingehende Datenverkehr über separate Cisco Adaptive Security Appliances (ASAs) der Serie ASA 5500 fließen kann.
Bevor Sie mit der in diesem Dokument beschriebenen Konfiguration fortfahren können, muss auf der Cisco ASA mindestens die Basislizenz installiert sein.
Die Informationen in diesem Dokument basieren auf der Cisco Serie ASA 5500, auf der die Software Version 9.x ausgeführt wird.
Die Informationen in diesem Dokument wurden von den Geräten in einer bestimmten Laborumgebung erstellt. Alle in diesem Dokument verwendeten Geräte haben mit einer leeren (Standard-)Konfiguration begonnen. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die potenziellen Auswirkungen eines Befehls verstehen.
Weitere Informationen zu Dokumentkonventionen finden Sie in den Cisco Technical Tips Conventions (Technische Tipps zu Konventionen von Cisco).
Dieser Abschnitt bietet eine Übersicht über die Funktion zur Umgehung des TCP-Zustands und die zugehörigen Support-Informationen.
Standardmäßig wird der gesamte Datenverkehr, der über die ASA geleitet wird, über den Adaptive Security Algorithm geprüft und entweder anhand der Sicherheitsrichtlinie zugelassen oder verworfen. Um die Firewall-Leistung zu maximieren, prüft die ASA den Status jedes Pakets (z. B. prüft sie, ob es sich um eine neue Verbindung oder eine etablierte Verbindung handelt) und weist es entweder dem Sitzungs-Managementpfad (ein neues SYN-Paket), dem schnellen Pfad (eine etablierte Verbindung) oder dem Pfad der Kontrollebene (erweiterte Überprüfung) zu.
Die TCP-Pakete, die mit den aktuellen Verbindungen im schnellen Pfad übereinstimmen, können die ASA passieren, ohne jeden Aspekt der Sicherheitsrichtlinien erneut zu überprüfen. Diese Funktion maximiert die Leistung. Die Methode, die zum Herstellen der Sitzung im schnellen Pfad (bei der das SYN-Paket verwendet wird) und die Prüfungen im schnellen Pfad (z. B. die TCP-Sequenznummer) verwendet wird, kann jedoch asymmetrischen Routing-Lösungen im Wege stehen. Sowohl die ausgehenden als auch die eingehenden Datenflüsse einer Verbindung müssen über dieselbe ASA geleitet werden.
Beispielsweise wird eine neue Verbindung zur ASA 1 hergestellt. Das SYN-Paket durchläuft den Sitzungsverwaltungspfad, und der Fast Path-Tabelle wird ein Eintrag für die Verbindung hinzugefügt. Wenn nachfolgende Pakete auf dieser Verbindung über ASA 1 laufen, stimmen die Pakete mit dem Eintrag im schnellen Pfad überein und werden weitergeleitet. Wenn nachfolgende Pakete an ASA 2 gesendet werden, wo kein SYN-Paket über den Sitzungsverwaltungspfad vorhanden war, gibt es keinen Eintrag im schnellen Pfad für die Verbindung, und die Pakete werden verworfen.
Wenn auf den Upstream-Routern asymmetrisches Routing konfiguriert ist und der Datenverkehr zwischen zwei ASAs wechselt, können Sie die Funktion zur Umgehung des TCP-Zustands für bestimmten Datenverkehr konfigurieren. Die Funktion zur Umgehung des TCP-Zustands ändert die Art und Weise, wie Sitzungen im schnellen Pfad eingerichtet werden, und deaktiviert die Schnellpfadprüfungen. Diese Funktion behandelt TCP-Datenverkehr ähnlich wie UDP-Verbindungen: Wenn ein Paket ohne SYN-Verbindung, das mit den angegebenen Netzwerken übereinstimmt, in die ASA gelangt und es keinen schnellen Pfadeintrag gibt, dann durchläuft das Paket den Sitzungsverwaltungspfad, um die Verbindung im schnellen Pfad herzustellen. Wenn der Datenverkehr im schnellen Pfad ist, umgeht er die Schnellpfadprüfungen.
Dieses Bild zeigt ein Beispiel für asymmetrisches Routing, bei dem der ausgehende Datenverkehr eine andere ASA durchläuft als der eingehende Datenverkehr:
In diesem Abschnitt werden die Support-Informationen für die Funktion zur Umgehung des TCP-Zustands beschrieben.
Diese Funktionen werden bei Verwendung der Funktion zur Umgehung des TCP-Zustands nicht unterstützt:
In diesem Abschnitt wird beschrieben, wie die Funktion zur Umgehung des TCP-Zustands auf der Serie ASA 5500 in zwei verschiedenen Szenarien konfiguriert wird.
Dies ist die Topologie, die für das erste Szenario verwendet wird:
Gehen Sie wie folgt vor, um die Funktion zur TCP-Zustandsumgehung zu konfigurieren:
ASA(config)#class-map tcp_bypass
ASA(config)#class-map tcp_bypass
ASA(config-cmap)#match access-list tcp_bypass
ASA(config-cmap)#policy-map tcp_bypass_policy
ASA(config-cmap)#policy-map tcp_bypass_policy
ASA(config-pmap)#class tcp_bypass
ASA(config-cmap)#policy-map tcp_bypass_policy
ASA(config-pmap)#class tcp_bypass
ASA(config-pmap-c)#set connection advanced-options tcp-state-bypass
ASA(config-pmap-c)#service-policy tcp_bypass_policy outside
Nachfolgend finden Sie eine Beispielkonfiguration für die Funktion zur Umgehung des TCP-Zustands auf ASA1:
!--- Configure the access list to specify the TCP traffic
!--- that needs to by-pass inspection to improve the performance.
ASA1(config)#access-list tcp_bypass extended permit tcp 10.1.1.0 255.255.255.0
172.16.1.0 255.255.255.0
!--- Configure the class map and specify the match parameter for the
!--- class map to match the interesting traffic.
ASA1(config)#class-map tcp_bypass
ASA1(config-cmap)#description "TCP traffic that bypasses stateful firewall"
ASA1(config-cmap)#match access-list tcp_bypass
!--- Configure the policy map and specify the class map
!--- inside this policy map for the class map.
ASA1(config-cmap)#policy-map tcp_bypass_policy
ASA1(config-pmap)#class tcp_bypass
!--- Use the set connection advanced-options tcp-state-bypass
!--- command in order to enable TCP state bypass feature.
ASA1(config-pmap-c)#set connection advanced-options tcp-state-bypass
!--- Use the service-policy policymap_name [ global | interface intf ]
!--- command in global configuration mode in order to activate a policy map
!--- globally on all interfaces or on a targeted interface.
ASA1(config-pmap-c)#service-policy tcp_bypass_policy outside
!--- NAT configuration
ASA1(config)#object network obj-10.1.1.0
ASA1(config-network-object)#subnet 10.1.1.0 255.255.255.0
ASA1(config-network-object)#nat(inside,outside) static 192.168.1.0
Nachfolgend finden Sie eine Beispielkonfiguration für die Funktion zur Umgehung des TCP-Zustands auf ASA2:
!--- Configure the access list to specify the TCP traffic
!--- that needs to by-pass inspection to improve the performance.
ASA2(config)#access-list tcp_bypass extended permit tcp 172.16.1.0 255.255.255.0
10.1.1.0 255.255.255.0
!--- Configure the class map and specify the match parameter for the
!--- class map to match the interesting traffic.
ASA2(config)#class-map tcp_bypass
ASA2(config-cmap)#description "TCP traffic that bypasses stateful firewall"
ASA2(config-cmap)#match access-list tcp_bypass
!--- Configure the policy map and specify the class map
!--- inside this policy map for the class map.
ASA2(config-cmap)#policy-map tcp_bypass_policy
ASA2(config-pmap)#class tcp_bypass
!--- Use the set connection advanced-options tcp-state-bypass
!--- command in order to enable TCP state bypass feature.
ASA2(config-pmap-c)#set connection advanced-options tcp-state-bypass
!--- Use the service-policy policymap_name [ global | interface intf ]
!--- command in global configuration mode in order to activate a policy map
!--- globally on all interfaces or on a targeted interface.
ASA2(config-pmap-c)#service-policy tcp_bypass_policy outside
!--- NAT configuration
ASA2(config)#object network obj-10.1.1.0
ASA2(config-network-object)#subnet 10.1.1.0 255.255.255.0
ASA1(config-network-object)#nat(inside,outside) static 192.168.1.0
In diesem Abschnitt wird beschrieben, wie Sie die Funktion zur Umgehung des TCP-Zustands auf der ASA für Szenarien konfigurieren, die asymmetrisches Routing verwenden, bei dem der Datenverkehr über dieselbe Schnittstelle ein- und ausläuft (u-Turn).
Die folgende Topologie wird in diesem Szenario verwendet:
Gehen Sie wie folgt vor, um die Funktion zur TCP-Zustandsumgehung zu konfigurieren:
ASA(config)#access-list tcp_bypass extended permit tcp 192.168.2.0 255.255.255.0
192.168.1.0 255.255.255.0
ASA(config)#class-map tcp_bypass
ASA(config)#class-map tcp_bypass
ASA(config-cmap)#match access-list tcp_bypass
ASA(config-cmap)#policy-map tcp_bypass_policy
ASA(config-cmap)#policy-map tcp_bypass_policy
ASA(config-pmap)#class tcp_bypass
ASA(config-cmap)#policy-map tcp_bypass_policy
ASA(config-pmap)#class tcp_bypass
ASA(config-pmap-c)#set connection advanced-options tcp-state-bypass
ASA(config-pmap-c)#service-policy tcp_bypass_policy inside
ASA(config)#same-security-traffic permit intra-interface
Im Folgenden finden Sie ein Beispiel für eine Konfiguration der Funktion zur Umgehung des TCP-Zustands auf der ASA:
!--- Configure the access list to specify the TCP traffic
!--- that needs to bypass inspection to improve the performance.
ASA(config)#access-list tcp_bypass extended permit tcp 192.168.2.0 255.255.255.0
192.168.1.0 255.255.255.0
!--- Configure the class map and specify the match parameter for the
!--- class map to match the interesting traffic.
ASA(config)#class-map tcp_bypass
ASA(config-cmap)#description "TCP traffic that bypasses stateful firewall"
ASA(config-cmap)#match access-list tcp_bypass
!--- Configure the policy map and specify the class map
!--- inside this policy map for the class map.
ASA(config-cmap)#policy-map tcp_bypass_policy
ASA(config-pmap)#class tcp_bypass
!--- Use the set connection advanced-options tcp-state-bypass
!--- command in order to enable TCP state bypass feature.
ASA(config-pmap-c)#set connection advanced-options tcp-state-bypass
!--- Use the service-policy policymap_name [ global | interface intf ]
!--- command in global configuration mode in order to activate a policy map
!--- globally on all interfaces or on a targeted interface.
ASA(config-pmap-c)#service-policy tcp_bypass_policy inside
!--- Permit same security level traffic on the ASA to support U-turning
ASA(config)#same-security-traffic permit intra-interface
Geben Sie Show Conn , um die Anzahl der aktiven TCP- und UDP-Verbindungen sowie Informationen über die Verbindungen verschiedener Typen anzuzeigen. Um den Verbindungsstatus für den festgelegten Verbindungstyp anzuzeigen, geben Sie die Show Conn im privilegierten EXEC-Modus.
Hier ein Beispiel für die Ausgabe:
ASA(config)show conn
1 in use, 3 most used
TCP tcp 10.1.1.1:49525 tcp 172.16.1.1:21, idle 0:01:10, bytes 230, flags b
Für diese Funktion liegen keine spezifischen Informationen zur Fehlerbehebung vor. Allgemeine Informationen zur Behebung von Verbindungsproblemen finden Sie in diesen Dokumenten:
Die ASA zeigt diese Fehlermeldung an, selbst wenn die Funktion zur Umgehung des TCP-Zustands aktiviert ist:
%PIX|ASA-4-313004:Denied ICMP type=icmp_type, from source_address oninterface
interface_name to dest_address:no matching session
Die ICMP-Pakete (Internet Control Message Protocol) werden von der ASA aufgrund der Sicherheitsüberprüfungen verworfen, die durch die Stateful ICMP-Funktion hinzugefügt werden. Dabei handelt es sich in der Regel entweder um ICMP-Echoantworten ohne eine gültige Echoanfrage, die bereits über die ASA übergeben wurde, oder um ICMP-Fehlermeldungen, die sich nicht auf eine derzeit in der ASA eingerichtete TCP-, UDP- oder ICMP-Sitzung beziehen.
Die ASA zeigt dieses Protokoll an, selbst wenn die Funktion zur Umgehung des TCP-Zustands aktiviert ist, da die Deaktivierung dieser Funktion (d. h. die Überprüfung der ICMP-Rückgabeeinträge für Typ 3 in der Verbindungstabelle) nicht möglich ist. Die Funktion zur Umgehung des TCP-Zustands funktioniert jedoch ordnungsgemäß.
Geben Sie den folgenden Befehl ein, um die Darstellung dieser Meldungen zu verhindern:
hostname(config)#no logging message 313004
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
1.0 |
15-Jun-2015 |
Erstveröffentlichung |