In dem Dokumentationssatz für dieses Produkt wird die Verwendung inklusiver Sprache angestrebt. Für die Zwecke dieses Dokumentationssatzes wird Sprache als „inklusiv“ verstanden, wenn sie keine Diskriminierung aufgrund von Alter, körperlicher und/oder geistiger Behinderung, Geschlechtszugehörigkeit und -identität, ethnischer Identität, sexueller Orientierung, sozioökonomischem Status und Intersektionalität impliziert. Dennoch können in der Dokumentation stilistische Abweichungen von diesem Bemühen auftreten, wenn Text verwendet wird, der in Benutzeroberflächen der Produktsoftware fest codiert ist, auf RFP-Dokumentation basiert oder von einem genannten Drittanbieterprodukt verwendet wird. Hier erfahren Sie mehr darüber, wie Cisco inklusive Sprache verwendet.
Cisco hat dieses Dokument maschinell übersetzen und von einem menschlichen Übersetzer editieren und korrigieren lassen, um unseren Benutzern auf der ganzen Welt Support-Inhalte in ihrer eigenen Sprache zu bieten. Bitte beachten Sie, dass selbst die beste maschinelle Übersetzung nicht so genau ist wie eine von einem professionellen Übersetzer angefertigte. Cisco Systems, Inc. übernimmt keine Haftung für die Richtigkeit dieser Übersetzungen und empfiehlt, immer das englische Originaldokument (siehe bereitgestellter Link) heranzuziehen.
In diesem Dokument werden die verschiedenen FTP- und TFTP-Prüfszenarien für die ASA-, ASA-FTP-/TFTP-Prüfkonfiguration und die grundlegende Fehlerbehebung beschrieben.
Cisco empfiehlt, sich mit folgenden Themen vertraut zu machen:
Grundlegende Kommunikation zwischen den erforderlichen Schnittstellen
Konfiguration des FTP-Servers im DMZ-Netzwerk
In diesem Dokument werden verschiedene FTP- und TFTP-Prüfszenarien für die Adaptive Security Appliance (ASA) beschrieben. Außerdem werden die ASA FTP-/TFTP-Prüfkonfiguration und grundlegende Fehlerbehebungsfunktionen behandelt.
Die Informationen in diesem Dokument basierend auf folgenden Software- und Hardware-Versionen:
ASA der Serie 5500 oder ASA 5500-X, die das Software-Image von 9.1(5) ausführt
Beliebiger FTP-Client
Die Informationen in diesem Dokument beziehen sich auf Geräte in einer speziell eingerichteten Testumgebung. Alle Geräte, die in diesem Dokument benutzt wurden, begannen mit einer gelöschten (Nichterfüllungs) Konfiguration. Wenn Ihr Netzwerk in Betrieb ist, stellen Sie sicher, dass Sie die möglichen Auswirkungen aller Befehle kennen.
Die Sicherheits-Appliance unterstützt die Anwendungsinspektion mithilfe der Funktion Adaptive Security Algorithm.
Durch die Stateful-Anwendungsinspektion, die vom Adaptive Security Algorithm verwendet wird, verfolgt die Security Appliance jede Verbindung, die die Firewall passiert, und stellt sicher, dass sie gültig ist.
Die Firewall überwacht mittels Stateful Inspection auch den Status der Verbindung, um Informationen für die Platzierung in einer Statustabelle zu kompilieren.
Bei Verwendung der Statustabelle und der vom Administrator definierten Regeln basieren die Filterungsentscheidungen auf Kontext, der durch Pakete erstellt wird, die zuvor durch die Firewall geleitet wurden.
Die Durchführung von Anwendungsinspektionen umfasst folgende Maßnahmen:
Identifizieren des Datenverkehrs
Traffic-Inspektionen durchführen
Aktivieren von Inspektionen an einer Schnittstelle
Es gibt zwei Formen von FTP, wie im Bild dargestellt.
Aktiver Modus
Passiver Modus
Aktives FTP
Im aktiven FTP-Modus stellt der Client über einen zufälligen nicht privilegierten Port (N>1023) eine Verbindung mit dem Befehlsport (21) des FTP-Servers her. Dann beginnt der Client, Port N>1023 abzuhören und sendet den FTP-Befehlsport N>1023 an den FTP-Server. Der Server stellt dann über seinen lokalen Datenport, Port 20, eine Verbindung zu den angegebenen Daten-Ports des Clients her.
Passives FTP
Im Modus für passives FTP initiiert der Client beide Verbindungen zum Server, wodurch das Problem einer Firewall gelöst wird, die die eingehende Datenportverbindung zum Client vom Server filtert. Wenn eine FTP-Verbindung geöffnet wird, öffnet der Client zwei zufällige nicht privilegierte Ports lokal. Der erste Port verbindet den Server mit Port 21. Anstatt jedoch einen Port-Befehl auszuführen und dem Server zu erlauben, sich wieder mit seinem Daten-Port zu verbinden, gibt der Client den PASV-Befehl aus. Dies hat zur Folge, dass der Server dann einen zufälligen unprivilegierten Port öffnet (P>1023) und den Befehl Port P zurück an den Client sendet. Der Client initiiert dann die Verbindung von Port N>1023 zu Port P auf dem Server, um Daten zu übertragen. Ohne die Prüfbefehlskonfiguration auf der Sicherheits-Appliance funktioniert FTP von internen Benutzern mit ausgehendem Port nur im passiven Modus. Außerdem wird Benutzern, die sich außerhalb des FTP-Servers befinden, der Zugriff verweigert.
TFTP
TFTP, wie in RFC 1350 beschrieben, ist ein einfaches Protokoll zum Lesen und Schreiben von Dateien zwischen einem TFTP-Server und einem Client. TFTP verwendet den UDP-Port 69.
Warum benötigen Sie eine FTP-Überprüfung?
Für einige Anwendungen ist eine spezielle Behandlung durch die Anwendungsinspektionsfunktion der Cisco Security Appliance erforderlich. Diese Arten von Anwendungen betten IP-Adressierungsinformationen in das Benutzerdatenpaket ein oder öffnen sekundäre Kanäle an dynamisch zugewiesenen Ports. Die Anwendungsinspektionsfunktion arbeitet mit Network Address Translation (NAT) zusammen, um den Speicherort der eingebetteten Adressinformationen zu identifizieren.
Neben der Identifizierung eingebetteter Adressinformationen überwacht die Anwendungsinspektionsfunktion Sitzungen, um die Portnummern für sekundäre Kanäle zu ermitteln. Viele Protokolle öffnen sekundäre TCP- oder UDP-Ports, um die Leistung zu verbessern. Die erste Sitzung auf einem bekannten Port wird verwendet, um dynamisch zugewiesene Portnummern auszuhandeln.
Die Anwendungsinspektionsfunktion überwacht diese Sitzungen, identifiziert die dynamischen Portzuweisungen und ermöglicht den Datenaustausch an diesen Ports für die Dauer der jeweiligen Sitzungen. Multimedia- und FTP-Anwendungen verhalten sich ähnlich.
Wenn die FTP-Überprüfung auf der Sicherheits-Appliance nicht aktiviert wurde, wird diese Anforderung verworfen, und die FTP-Sitzungen übertragen keine angeforderten Daten.
Wenn die FTP-Überprüfung auf dem ASA-Gerät aktiviert ist, überwacht das ASA-Gerät den Steuerungskanal und versucht, eine Anforderung zum Öffnen des Datenkanals zu erkennen. Das FTP-Protokoll bettet die Datenkanal-Portspezifikationen in den Steuerungskanal-Datenverkehr ein. Die Security Appliance muss den Steuerungskanal daraufhin überprüfen, ob Datenport-Änderungen vorliegen.
Sobald die ASA eine Anforderung erkennt, erstellt sie vorübergehend eine Öffnung für den Datenverkehr auf dem Datenkanal, die über die gesamte Lebensdauer der Sitzung andauert. Auf diese Weise überwacht die FTP-Prüffunktion den Steuerkanal, identifiziert eine Datenport-Zuordnung und ermöglicht den Datenaustausch auf dem Datenport über die Dauer der Sitzung.
ASA überprüft standardmäßig Port-21-Verbindungen über die Global-Inspection Class-Map auf FTP-Datenverkehr. Die Sicherheits-Appliance erkennt außerdem den Unterschied zwischen einer aktiven und einer passiven FTP-Sitzung.
Wenn die FTP-Sitzungen eine passive FTP-Datenübertragung unterstützen, erkennt die ASA über den Befehl inspect ftp die Datenportanforderung des Benutzers und öffnet einen neuen Datenport, der größer als 1023 ist.
Die inspect ftp-Befehlsüberprüfung überprüft FTP-Sitzungen und führt vier Aufgaben aus:
Die FTP-Anwendungsinspektion bereitet sekundäre Kanäle für die FTP-Datenübertragung vor. Die Kanäle werden als Reaktion auf einen Datei-Upload, einen Datei-Download oder ein Verzeichnisauflistungsereignis zugewiesen und müssen vorab ausgehandelt werden. Der Port wird über die Befehle PORT oder PASV (227) ausgehandelt.
Hinweis: Alle Netzwerkszenarien werden erläutert, indem die FTP-Prüfung auf der ASA aktiviert ist.
Mit dem internen Netzwerk der ASA verbundener Client und Server im externen Netzwerk.
Hinweis: Die in dieser Konfiguration verwendeten IP-Adressierungsschemata sind im Internet nicht legal routbar.
Wie in diesem Bild gezeigt, verfügt die verwendete Netzwerkkonfiguration über die ASA mit Client im internen Netzwerk mit IP 172.16.1.5. Server befindet sich im externen Netzwerk mit IP 192.168.1.15. Dem Client wurde im externen Netzwerk die IP 192.168.1.5 zugeordnet.
Es ist nicht erforderlich, eine Zugriffsliste für die externe Schnittstelle zuzulassen, da die FTP-Überprüfung den dynamischen Port-Channel öffnet.
Konfigurationsbeispiel:
ASA Version 9.1(5) ! hostname ASA domain-name corp. com enable password WwXYvtKrnjXqGbu1 encrypted names ! interface GigabitEthernet0/0
nameif Outside
security-level 0
ip address 192.168.1.2 255.255.255.0
!
interface GigabitEthernet0/1
nameif Inside
security-level 50
ip address 172.16.1.12 255.255.255.0
!
interface GigabitEthernet0/2
shutdown
no nameif
no security-level
no ip address
!
interface GigabitEthernet0/3
shutdown
no nameif
no security-level
no ip address
!
interface Management0/0
management-only
shutdown
no nameif
no security-level
no ip address
!--- Output is suppressed. !--- Object groups is created to define the host.
object network obj-172.16.1.5
subnet 172.16.1.0 255.255.255.0
!--- Object NAT is created to map Inside Client to Outside subnet IP.
object network obj-172.16.1.5
nat (Inside,Outside) dynamic 192.168.1.5
class-map inspection_default match default-inspection-traffic ! ! policy-map type inspect dns preset_dns_map parameters message-length maximum 512 policy-map global_policy class inspection_default inspect dns preset_dns_map inspect ftp inspect h323 h225 inspect h323 ras inspect netbios inspect rsh inspect rtsp inspect skinny inspect esmtp inspect sqlnet inspect sunrpc inspect tftp inspect sip inspect xdmcp ! !--- This command tells the device to !--- use the "global_policy" policy-map on all interfaces. service-policy global_policy global prompt hostname context Cryptochecksum:4b2f54134e685d11b274ee159e5ed009 : end ASA(config)#
Überprüfung
Verbindung
Client in Inside Network running ACTIVE FTP:
Ciscoasa(config)# sh conn
3 in use, 3 most used
TCP Outside 192.168.1.15:20 inside 172.16.1.5:61855, idle 0:00:00, bytes 145096704, flags UIB <--- Dynamic Connection Opened
TCP Outside 192.168.1.15:21 inside 172.16.1.5:61854, idle 0:00:00, bytes 434, flags UIO
Hier initiiert der Client in Inside die Verbindung mit Quellport 61854 zum Zielport 21. Der Client sendet dann den Port-Befehl mit 6 Tupelwerten. Der Server wiederum initiiert die Sekundär-/Datenverbindung mit dem Quell-Port 20, und der Ziel-Port wird anhand der nach diesen Erfassungen genannten Schritte berechnet.
Capture Inside Interface (Interne Schnittstelle erfassen), wie in diesem Bild dargestellt.
Erfassen Sie die externe Schnittstelle, wie in diesem Bild dargestellt.
Der Port-Wert wird mit den letzten zwei von sechs Tupeln berechnet. Links 4 Tupel sind IP-Adresse und 2 Tupel sind für Port. Wie in diesem Bild gezeigt, ist die IP-Adresse 192.168.1.5 und 241*256 + 159 = 61855.
Capture zeigt außerdem, dass die Werte mit Port-Befehlen geändert werden, wenn die FTP-Prüfung aktiviert ist. Die Erfassung der internen Schnittstelle zeigt den tatsächlichen IP-Wert an, und der Port, der von Client für Server gesendet wurde, um eine Verbindung mit dem Client für den Datenkanal herzustellen, und die Erfassung der externen Schnittstelle zeigt die zugeordnete Adresse an.
Client im internen Netzwerk der ASA und Server im externen Netzwerk.
Verbindung
Client in Inside Network running Passive Mode FTP:
ciscoasa(config)# sh conn
3 in use, 3 most used
TCP Outside 192.168.1.15:60142 inside 172.16.1.5:61839, idle 0:00:00, bytes 184844288, flags UI <--- Dynamic Connection Opened.
TCP Outside 192.168.1.15:21 inside 172.16.1.5:61838, idle 0:00:00, bytes 451, flags UIO
Hier initiiert der Client im Inneren eine Verbindung mit Quellport 61838 und Zielport 21. Da es sich um ein passives FTP handelt, initiiert der Client beide Verbindungen. Nachdem der Client den PASV-Befehl gesendet hat, antwortet der Server mit seinem 6-Tupelwert, und der Client stellt eine Verbindung mit diesem Socket für die Datenverbindung her.
Capture Inside Interface (Interne Schnittstelle erfassen), wie in diesem Bild dargestellt.
Erfassen Sie die externe Schnittstelle, wie in diesem Bild dargestellt.
Die Berechnung für die Ports bleibt unverändert.
Wie bereits erwähnt, schreibt die ASA die eingebetteten IP-Werte neu, wenn die FTP-Überprüfung aktiviert ist. Außerdem wird ein dynamischer Port-Channel für die Datenverbindung geöffnet.
Dies sind die Verbindungsdetails, wenn FTP-Überprüfung ist deaktiviert
Verbindung:
ciscoasa(config)# sh conn
2 in use, 3 most used
TCP Outside 192.168.1.15:21 inside 172.16.1.5:61878, idle 0:00:09, bytes 433, flags UIO
TCP Outside 192.168.1.15:21 inside 172.16.1.5:61875, idle 0:00:29, bytes 259, flags UIO
Ohne FTP-Inspektion, Es versucht nur, Port-Befehl immer und immer wieder senden, aber es gibt keine Antwort, da außen den PORT mit Original-IP nicht NATTed ein empfängt. Dasselbe wurde in der Deponie gezeigt.
Die FTP-Überprüfung kann deaktiviert werden, wenn im Konfigurationsendgerätemodus kein FTP 21-Befehl für das Fixup-Protokoll ausgeführt wird.
Ohne FTP-Inspektion funktioniert nur der PASV-Befehl, wenn sich der Client im Inneren befindet, da kein Port-Befehl von innen kommt, der eingebettet werden muss, und beide Verbindungen von innen initiiert werden.
Client außerhalb des Netzwerks der ASA und Server im DMZ-Netzwerk.
Konfiguration:
ASA(config)#show running-config ASA Version 9.1(5) ! hostname ASA domain-name corp .com enable password WwXYvtKrnjXqGbu1 encrypted names ! interface GigabitEthernet0/0
nameif Outside
security-level 0
ip address 192.168.1.2 255.255.255.0
!
interface GigabitEthernet0/1
nameif DMZ
security-level 50
ip address 172.16.1.12 255.255.255.0
!
interface GigabitEthernet0/2
shutdown
no nameif
no security-level
no ip address
!
interface GigabitEthernet0/3
shutdown
no nameif
no security-level
no ip address
!
interface Management0/0
management-only
shutdown
no nameif
no security-level
no ip address
!--- Output is suppressed.
!--- Permit inbound FTP control traffic.
access-list 100 extended permit tcp any host 192.168.1.5 eq ftp
!--- Object groups are created to define the hosts.
object network obj-172.16.1.5
host 172.16.1.5
!--- Object NAT is created to map FTP server with IP of Outside Subnet.
object network obj-172.16.1.5
nat (DMZ,Outside) static 192.168.1.5
access-group 100 in interface outside
class-map inspection_default match default-inspection-traffic ! ! policy-map type inspect dns preset_dns_map parameters message-length maximum 512 policy-map global_policy class inspection_default inspect dns preset_dns_map inspect ftp inspect h323 h225 inspect h323 ras inspect netbios inspect rsh inspect rtsp inspect skinny inspect esmtp inspect sqlnet inspect sunrpc inspect tftp inspect sip inspect xdmcp ! !--- This command tells the device to !--- use the "global_policy" policy-map on all interfaces. service-policy global_policy global prompt hostname context Cryptochecksum:4b2f54134e685d11b274ee159e5ed009 : end ASA(config)#
Überprüfung
Verbindung:
Client in Outside Network running in Active Mode FTP:
ciscoasa(config)# sh conn
3 in use, 3 most used
TCP outside 192.168.1.15:55836 DMZ 172.16.1.5:21, idle 0:00:00, bytes 470, flags UIOB
TCP outside 192.168.1.15:55837 DMZ 172.16.1.5:20, idle 0:00:00, bytes 225595694, flags UI <--- Dynamic Port channel
Erfassen Sie die DMZ-Schnittstelle wie in diesem Bild dargestellt.
Erfassen Sie die externe Schnittstelle, wie in diesem Bild dargestellt.
Der Client führt hier den Active Mode-Client 192.168.1.15 aus und initiiert die Verbindung zum Server in der DMZ auf Port 21. Der Client sendet dann den Port-Befehl mit sechs Tupelwerten an den Server, um eine Verbindung zu diesem spezifischen dynamischen Port herzustellen. Der Server initiiert dann die Datenverbindung mit dem Quellport als 20.
Client außerhalb des Netzwerks der ASA und Server im DMZ-Netzwerk.
Verbindung
Client in Outside Network running in Passive Mode FTP:
ciscoasa(config)# sh conn
3 in use, 3 most used
TCP Outside 192.168.1.15:60071 DMZ 172.16.1.5:61781, idle 0:00:00, bytes 184718032, flags UOB <--- Dynamic channel Open
TCP Outside 192.168.1.15:60070 DMZ 172.16.1.5:21, idle 0:00:00, bytes 413,
flags UIOB
Erfassen Sie die DMZ-Schnittstelle wie in diesem Bild dargestellt.
Erfassen Sie die externe Schnittstelle, wie in diesem Bild dargestellt.
Standardmäßig enthält die Konfiguration eine Richtlinie, die mit dem gesamten standardmäßigen Anwendungsinspektionsverkehr übereinstimmt und die Inspektion auf den Datenverkehr an allen Schnittstellen anwendet (eine globale Richtlinie). Der standardmäßige Anwendungsinspektionsverkehr beinhaltet Datenverkehr zu den Standardports für jedes Protokoll.
Sie können nur eine globale Richtlinie anwenden. Wenn Sie also die globale Richtlinie ändern möchten, z. B. Inspektionen auf nicht standardmäßige Ports anwenden oder Inspektionen hinzufügen möchten, die nicht standardmäßig aktiviert sind, müssen Sie die Standardrichtlinie entweder bearbeiten oder deaktivieren und eine neue anwenden. Eine Liste aller Standard-Ports finden Sie unter Standard-Inspektionsrichtlinie.
Führen Sie den Befehl policy-map global_policy aus.
ASA(config)#policy-map global_policy
Führen Sie den Befehl class inspection_default aus.
ASA(config-pmap)#class inspection_default
Führen Sie den Befehl inspect FTP aus.
ASA(config-pmap-c)#inspect FTP
Nachdem Sie die Option "strict" für eine Schnittstelle aktiviert haben, erzwingt die FTP-Überprüfung folgendes Verhalten:
Ein FTP-Befehl muss bestätigt werden, bevor die Security Appliance einen neuen Befehl zulässt.
Die Sicherheits-Appliance bricht eine Verbindung ab, die eingebettete Befehle sendet
Die Befehle 227 und PORT werden überprüft, um sicherzustellen, dass sie nicht in einer Fehlerzeichenfolge angezeigt werden.
Warnung: Die Verwendung der strikten Option führt möglicherweise zum Ausfall von FTP-Clients, die nicht streng mit FTP-RFCs konform sind. Weitere Informationen zur Verwendung der strikten Option finden Sie unter Using the strict Option.
Sie können die FTP-Protokollüberprüfung für nicht standardmäßige TCP-Ports mithilfe der folgenden Konfigurationszeilen konfigurieren (XXXX durch die neue Portnummer ersetzen):
access-list ftp-list extended permit tcp any any eq XXXX ! class-map ftp-class match access-list ftp-list ! policy-map global_policy class ftp-class inspect ftp
Um sicherzustellen, dass die Konfiguration erfolgreich durchgeführt wurde, führen Sie den Befehl show service-policy aus. Begrenzen Sie außerdem die Ausgabe auf die FTP-Überprüfung, indem Sie den Befehl show service-policy inspect ftp ausführen.
ASA#show service-policy inspect ftp Global Policy: Service-policy: global_policy Class-map: inspection_default Inspect: ftp, packet 0, drop 0, reste-drop 0 ASA#
Die TFTP-Überprüfung ist standardmäßig aktiviert.
Die Sicherheits-Appliance prüft den TFTP-Datenverkehr und erstellt bei Bedarf dynamisch Verbindungen und Übersetzungen, um die Dateiübertragung zwischen einem TFTP-Client und -Server zu ermöglichen. Die Prüfungs-Engine überprüft insbesondere TFTP-Leseanforderungen (RRQ), Schreibanforderungen (WRQ) und Fehlerbenachrichtigungen (ERROR).
Ein dynamischer Sekundärkanal und ggf. eine PAT-Übersetzung werden bei einem Empfang eines gültigen RRQ oder WRQ zugeordnet. Dieser sekundäre Kanal wird anschließend vom TFTP für die Dateiübertragung oder die Fehlerbenachrichtigung verwendet.
Nur der TFTP-Server kann den Datenverkehr über den sekundären Kanal initiieren, und es kann maximal ein unvollständiger sekundärer Kanal zwischen dem TFTP-Client und dem Server vorhanden sein. Der sekundäre Kanal wird durch eine Fehlermeldung des Servers geschlossen.
Die TFTP-Prüfung muss aktiviert werden, wenn die statische PAT zum Umleiten des TFTP-Datenverkehrs verwendet wird.
Standardmäßig enthält die Konfiguration eine Richtlinie, die mit dem gesamten standardmäßigen Anwendungsinspektionsverkehr übereinstimmt und die Inspektion auf den Datenverkehr an allen Schnittstellen anwendet (eine globale Richtlinie). Der standardmäßige Anwendungsinspektionsverkehr beinhaltet Datenverkehr zu den Standardports für jedes Protokoll.
Sie können nur eine globale Richtlinie anwenden. Wenn Sie also die globale Richtlinie ändern möchten, z. B. Inspektionen auf nicht standardmäßige Ports anwenden oder Inspektionen hinzufügen möchten, die standardmäßig nicht aktiviert sind, müssen Sie die Standardrichtlinie entweder bearbeiten oder deaktivieren und eine neue anwenden. Eine Liste aller Standard-Ports finden Sie unter Standard-Inspektionsrichtlinie.
Führen Sie den Befehl policy-map global_policy aus.
ASA(config)#policy-map global_policy
Führen Sie den Befehl class inspection_default aus.
ASA(config-pmap)#class inspection_default
Führen Sie den Befehl inspect TFTP aus.
ASA(config-pmap-c)#inspect TFTP
Hier ist der Client in Außerhalb des Netzwerks konfiguriert. Der TFTP-Server wird im DMZ-Netzwerk platziert. Der Server ist der IP 192.168.1.5 zugeordnet, die sich im externen Subnetz befindet.
Konfigurationsbeispiel:
ASA(config)#show running-config ASA Version 9.1(5) ! hostname ASA domain-name corp. com enable password WwXYvtKrnjXqGbu1 encrypted names ! interface GigabitEthernet0/0
nameif Outside
security-level 0
ip address 192.168.1.2 255.255.255.0
!
interface GigabitEthernet0/1
nameif DMZ
security-level 50
ip address 172.16.1.12 255.255.255.0
!
interface GigabitEthernet0/2
shutdown
no nameif
security-level 100
ip address 10.1.1.1 255.255.255.0
!
interface GigabitEthernet0/3
shutdown
no nameif
no security-level
no ip address
!
interface Management0/0
management-only
shutdown
no nameif
no security-level
no ip address
!--- Output is suppressed. !--- Permit inbound TFTP traffic. access-list 100 extended permit udp any host 192.168.1.5 eq tftp ! !--- Object groups are created to define the hosts. object network obj-172.16.1.5
host 172.16.1.5
!--- Object NAT to map TFTP server to IP in Outside Subnet.
object network obj-172.16.1.5
nat (DMZ,Outside) static 192.168.1.5
access-group 100 in interface outside
class-map inspection_default
match default-inspection-traffic
!
!
policy-map type inspect dns preset_dns_map
parameters
message-length maximum 512
policy-map global_policy
class inspection_default
inspect dns preset_dns_map
inspect ftp
inspect h323 h225
inspect h323 ras
inspect netbios
inspect rsh
inspect rtsp
inspect skinny
inspect esmtp
inspect sqlnet
inspect sunrpc
inspect tftp
inspect sip
inspect xdmcp
!
!--- This command tells the device to
!--- use the "global_policy" policy-map on all interfaces.
service-policy global_policy global
prompt hostname context
Cryptochecksum:4b2f54134e685d11b274ee159e5ed009
: end
ASA(config)#
Um sicherzustellen, dass die Konfiguration erfolgreich durchgeführt wurde, führen Sie den Befehl show service-policy aus. Beschränken Sie die Ausgabe außerdem auf die TFTP-Überprüfung, indem Sie den Befehl show service-policy inspect tftp ausführen.
ASA#show service-policy inspect tftp Global Policy: Service-policy: global_policy Class-map: inspection_default Inspect: tftp, packet 0, drop 0, reste-drop 0 ASA#
In diesem Abschnitt erhalten Sie Informationen zur Behebung von Fehlern in Ihrer Konfiguration.
Packet Tracer
FTP client Inside - Packet Tracer for Control Connection : Same Flow for Active and Passive.
# packet-tracer input inside tcp 172.16.1.5 12345 192.168.1.15 21 det
-----Omitted------
Phase: 5
Type: INSPECT
Subtype: inspect-ftp
Result: ALLOW
Config:
class-map inspection_default
match default-inspection-traffic
policy-map global_policy
class inspection_default
inspect ftp
service-policy global_policy global
Additional Information:
Forward Flow based lookup yields rule:
in id=0x76d9a120, priority=70, domain=inspect-ftp, deny=false
hits=2, user_data=0x76d99a30, cs_id=0x0, use_real_addr, flags=0x0, protocol=6
src ip/id=0.0.0.0, mask=0.0.0.0, port=0
dst ip/id=0.0.0.0, mask=0.0.0.0, port=21, dscp=0x0
input_ifc=inside, output_ifc=any
Phase: 6
Type: NAT
Subtype:
Result: ALLOW
Config:
object network obj-172.16.1.5
nat (inside,outside) static 192.168.1.5
Additional Information:
NAT divert to egress interface DMZ
translate 172.16.1.5/21 to 192.168.1.5/21
Phase: 7
Type: NAT
Subtype: rpf-check
Result: ALLOW
Config:
object network obj-172.16.1.5
nat (inside,outside) static 192.168.1.5
Additional Information:
Forward Flow based lookup yields rule:
out id=0x76d6e308, priority=6, domain=nat-reverse, deny=false
hits=15, user_data=0x76d9ef70, cs_id=0x0, use_real_addr, flags=0x0, protocol=0
src ip/id=0.0.0.0, mask=0.0.0.0, port=0
dst ip/id=172.16.1.5, mask=255.255.255.255, port=0, dscp=0x0
input_ifc=inside, output_ifc=outside
----Omitted----
Result:
input-interface: inside
input-status: up
input-line-status: up
output-interface: Outside
output-status: up
output-line-status: up
Action: allow
FTP client Outside - Packet Tracer for Control Connection : Same Flow for Active and Passive
# packet-tracer input outside tcp 192.168.1.15 12345 192.168.1.5 21 det
Phase: 1
Type: UN-NAT
Subtype: static
Result: ALLOW
Config:
object network obj-172.16.1.5
nat (DMZ,outside) static 192.168.1.5
Additional Information:
NAT divert to egress interface DMZ
Untranslate 192.168.1.5/21 to 172.16.1.5/21
-----Omitted-----
Phase: 4
Type: INSPECT
Subtype: inspect-ftp
Result: ALLOW
Config:
class-map inspection_default
match default-inspection-traffic
policy-map global_policy
class inspection_default
inspect ftp
service-policy global_policy global
Additional Information:
Forward Flow based lookup yields rule:
in id=0x76d84700, priority=70, domain=inspect-ftp, deny=false
hits=17, user_data=0x76d84550, cs_id=0x0, use_real_addr, flags=0x0, protocol=6
src ip/id=0.0.0.0, mask=0.0.0.0, port=0
dst ip/id=0.0.0.0, mask=0.0.0.0, port=21, dscp=0x0
input_ifc=outside, output_ifc=any
Phase: 5
Type: NAT
Subtype: rpf-check
Result: ALLOW
Config:
object network obj-172.16.1.5
nat (DMZ,outside) static 192.168.1.5
Additional Information:
Forward Flow based lookup yields rule:
out id=0x76d6e308, priority=6, domain=nat-reverse, deny=false
hits=17, user_data=0x76d9ef70, cs_id=0x0, use_real_addr, flags=0x0, protocol=0
src ip/id=0.0.0.0, mask=0.0.0.0, port=0
dst ip/id=172.16.1.5, mask=255.255.255.255, port=0, dscp=0x0
input_ifc=outside, output_ifc=DMZ
----Omitted-----
Result:
input-interface: Outside
input-status: up
input-line-status: up
output-interface: DMZ
output-status: up
output-line-status: up
Action: allow
Wie in beiden Paket-Tracern zu sehen, trifft der Datenverkehr auf die jeweiligen NAT-Anweisungen und die FTP-Prüfungsrichtlinie. Sie verlassen auch die erforderliche Schnittstelle.
Während der Fehlerbehebung können Sie versuchen, die ASA-Eingangs- und -Ausgangsschnittstellen zu erfassen und festzustellen, ob das Umschreiben der integrierten ASA-IP-Adresse ordnungsgemäß funktioniert. Außerdem können Sie überprüfen, ob die Verbindung mit dem dynamischen Port auf der ASA zulässig ist.
Überarbeitung | Veröffentlichungsdatum | Kommentare |
---|---|---|
2.0 |
08-Jun-2023 |
Rezertifizierung |
1.0 |
19-Oct-2015 |
Erstveröffentlichung |