AUF DIESER SEITE
Überprüfen der Ausgabe von ALG-Sitzungen
Dieser Abschnitt enthält Beispiele für erfolgreiche Ausgaben von ALG-Sitzungen und Informationen zur Konfiguration des Systemprotokolls. Sie können die Ergebnisse Ihrer Sitzungen vergleichen, um zu überprüfen, ob die Konfigurationen ordnungsgemäß funktionieren.
FTP-Beispiel
In diesem Beispiel wird die Ausgabe während einer aktiven FTP-Sitzung analysiert. Es besteht aus vier verschiedenen Strömen; zwei sind Kontrollflüsse und zwei sind Datenflüsse. Das Beispiel besteht aus den folgenden Teilen:
Beispielausgabe
MS-MPC-Karte
Für MS-MPCs finden Sie im Folgenden eine vollständige Beispielausgabe des Befehls für den show services stateful-firewall conversations application-protocol ftp
Betriebsmodus:
user@host>show services stateful-firewall conversations application-protocol ftp Interface: ms-1/3/0, Service set: CLBJI1-AAF001 Conversation: ALG protocol: ftp Number of initiators: 2, Number of responders: 2 Flow State Dir Frm count TCP 1.1.79.2:14083 -> 2.2.2.2:21 Watch I 13 NAT source 1.1.79.2:14083 -> 194.250.1.237:50118 TCP 1.1.79.2:14104 -> 2.2.2.2:20 Forward I 3 NAT source 1.1.79.2:14104 -> 194.250.1.237:50119 TCP 2.2.2.2:21 -> 194.250.1.237:50118 Watch O 12 NAT dest 194.250.1.237:50118 -> 1.1.79.2:14083 TCP 2.2.2.2:20 -> 194.250.1.237:50119 Forward O 5 NAT dest 194.250.1.237:50119 -> 1.1.79.2:14104
Für jeden Datenstrom werden in der ersten Zeile Datenflussinformationen angezeigt, einschließlich Protokoll (TCP), Quelladresse, Quellport, Zieladresse, Zielport, Datenflussstatus, Richtung und Frameanzahl.
Der Status eines Datenflusses kann ,
Forward
oderDrop
seinWatch
:Ein
Watch
Flow-Zustand gibt an, dass die Ablaufsteuerung vom ALG auf Informationen in der Nutzlast überwacht wird. Die NAT-Verarbeitung wird je nach Bedarf für den Header und die Nutzlast ausgeführt.Ein
Forward
Datenstrom leitet die Pakete weiter, ohne die Nutzlast zu überwachen. NAT wird bei Bedarf für den Header ausgeführt.Ein
Drop
Datenfluss verwirft jedes Paket, das mit dem Tupel 5 übereinstimmt.
Die Frameanzahl (
Frm count
) zeigt die Anzahl der Pakete an, die in diesem Datenfluss verarbeitet wurden.
In der zweiten Zeile werden die NAT-Informationen angezeigt.
source
gibt Quell-NAT an.dest
gibt die Ziel-NAT an.Die erste Adresse und der erste Port in der NAT-Zeile sind die ursprüngliche Adresse und der Port, die für diesen Datenfluss übersetzt werden.
Die zweite Adresse und der zweite Port in der NAT-Zeile sind die übersetzte Adresse und der Port für diesen Datenstrom.
MX-SPC3-Karte
Auf der MX-SPC3-Servicekarte finden Sie im Folgenden eine vollständige Beispielausgabe des Befehls für den show services sessions application-protocol ftp
Betriebsmodus:
user@host>show services sessions application-protocol ftp Session ID: 536870917, Service-set: ss1, Policy name: p1/131085, Timeout: 1, Valid Logical system: root-logical-system Resource information : FTP ALG, 1, 1 In: 12.10.10.10/35281 --> 22.20.20.3/8204;tcp, Conn Tag: 0x0, If: vms-2/0/0.100, Pkts: 6, Bytes: 320, Out: 22.20.20.3/8204 --> 60.1.1.2/48747;tcp, Conn Tag: 0x0, If: vms-2/0/0.200, Pkts: 9, Bytes: 8239, Session ID: 536870919, Service-set: ss1, Policy name: p1/131085, Timeout: 29, Valid Logical system: root-logical-system Resource information : FTP ALG, 1, 0 In: 12.10.10.10/44194 --> 22.20.20.3/21;tcp, Conn Tag: 0x0, If: vms-2/0/0.100, Pkts: 13, Bytes: 585, Out: 22.20.20.3/21 --> 60.1.1.2/48660;tcp, Conn Tag: 0x0, If: vms-2/0/0.200, Pkts: 11, Bytes: 650, Total sessions: 2
Für jede Sitzung:
In der ersten Zeile werden Datenflussinformationen angezeigt, einschließlich Sitzungs-ID, Name des Servicesatzes, Richtlinienname, Sitzungszeitüberschreitung, Name des logischen Systems und dessen Status.
Die zweite Zeile, , gibt an, dass die Sitzung von ALG erstellt wird, einschließlich des ALG-Namens (FTP ALG) und der ASL-Gruppen-ID (1) und der ASL-Ressourcen-ID,
Resource information
die 0 für die Steuerungssitzung und 1 für die Datensitzung ist.Die dritte Zeile ist der Vorwärtsfluss und die vierte Zeile
In
Out
ist der Rückwärtsfluss, einschließlich der Quelladresse, des Quellports, der Zieladresse, des Zielports, des Protokolls (TCP), des Sitzungs-Conn-Tags, des eingehenden und ausgehenden ZugangsIn
Out
, der Anzahl der empfangenen Frames und der Bytes. NAT wird bei Bedarf für den Header ausgeführt.
FTP-Systemprotokollmeldungen
Systemprotokollmeldungen werden während einer FTP-Sitzung generiert. Weitere Informationen zu Systemprotokollen finden Sie unter Systemprotokollmeldungen.
MS-MPC-Karte
Die folgenden Systemprotokollmeldungen werden bei der Erstellung der FTP-Ablaufsteuerung generiert:
Regel Systemprotokoll akzeptieren:
Oct 27 11:42:54 (FPC Slot 1, PIC Slot 1) {ss_ftp}[FWNAT]: ASP_SFW_RULE_ACCEPT: proto 6 (TCP) application: ftp, fe-3/3/3.0:1.1.1.2:4450 -> 2.2.2.2:21, Match SFW accept rule-set:, rule: ftp, term: 1
Systemprotokoll "Accept Flow" erstellen:
Oct 27 11:42:54 (FPC Slot 1, PIC Slot 1) {ss_ftp}[FWNAT]: ASP_SFW_CREATE_ACCEPT_FLOW: proto 6 (TCP) application: ftp, fe-3/3/3.0:1.1.1.2:4450 -> 2.2.2.2:21, creating forward or watch flow
Systemprotokoll für die Datenflusserstellung:
Oct 27 11:43:30 (FPC Slot 1, PIC Slot 1) {ss_ftp}[FWNAT]: ASP_SFW_FTP_ACTIVE_ACCEPT: proto 6 (TCP) application: ftp, so-2/1/2.0:2.2.2.2:20 -> 1.1.1.2:50726, Creating FTP active mode forward flow
MX-SPC3 Karte
Die folgenden Systemprotokollmeldungen werden bei der Erstellung der FTP-Ablaufsteuerung generiert:
Systemprotokoll für die Erstellung von FTP-Kontrollsitzungen:
Mar 23 23:58:54 esst480r RT_FLOW: RT_FLOW_SESSION_CREATE_USF: Tag svc-set-name ss1: session created 20.1.1.2/52877->30.1.1.2/21 0x0 junos-ftp 20.1.1.2/52877->30.1.1.2/21 0x0 N/A N/A N/A N/A 6 p1 ss1-ZoneIn ss1-ZoneOut 818413576 N/A(N/A) ge-1/0/2.0 UNKNOWN UNKNOWN UNKNOWN N/A N/A -1 N/A Mar 23 23:59:00 esst480r junos-alg: RT_ALG_FTP_ACTIVE_ACCEPT: application:ftp data, vms-3/0/0.0 30.1.1.2:20 -> 20.1.1.2:33947 (TCP)
Systemprotokoll für die Erstellung von FTP-Datensitzungen:
Mar 23 23:59:00 esst480r RT_FLOW: RT_FLOW_SESSION_CREATE_USF: Tag svc-set-name ss1: session created 30.1.1.2/20->20.1.1.2/33947 0x0 junos-ftp-data 30.1.1.2/20->20.1.1.2/33947 0x0 N/A N/A N/A N/A 6 p1 ss1-ZoneOut ss1-ZoneIn 818413577 N/A(N/A) ge-1/1/6.0 FTP-DATA UNKNOWN UNKNOWN Infrastructure File-Servers 2 N/A
Systemprotokoll für die Zerstörung von FTP-Datensitzungen:
Mar 23 23:59:02 esst480r RT_FLOW: RT_FLOW_SESSION_CLOSE_USF: Tag svc-set-name ss1: session closed TCP FIN: 30.1.1.2/20->20.1.1.2/33947 0x0 junos-ftp-data 30.1.1.2/20->20.1.1.2/33947 0x0 N/A N/A N/A N/A 6 p1 ss1-ZoneOut ss1-ZoneIn 818413577 2954(4423509) 281(14620) 2 FTP-DATA UNKNOWN N/A(N/A) ge-1/1/6.0 No Infrastructure File-Servers 2 N/A
Systemprotokoll für die Zerstörung der FTP-Kontrollsitzung:
Mar 23 23:59:39 esst480r RT_FLOW: RT_FLOW_SESSION_CLOSE_USF: Tag svc-set-name ss1: session closed Closed by junos-tcp-clt-emul: 20.1.1.2/52877->30.1.1.2/21 0x0 junos-ftp 20.1.1.2/52877->30.1.1.2/21 0x0 N/A N/A N/A N/A 6 p1 ss1-ZoneIn ss1-ZoneOut 818413576 23(1082) 18(1176) 45 UNKNOWN UNKNOWN N/A(N/A) ge-1/0/2.0 No N/A N/A -1 N/A
Analyse
Kontrollflüsse
MS-MPC-Karte
Die Kontrollflüsse werden nach Abschluss des Drei-Wege-Handshakes festgelegt.
Steuerfluss vom FTP-Client zum FTP-Server. TCP-Zielport ist 21.
TCP 1.1.79.2:14083 -> 2.2.2.2:21 Watch I 13 NAT source 1.1.79.2:14083 -> 194.250.1.237:50118
Steuerfluss vom FTP-Server zum FTP-Client. TCP-Quellport ist 21.
TCP 2.2.2.2:21 -> 194.250.1.237:50118 Watch O 12 NAT dest 194.250.1.237:50118 -> 1.1.79.2:14083
MX-SPC3-Karte
Die Kontrollflüsse werden nach Abschluss des Drei-Wege-Handshakes festgelegt.
Steuersitzung vom FTP-Client zum FTP-Server, TCP-Zielport ist 21.
Session ID: 536870919, Service-set: ss1, Policy name: p1/131085, Timeout: 29, Valid Logical system: root-logical-system Resource information : FTP ALG, 1, 0 In: 12.10.10.10/44194 --> 22.20.20.3/21;tcp, Conn Tag: 0x0, If: vms-2/0/0.100, Pkts: 13, Bytes: 585, Out: 22.20.20.3/21 --> 60.1.1.2/48660;tcp, Conn Tag: 0x0, If: vms-2/0/0.200, Pkts: 11, Bytes: 650,
Datensitzung vom FTP-Client zum FTP-Server, es ist für den passiven FTP-Modus.
Session ID: 536870917, Service-set: ss1, Policy name: p1/131085, Timeout: 1, Valid Logical system: root-logical-system Resource information : FTP ALG, 1, 1 In: 12.10.10.10/35281 --> 22.20.20.3/8204;tcp, Conn Tag: 0x0, If: vms-2/0/0.100, Pkts: 6, Bytes: 320, Out: 22.20.20.3/8204 --> 60.1.1.2/48747;tcp, Conn Tag: 0x0, If: vms-2/0/0.200, Pkts: 9, Bytes: 8239,
Datensitzung vom FTP-Server zum FTP-Client, es ist für den aktiven FTP-Modus:
Session ID: 549978117, Service-set: ss1, Policy name: p1/131085, Timeout: 1, Valid Logical system: root-logical-system Resource information : FTP ALG, 1, 1 In: 22.20.20.3/20 --> 60.1.1.3/6049;tcp, Conn Tag: 0x0, If: vms-2/0/0.200, Pkts: 10, Bytes: 8291, Out: 12.10.10.10/33203 --> 22.20.20.3/20;tcp, Conn Tag: 0x0, If: vms-2/0/0.100, Pkts: 5, Bytes: 268,
Datenflüsse
Für die Datenübertragung im Zuge des FTP-Steuerprotokolls wird ein Datenport von 20 ausgehandelt. Bei diesen beiden Datenflüssen handelt es sich um Datenflüsse zwischen dem FTP-Client und dem FTP-Server:
TCP 1.1.79.2:14104 -> 2.2.2.2:20 Forward I 3 NAT source 1.1.79.2:14104 -> 194.250.1.237:50119 TCP 2.2.2.2:20 -> 194.250.1.237:50119 Forward O 5 NAT dest 194.250.1.237:50119 -> 1.1.79.2:14104
Fragen zur Fehlerbehebung
Woher weiß ich, ob die FTP-ALG aktiv ist?
Das ALG-Protokollfeld in der Konversation sollte angezeigt werden
ftp
.Es sollte eine gültige Frameanzahl (
Frm count
) in den Kontrollabläufen vorhanden sein.Eine gültige Frameanzahl in den Datenflüssen zeigt an, dass eine Datenübertragung stattgefunden hat.
Was muss ich überprüfen, wenn die FTP-Verbindung aufgebaut ist, aber keine Datenübertragung stattfindet?
Höchstwahrscheinlich ist die Steuerverbindung verfügbar, aber die Datenverbindung ist unterbrochen.
Überprüfen Sie die Konversationsausgabe, um festzustellen, ob sowohl der Steuerungs- als auch der Datenfluss vorhanden sind.
Wie interpretiere ich die einzelnen Flows? Was bedeuten die einzelnen Flows?
FTP Control Flow Initiator Flow – Flow mit Zielport 21
FTP Control Flow Responder Flow – Datenfluss mit Quellport ; 21
FTP data flow initiator flow – Datenfluss mit Zielport 20
FTP-Datenfluss-Responder-Datenstrom: Datenfluss mit Quellport 20
Beispiel für RTSP ALG
Im Folgenden finden Sie ein Beispiel für eine RTSP-Konversation. Die Anwendung verwendet das RTSP-Protokoll für die Steuerverbindung. Sobald die Verbindung hergestellt ist, werden die Medien über das UDP-Protokoll (RTP) gesendet.
Dieses Beispiel besteht aus Folgendem:
- Beispielausgabe für MS-MPCs
- Beispielausgabe für MX-SPC3 Services Card
- Analyse
- Fragen zur Fehlerbehebung
Beispielausgabe für MS-MPCs
Hier ist die Ausgabe des show services stateful-firewall conversations
Betriebsmodus-Befehls:
user@host# show services stateful-firewall conversations Interface: ms-3/2/0, Service set: svc_set Conversation: ALG protocol: rtsp Number of initiators: 5, Number of responders: 5 Flow State Dir Frm count TCP 1.1.1.3:58795 -> 2.2.2.2:554 Watch I 7 UDP 1.1.1.3:1028 -> 2.2.2.2:1028 Forward I 0 UDP 1.1.1.3:1029 -> 2.2.2.2:1029 Forward I 0 UDP 1.1.1.3:1030 -> 2.2.2.2:1030 Forward I 0 UDP 1.1.1.3:1031 -> 2.2.2.2:1031 Forward I 0 TCP 2.2.2.2:554 -> 1.1.1.3:58795 Watch O 5 UDP 2.2.2.2:1028 -> 1.1.1.3:1028 Forward O 6 UDP 2.2.2.2:1029 -> 1.1.1.3:1029 Forward O 0 UDP 2.2.2.2:1030 -> 1.1.1.3:1030 Forward O 3 UDP 2.2.2.2:1031 -> 1.1.1.3:1031 Forward O 0
Beispielausgabe für MX-SPC3 Services Card
Hier ist die Ausgabe des show services sessions application-protocol rtsp
Betriebsmodus-Befehls:
user@host# run show services sessions application-protocol rtsp Session ID: 1073741828, Service-set: sset1, Policy name: p1/131081, Timeout: 116, Valid Logical system: root-logical-system Resource information : RTSP ALG, 1, 0 In: 31.0.0.2/33575 --> 41.0.0.2/554;tcp, Conn Tag: 0x0, If: vms-4/0/0.1, Pkts: 8, Bytes: 948, Out: 41.0.0.2/554 --> 131.10.0.1/7777;tcp, Conn Tag: 0x0, If: vms-4/0/0.2, Pkts: 6, Bytes: 1117, Session ID: 1073741829, Service-set: sset1, Policy name: p1/131081, Timeout: 120, Valid Logical system: root-logical-system Resource information : RTSP ALG, 1, 1 In: 41.0.0.2/35004 --> 131.10.0.1/7780;udp, Conn Tag: 0x0, If: vms-4/0/0.2, Pkts: 220, Bytes: 79200, Out: 31.0.0.2/30004 --> 41.0.0.2/35004;udp, Conn Tag: 0x0, If: vms-4/0/0.1, Pkts: 0, Bytes: 0, Session ID: 1073741830, Service-set: sset1, Policy name: p1/131081, Timeout: 120, Valid Logical system: root-logical-system Resource information : RTSP ALG, 1, 4 In: 41.0.0.2/35006 --> 131.10.0.1/7781;udp, Conn Tag: 0x0, If: vms-4/0/0.2, Pkts: 220, Bytes: 174240, Out: 31.0.0.2/30006 --> 41.0.0.2/35006;udp, Conn Tag: 0x0, If: vms-4/0/0.1, Pkts: 0, Bytes: 0, Total sessions: 3
Analyse
Eine RTSP-Konversation sollte aus TCP-Datenströmen bestehen, die der RTSP-Steuerungsverbindung entsprechen. Es sollte zwei Datenströme geben, einen in jede Richtung, vom Client zum Server und von Server zu Client:
TCP 1.1.1.3:58795 -> 2.2.2.2:554 Watch I 7 TCP 2.2.2.2:554 -> 1.1.1.3:58795 Watch O 5
Die RTSP-Steuerverbindung für den Initiatordatenfluss wird vom Zielport 554 gesendet.
Die RTSP-Steuerverbindung für den Responder-Flow wird von Quellport 554 gesendet.
Die UDP-Flows entsprechen RTP-Medien, die über die RTSP-Verbindung gesendet werden.
Fragen zur Fehlerbehebung
Medien funktionieren nicht, wenn RTSP ALG konfiguriert ist. Was soll ich tun?
Überprüfen Sie RTSP-Konversationen, um festzustellen, ob sowohl TCP- als auch UDP-Datenflüsse vorhanden sind.
Das ALG-Protokoll sollte als
rtsp
angezeigt werden.
Hinweis:Der Status des Datenstroms wird als
Watch
angezeigt, da die ALG-Verarbeitung stattfindet und der Client im Wesentlichen die der Anwendung entsprechende Nutzlast "überwacht" oder verarbeitet. Bei FTP- und RTSP-ALG-Flows handelt es sich bei den Steuerverbindungen immerWatch
um Flows.Wie überprüfe ich auf ALG-Fehler?
Sie können nach Fehlern suchen, indem Sie den folgenden Befehl ausführen. Jedes ALG hat ein separates Feld für ALG-Paketfehler.
user@host# show services stateful-firewall statistics extensive Interface: ms-3/2/0 Service set: svc_set New flows: Accepts: 1347, Discards: 0, Rejects: 0 Existing flows: Accepts: 144187, Discards: 0, Rejects: 0 Drops: IP option: 0, TCP SYN defense: 0 NAT ports exhausted: 0 Errors: IP: 0, TCP: 276 UDP: 0, ICMP: 0 Non-IP packets: 0, ALG: 0 IP errors: IP packet length inconsistencies: 0 Minimum IP header length check failures: 0 Reassembled packet exceeds maximum IP length: 0 Illegal source address: 0 Illegal destination address: 0 TTL zero errors: 0, Illegal IP protocol number (0 or 255): 0 Land attack: 0 Non-IPv4 packets: 0, Bad checksum: 0 Illegal IP fragment length: 0 IP fragment overlap: 0 IP fragment reassembly timeout: 0 Unknown: 0 TCP errors: TCP header length inconsistencies: 0 Source or destination port number is zero: 0 Illegal sequence number and flags combinations: 0 SYN attack (multiple SYN messages seen for the same flow): 276 First packet not a SYN message: 0 TCP port scan (TCP handshake, RST seen from server for SYN): 0 Bad SYN cookie response: 0 UDP errors: IP data length less than minimum UDP header length (8 bytes): 0 Source or destination port number is zero: 0 UDP port scan (ICMP error seen for UDP flow): 0 ICMP errors: IP data length less than minimum ICMP header length (8 bytes): 0 ICMP error length inconsistencies: 0 Duplicate ping sequence number: 0 Mismatched ping sequence number: 0 ALG errors: BOOTP: 0, DCE-RPC: 0, DCE-RPC portmap: 0 DNS: 0, Exec: 0, FTP: 0 ICMP: 0 Login: 0, NetBIOS: 0, NetShow: 0 RPC: 0, RPC portmap: 0 RTSP: 0, Shell: 0 SNMP: 0, SQLNet: 0, TFTP: 0 Traceroute: 0
Systemprotokoll-Meldungen
Die Aktivierung der Systemprotokollerstellung und die Überprüfung des Systemprotokolls sind ebenfalls hilfreich für die ALG-Flussanalyse. Dieser Abschnitt enthält Folgendes:
Konfiguration des Systemprotokolls
Sie können die Aktivierung von Systemprotokollmeldungen auf verschiedenen Ebenen in der Junos OS CLI konfigurieren. Wie in den folgenden Beispielkonfigurationen gezeigt, hängt die Auswahl der Ebene davon ab, wie spezifisch die Ereignisprotokollierung sein soll und welche Optionen Sie einschließen möchten. Ausführliche Informationen zu den Konfigurationsoptionen finden Sie in der Junos OS-Administrationsbibliothek für Routing-Geräte (Systemebene) oder in der Junos OS Services Interfaces-Bibliothek für Routing-Geräte (alle anderen Ebenen).
Auf der obersten globalen Ebene:
user@host# show system syslog file messages { any any; }
Auf der Service-Set-Ebene:
user@host# show services service-set svc_set syslog { host local { services any; } } stateful-firewall-rules allow_rtsp; interface-service { service-interface ms-3/2/0; }
Auf der Dienstregelebene:
user@host# show services stateful-firewall rule allow_rtsp match-direction input-output; term 0 { from { applications junos-rtsp; } then { accept; syslog; } }
Ausgabe des Systemprotokolls
Systemprotokollmeldungen werden während der Ablauferstellung generiert, wie in den folgenden Beispielen gezeigt:
Die folgende Systemprotokollmeldung gibt an, dass der ASP mit einer Annahmeregel übereinstimmte:
Oct 25 16:11:37 (FPC Slot 3, PIC Slot 2) {svc_set}[FWNAT]: ASP_SFW_RULE_ACCEPT: proto 6 (TCP) application: rtsp, ge-2/0/1.0:1.1.1.2:35595 -> 2.2.2.2:554, Match SFW accept rule-set: , rule: allow_rtsp, term: 0
Eine vollständige Liste der Systemprotokollmeldungen finden Sie im Systemprotokoll-Explorer.