Netzwerkdienst-Ports. So prüfen Sie, ob TCP-Verbindungen vorhanden sind (offene Ports auf einem Windows-Computer)

UDP-ANWENDUNGEN

UDP unterstützt neben vielen anderen Anwendungen auch das Trivial File Transfer Protocol (TFTP), das Simple Network Management Protocol (SNMP) und das Routing Information Protocol (RIP).
TFTP (Typisches Dateiübertragungsprotokoll). Es wird hauptsächlich zum Kopieren und Installieren verwendet Betriebssystem von einem Dateiserver auf einen Computer übertragen,

TFTP. TFTP ist eine kleinere Anwendung als File Transfer Protocol (FTP). Typischerweise wird TFTP in Netzwerken zur einfachen Dateiübertragung verwendet. TFTP verfügt über einen eigenen Fehlerkontroll- und Sequenznummerierungsmechanismus und erfordert daher keinen Zusatzleitungen auf der Transportebene.

SNMP (Simple Network Management Protocol) überwacht und verwaltet Netzwerke und daran angeschlossene Geräte und sammelt Informationen über die Netzwerkleistung. SNMP sendet Protokolldatenblocknachrichten, die dies ermöglichen Software Netzwerkmanagement-Steuergeräte im Netzwerk.

RIP (Routing Information Protocol) ist ein internes Routing-Protokoll, das heißt, es wird innerhalb einer Organisation, aber nicht im Internet verwendet.

TCP-ANWENDUNGEN

Neben vielen anderen Anwendungen wird auch das TCP-Protokoll unterstützt FTP-Arbeit, Telnet und Simple Mail Transfer Protocol (SMTP).

FTP (File Transfer Protocol) ist eine voll funktionsfähige Anwendung, die zum Kopieren von Dateien mithilfe einer laufenden Clientanwendung auf einem Computer verwendet wird, die mit einer FTP-Serveranwendung auf einem anderen Computer verbunden ist entfernter Computer. Mit dieser Anwendung können Dateien empfangen und versendet werden.

Mit Telnet können Sie Terminalsitzungen mit einem Remote-Gerät einrichten, normalerweise einem UNIX-Host, Router oder Switch. Dies gibt dem Netzwerkadministrator die Möglichkeit, das Netzwerkgerät so zu verwalten, als ob es sich in unmittelbarer Nähe befände, und die serielle Schnittstelle des Computers zur Steuerung zu verwenden. Der Nutzen von Telnet ist auf Systeme beschränkt, die eine zeichenbasierte Befehlssyntax verwenden. Telnet unterstützt keine Steuerung der grafischen Umgebung des Benutzers.

SMTP (Simple Mail Transfer Protocol) ist ein E-Mail-Übertragungsprotokoll für das Internet. Es unterstützt die Übertragung von E-Mail-Nachrichten zwischen Mail-Clients und Mailserver.

Bekannte Häfen
Bekannte Ports werden von der IANA zugewiesen und reichen von 1023 und darunter. Sie sind Anwendungen zugeordnet, die für das Internet von zentraler Bedeutung sind.

REGISTRIERTE HÄFEN
Registrierte Ports werden von der IANA katalogisiert und reichen von 1024 bis 49151. Diese Ports werden von lizenzierten Anwendungen wie Lotus Mail verwendet.

DYNAMISCH ZUGEWIESENE PORTS
Dynamisch zugewiesene Ports sind von 49152 bis 65535 nummeriert. Die Nummern für diese Ports werden dynamisch für die Dauer einer bestimmten Sitzung zugewiesen.

Knapp Liste der Ports:
1. DISCARD: Port verwerfen (RFC 863)
2. FTP: 21 für Befehle, 20 für Daten
3. SSH: 22 (Fernzugriff)
4. Telnet: 23 (Fernzugriff)
5. SMTP: 25, 587
6. DNS: 53 (UDP)
7.DHCP: 67, 68/UDP
8. TFTP: 69/UDP
9. HTTP: 80, 8080
10.POP3: 110
11. NTP: 123 (Zeitserver) (UDP)
12. IMAP: 143
13. SNMP: 161
14. HTTPS: 443
15. MySQL: 3306
16. Iserver: 3055
17. RDP: 3389 (Fernzugriff)
18. OSCAR (ICQ): 5190
19. XMPP (Jabber): 5222/5223/5269
20. Traceroute: über 33434 (UDP)
21. BitTorrent: 6969, 6881-6889
...

Beschreibung:

1. RFC 863 – Drop-Protokoll
Dieses Dokument enthält einen Standard für die ARPA-Internet-Community. Von ARPA-Internet-Hosts, die sich für die Unterstützung des Discard-Protokolls entscheiden, wird erwartet, dass sie dieser Spezifikation entsprechen. Discard ist nützliches Werkzeug bei Messungen und Debugging. Dieser Dienst verwirft einfach alle empfangenen Daten.
Dienst verwerfen auf TCP-basiert Eine der Drop-Service-Optionen ist TCP-basiert. Der Server lauscht auf Port 9 auf TCP-Verbindungen. Sobald die Verbindung hergestellt ist, werden alle darüber empfangenen Daten verworfen, ohne dass Antworten gesendet werden. Das Verwerfen der Daten wird fortgesetzt, bis die Verbindung vom Benutzer beendet wird.
UDP-basierter Discard-Dienst – Eine weitere Variante des Discard-Dienstes basiert auf UDP. Der Server lauscht auf Port 9 auf UDP-Datagramme und verwirft bei Erkennung die empfangenen Datagramme, ohne irgendwelche Informationen zu übertragen.

2. FTP (File Transfer Protocol) ist ein Protokoll zur Übertragung von Dateien über Computernetzwerke. Mit FTP können Sie eine Verbindung herstellen FTP-Server, den Inhalt von Verzeichnissen anzeigen und Dateien vom oder auf den Server herunterladen; Darüber hinaus ist ein Dateiübertragungsmodus zwischen Servern möglich.
Der serverseitig geöffnete Ausgangsport 20 dient der Datenübertragung, Port 21 der Befehlsübertragung.

3. SSH (englisch Secure SHell – „sichere Shell“) – ein Netzwerkprotokoll auf Sitzungsebene, das Ihnen dies ermöglicht Fernbedienung Betriebssystem und Tunneling von TCP-Verbindungen (z. B. für Dateiübertragungen). Port 22 wird verwendet für Fernverwaltung, über Client-Programme des SSH-Protokolls (SSH – Secure SHell). Sie können es schließen, indem Sie das Serversteuerungsprogramm deaktivieren.

4. TELNET (englisch TERminaL NETwork) – ein Netzwerkprotokoll zur Implementierung einer Textschnittstelle über das Netzwerk (in seiner modernen Form – unter Verwendung von TCP-Transport).

5. SMTP (Simple Mail Transfer Protocol) ist ein Netzwerkprotokoll zur Übertragung von E-Mails über TCP/IP-Netzwerke. Um über das SMTP-Protokoll zu arbeiten, stellt der Client über Port 25 eine TCP-Verbindung zum Server her.
Manchmal verbieten Anbieter das Senden von E-Mails über Port 25 und zwingen den Client, nur ihre SMTP-Server zu verwenden. Aber wie Sie wissen, gibt es eine List...
Standardmäßig funktioniert Postfix nur auf Port 25. Sie können es jedoch auf Port 587 zum Laufen bringen. Dazu müssen Sie lediglich die Zeile in der Datei /etc/postfix/master.cf auskommentieren:
Einreichung inet n - - - - smtpd

6. DNS (englisch: Domain Name System) ist ein verteiltes Computersystem zum Abrufen von Informationen über Domänen. Das DNS-Protokoll verwendet den TCP- oder UDP-Port 53, um auf Anfragen zu antworten.

7. DHCP (Dynamic Host Configuration Protocol) ist ein Netzwerkprotokoll, das es Computern ermöglicht, automatisch eine IP-Adresse und andere Parameter zu erhalten, die für den Betrieb in einem TCP/IP-Netzwerk erforderlich sind. Dieses Protokoll basiert auf einem Client-Server-Modell. Für automatische Konfiguration Client-Computer in der Konfigurationsphase Netzwerkgerät greift auf den sogenannten DHCP-Server zu und erhält von diesem die notwendigen Parameter. Der Netzwerkadministrator kann den Adressbereich festlegen, der vom Server an die Computer verteilt wird. Dies vermeidet Manuelle Einstellungen Computer im Netzwerk und reduziert die Fehleranzahl. Das DHCP-Protokoll wird in den meisten TCP/IP-Netzwerken verwendet. Das DHCP-Protokoll ist ein Client-Server-Protokoll, das heißt, es umfasst einen DHCP-Client und einen DHCP-Server. Die Datenübertragung erfolgt über das UDP-Protokoll, wobei der Server Nachrichten von Clients auf Port 67 empfängt und Nachrichten an Clients auf Port 68 sendet.

8. TFTP (englisches Trivial File Transfer Protocol) wird hauptsächlich für den ersten Start von Workstations ohne Festplatte verwendet. TFTP enthält im Gegensatz zu FTP keine Authentifizierungsfunktionen (obwohl eine Filterung nach IP-Adresse möglich ist) und basiert auf dem UDP-Transportprotokoll.

9. HTTP (abgekürzt vom englischen HyperText Transfer Protocol – „Hypertext Transfer Protocol“) – ein Protokoll auf Anwendungsebene für die Datenübertragung (ursprünglich in Form von Hypertext-Dokumenten). Port 80 ist der Port von Webservern. Ports 80-83 sind für die Arbeit über das HTTP-Protokoll verantwortlich.

10. POP3. Port 110 (Opera POP3-Verbindung) ist für den Versand und Empfang von E-Mails zuständig.

11. Network Time Protocol (NTP) – ein Netzwerkprotokoll zur Synchronisierung der internen Uhr des Computers über Netzwerke mit variabler Latenz. Das Einrichten des Zeitdienstes (NTP) in Windows 2003/2008/2008 R2 ... mit der Quelle erfolgt über das NTP-Protokoll - 123 UDP-Port.

12. IMAP (Internet Message Access Protocol) ist ein Protokoll der Anwendungsschicht für den Zugriff auf E-Mails. Es basiert auf dem TCP-Transportprotokoll und verwendet Port 143.

13. SNMP (Simple Network Management Protocol) ist ein Kommunikationsnetzwerk-Managementprotokoll, das auf der UDP-Architektur basiert. Geräte, die normalerweise SNMP unterstützen, sind Router, Switches, Server, Workstations, Drucker, Modems usw. SNMP-Dienst:
Verwendet die Windows Sockets-API.
Sendet und empfängt Nachrichten über UDP (Port 161) und verwendet IP zur Unterstützung des SNMP-Nachrichtenroutings.
Enthält zusätzliche Bibliotheken (DLLs) zur Unterstützung nicht standardmäßiger MIBs.
Enthält die Microsoft Win32 SNMP Manager-API zur Vereinfachung der SNMP-Anwendungsentwicklung.

14. HTTPS (Hypertext Transfer Protocol Secure) – eine Erweiterung des HTTP-Protokolls, das Verschlüsselung unterstützt. Über das HTTPS-Protokoll übertragene Daten werden im kryptografischen Protokoll SSL oder TLS „verpackt“, wodurch der Schutz dieser Daten gewährleistet ist. Im Gegensatz zu HTTP verwendet HTTPS standardmäßig den TCP-Port 443.

15. MySQL ist ein kostenloses Datenbankverwaltungssystem. EINS, ABER MySQL funktioniert nicht. (FUNKTIONIERT NACH n ZEIT NICHT mehr)

16. 3055-lokales Netzwerk.

17. RDP (englisch: Remote Desktop Protocol) ist ein proprietäres Protokoll auf Anwendungsebene, das Microsoft von Citrix erworben hat und das die Remote-Benutzerarbeit mit einem Server gewährleistet, auf dem der Terminalverbindungsdienst ausgeführt wird. Es gibt Clients für fast alle Versionen von Windows (einschließlich Windows CE und Mobile), Linux, FreeBSD, Mac OS X, Android und Symbian. Der Standardport ist TCP 3389.

18. ICQ-Server.

19. XMPP (Extensible Messaging and Presence Protocol), früher bekannt als Jabber.
5222/5223 – Client-Server, 5269 – Server.

20. Traceroute ist ein Dienst Computer Programm, entwickelt zur Bestimmung von Datenrouten in TCP/IP-Netzwerken. (Einige Quellen geben an, dass es ausreicht, den Portbereich von 33434 bis 33534 anzugeben.)

21. BitTórrent (wörtl. englisch „Bitstream“) – Peer-to-Peer (P2P)-Netzwerkprotokoll für kooperativen Dateiaustausch über das Internet. 6969, 6881-6889 Ports für den Zugriff von Torrent-Clients.

20:11:35 20

Netzwerkports können wichtige Informationen über die Anwendungen liefern, die über das Netzwerk auf Computer zugreifen. Indem Sie die Anwendungen kennen, die das Netzwerk nutzen, und die entsprechenden Netzwerkports, können Sie präzise Firewall-Regeln erstellen und Host-Computer so konfigurieren, dass sie nur nützlichen Datenverkehr zulassen. Durch die Erstellung eines Netzwerkprofils und den Einsatz von Tools zur Erkennung des Netzwerkverkehrs können Sie Eindringlinge effektiver erkennen – manchmal einfach durch die Analyse des von ihnen erzeugten Netzwerkverkehrs. Wir haben begonnen, uns mit diesem Thema im ersten Teil des Artikels zu befassen, der in der vorherigen Ausgabe des Magazins veröffentlicht wurde. Es lieferte grundlegende Informationen über TCP/IP-Ports als Grundlage der Netzwerksicherheit. In Teil 2 werden einige Netzwerk- und Hostmethoden beschrieben, mit denen Anwendungen identifiziert werden können, die ein Netzwerk überwachen. Später in diesem Artikel werden wir darüber sprechen, wie der durch das Netzwerk fließende Datenverkehr ausgewertet wird.

Blockieren von Netzwerkanwendungen

Netzwerkangriffsfläche ist ein gebräuchlicher Begriff zur Beschreibung von Netzwerkschwachstellen. Viele Netzwerkangriffe erfolgen über anfällige Anwendungen, und die Angriffsfläche kann erheblich reduziert werden, indem die Anzahl aktiver Anwendungen im Netzwerk verringert wird. Mit anderen Worten: Sie sollten es deaktivieren ungenutzte Dienste, installieren Sie eine Firewall auf dem dedizierten System, um die Legitimität des Datenverkehrs zu überprüfen, und erstellen Sie eine umfassende Zugriffskontrollliste (ACL) für die Firewall am Netzwerkperimeter.

Jeder offene Netzwerkport stellt eine Anwendung dar, die das Netzwerk überwacht. Die Angriffsfläche jedes mit dem Netzwerk verbundenen Servers kann durch die Deaktivierung aller nicht wesentlichen Netzwerkdienste und -anwendungen verringert werden. Windows-Version Server 2003 ist früheren Versionen des Betriebssystems überlegen, da es standardmäßig weniger Netzwerkdienste aktiviert. Zur Wiederentdeckung ist jedoch noch ein Audit erforderlich installierte Anwendungen und Konfigurationsänderungen, die unnötige Netzwerkports öffnen.

Jeden Offener Port– Eine potenzielle Hintertür für Angreifer, die Bereiche in der Hostanwendung ausnutzen oder heimlich mit dem Namen und Passwort eines anderen Benutzers auf die Anwendung zugreifen (oder eine andere legitime Authentifizierungsmethode verwenden). In jedem Fall besteht ein wichtiger erster Schritt zum Schutz Ihres Netzwerks darin, nicht verwendete Netzwerkanwendungen einfach zu deaktivieren.

Port-Scanning

Beim Port-Scanning werden lauschende Anwendungen erkannt, indem die Netzwerk-Ports eines Computers oder eines anderen Netzwerkgeräts aktiv abgefragt werden. Durch die Möglichkeit, Scan-Ergebnisse zu lesen und Netzwerkberichte mit Host-Port-Abfrageergebnissen zu vergleichen, erhalten Sie ein klares Bild des durch Ihr Netzwerk fließenden Datenverkehrs. Kenntnisse der Netzwerktopologie sind wichtig für die Erstellung eines strategischen Plans zum Scannen bestimmter Bereiche. Durch das Scannen einer Reihe externer IP-Adressen können Sie beispielsweise wertvolle Daten über einen Internet-Angreifer sammeln. Daher sollten Sie Ihr Netzwerk häufiger scannen und alle unnötigen Netzwerkports schließen.

Das Scannen externer Firewall-Ports erkennt alle antwortenden Dienste (z. B. das Web oder E-Mail), gehostet auf internen Servern. Auch diese Server sollten geschützt werden. Konfigurieren Sie einen bekannten Port-Scanner (z. B. Network Mapper – Nmap), um die gewünschte Gruppe von UDP- oder TCP-Ports zu scannen. Typischerweise ist das Scannen von TCP-Ports zuverlässiger als das Scannen von UDP, da es tiefer geht Rückmeldung mit verbindungsorientierten TCP-Protokollen. Es gibt Versionen von Nmap sowohl für Windows als auch für Unix. Das Starten eines einfachen Scans ist einfach, obwohl das Programm weitaus erweiterte Funktionen bietet. Um offene Ports auf dem Testcomputer zu finden, habe ich den Befehl ausgeführt

Nmap 192.168.0.161

Bildschirm 1 zeigt die Ergebnisse einer Scansitzung – in diesem Fall ein Windows 2003-Computer in einer Standardkonfiguration. Die beim Port-Scan gesammelten Daten zeigen, dass sechs offene TCP-Ports vorhanden sind.

Bildschirm 1: Grundlegende Nmap-Scansitzung
  • Port 135 wird von der RPC-Endpunktzuordnungsfunktion verwendet, die in vielen Windows-Technologien wie COM/DCOM-Anwendungen, DFS, Ereignisprotokollierung, Dateireplikation, Nachrichtenwarteschlange und Microsoft Outlook zu finden ist. Dieser Port sollte von der Netzwerk-Perimeter-Firewall blockiert werden, es ist jedoch schwierig, ihn zu blockieren und trotzdem die Windows-Funktionalität aufrechtzuerhalten.
  • Port 139 wird vom NetBIOS-Sitzungsdienst verwendet, der den Browser „Andere Computer suchen“, Dateifreigabedienste, Net Logon und den Serverdienst aktiviert. Es ist schwierig zu schließen, genau wie Port 135.
  • Port 445 wird von Windows verwendet für Zusammenarbeit mit Dateien. Um diesen Port zu schließen, müssen Sie die Datei- und Druckerfreigabe für Microsoft-Netzwerke blockieren. Das Schließen dieses Ports hindert den Computer nicht daran, eine Verbindung zu anderen Remote-Ressourcen herzustellen; Andere Computer können sich jedoch nicht mit diesem System verbinden.
  • Die Ports 1025 und 1026 werden dynamisch geöffnet und von anderen Systemen verwendet Windows-Prozesse, insbesondere diverse Dienstleistungen.
  • Port 3389 wird von Remote Desktop verwendet, der standardmäßig nicht aktiviert ist, aber auf meinem Testcomputer aktiv ist. Um den Port zu schließen, gehen Sie im Dialogfeld „Systemeigenschaften“ zur Registerkarte „Remote“ und deaktivieren Sie das Kontrollkästchen „Benutzern erlauben, eine Remoteverbindung zu diesem Computer herzustellen“.

Achten Sie darauf, nach offenen UDP-Ports zu suchen und unnötige zu schließen. Das Scanprogramm zeigt offene Ports Computer, die vom Netzwerk aus sichtbar sind. Ähnliche Ergebnisse können mit Tools erzielt werden, die sich auf dem Hostsystem befinden.

Host-Scan

Zusätzlich zur Verwendung Netzwerkscanner Ports: Offene Ports auf dem Hostsystem können mit dem folgenden Befehl erkannt werden (auf dem Hostsystem ausführen):

Netstat -an

Dieser Befehl funktioniert sowohl unter Windows als auch unter UNIX. Netstat stellt eine Liste der aktiven Ports auf einem Computer bereit. Unter Windows 2003 und Windows XP müssen Sie die Option -o hinzufügen, um die entsprechende Programmkennung (PID) zu erhalten. Abbildung 2 zeigt die Netstat-Ausgabe für denselben Computer, der zuvor einem Port-Scan unterzogen wurde. Bitte beachten Sie, dass mehrere zuvor aktive Ports geschlossen sind.

Firewall-Protokollprüfung

Noch eins nützliche Weise Erkennen Sie Netzwerkanwendungen, die Daten über das Netzwerk senden oder empfangen – sammeln und analysieren Sie weitere Daten im Firewall-Protokoll. Das Verweigern von Einträgen, die Informationen vom Frontend der Firewall bereitstellen, ist aufgrund des „Lärmverkehrs“ (z. B. Würmer, Scanner, Ping-Tests), der das Internet verstopft, wahrscheinlich nicht sinnvoll. Wenn Sie jedoch erlaubte Pakete von der internen Schnittstelle protokollieren, können Sie den gesamten ein- und ausgehenden Netzwerkverkehr sehen.

Um die rohen Verkehrsdaten in Ihrem Netzwerk anzuzeigen, können Sie einen Netzwerkanalysator installieren, der eine Verbindung zum Netzwerk herstellt und alle erkannten Netzwerkpakete aufzeichnet. Der am weitesten verbreitete kostenlose Netzwerkanalysator ist Tcpdump für UNIX (die Windows-Version heißt Windump), der einfach auf Ihrem Computer installiert werden kann. Nach der Installation des Programms sollten Sie es so konfigurieren, dass es im Empfangsmodus für alle Netzwerkpakete arbeitet, um den gesamten Datenverkehr zu protokollieren. Anschließend sollten Sie es an einen Portmonitor am Netzwerk-Switch anschließen und den gesamten durch das Netzwerk fließenden Datenverkehr überwachen. Das Einrichten eines Portmonitors wird weiter unten besprochen. Tcpdump ist ein äußerst flexibles Programm, mit dem Sie den Netzwerkverkehr mithilfe spezieller Filter anzeigen und nur Informationen zu IP-Adressen und Ports oder alle Pakete anzeigen können. Es ist schwierig, Netzwerk-Dumps in großen Netzwerken ohne die Hilfe geeigneter Filter anzuzeigen, es muss jedoch darauf geachtet werden, dass keine wichtigen Daten verloren gehen.

Komponenten kombinieren

Bisher haben wir darüber nachgedacht verschiedene Methoden und Tools, die Ihnen dabei helfen können, Anwendungen über das Netzwerk zu entdecken. Es ist an der Zeit, sie zu kombinieren und zu zeigen, wie man offene Netzwerkports ermittelt. Es ist erstaunlich, wie gesprächig Computer im Netzwerk sind! Zunächst empfiehlt es sich, sich damit vertraut zu machen Microsoft-Dokument„Dienstübersicht und Netzwerk-Port-Anforderungen für Windows Server System" ( http://support.microsoft.com/default.aspx?scid=kb;en-us;832017), in dem die von Anwendungen verwendeten Protokolle (TCP und UDP) und die wichtigsten Portnummern aufgeführt sind Windows-Dienste Server. Das Dokument beschreibt diese Dienste und die zugehörigen Netzwerkports, die sie verwenden. Es wird empfohlen, diese für Administratoren nützliche Anleitung herunterzuladen und auszudrucken Windows-Netzwerke Referenzhandbuch.

Einrichten eines Netzwerkanalysators

Es wurde bereits erwähnt, dass eine Möglichkeit zur Bestimmung der von Anwendungen verwendeten Ports darin besteht, den Datenverkehr zwischen Computern mithilfe eines Netzwerkanalysators zu überwachen. Um den gesamten Datenverkehr zu sehen, müssen Sie einen Netzwerkanalysator an einen Hub oder Portmonitor am Switch anschließen. Jeder Port an einem Hub sieht den gesamten Datenverkehr von jedem Computer, der mit diesem Hub verbunden ist. Hubs sind jedoch eine veraltete Technologie und die meisten Unternehmen ersetzen sie durch Switches, die dies ermöglichen gute Leistung, sind aber für die Analyse unpraktisch: Jeder Switch-Port akzeptiert nur Datenverkehr, der an einen Computer gerichtet ist, der mit diesem Port verbunden ist. Um das gesamte Netzwerk zu analysieren, müssen Sie den an jeden Switch-Port gesendeten Datenverkehr überwachen.

Dies erfordert die Einrichtung eines Port-Monitors (verschiedene Anbieter nennen ihn Span-Port oder gespiegelter Port) auf dem Switch. Die Installation eines Port-Monitors auf einem Cisco Catalyst-Switch von Cisco Systems ist einfach. Sie müssen sich am Switch registrieren und den Aktivierungsmodus aktivieren. Gehen Sie dann zum Konfigurations-Terminalmodus und geben Sie die Schnittstellennummer des Switch-Ports ein, an den Sie alles senden sollen kontrollierter Verkehr. Abschließend müssen Sie alle überwachten Ports angeben. Die folgenden Befehle überwachen beispielsweise drei Ports Schnelles Ethernet und Weiterleiten einer Kopie des Datenverkehrs an Port 24.

Schnittstelle FastEthernet0/24-Port-Monitor FastEthernet0/1-Port-Monitor FastEthernet0/2-Port-Monitor FastEthernet0/3-Ende

IN in diesem Beispiel Ein an Port 24 angeschlossener Netzwerkanalysator überwacht den gesamten ausgehenden und eingehenden Datenverkehr von Computern, die an die ersten drei Ports des Switches angeschlossen sind. Geben Sie den Befehl ein, um die erstellte Konfiguration anzuzeigen

Erinnerung schreiben

Erste Analyse

Schauen wir uns ein Beispiel für die Analyse von Daten an, die durch ein Netzwerk laufen. Bei Verwendung zur Netzwerkanalyse Linux-Computer Dann können Sie sich mit einem Programm wie IPTraf im Statistikmodus ein umfassendes Bild über die Art und Häufigkeit der Pakete im Netzwerk machen. Verkehrsdetails können mit dem Programm Tcpdump ermittelt werden.

Das TCP/IP-Protokoll ist die Grundlage des Internets, über das Computer Informationen von überall auf der Welt senden und empfangen, unabhängig vom geografischen Standort. Der Zugriff auf einen TCP/IP-Computer in einem anderen Land ist genauso einfach wie der Zugriff auf einen Computer im Nebenzimmer. Der Zugriffsvorgang ist in beiden Fällen identisch, allerdings kann die Verbindung zu einer Maschine im Ausland einige Millisekunden länger dauern. Dadurch können Bürger aller Länder problemlos auf Amazon.com einkaufen. Aufgrund der logischen Nähe wird die Aufgabe jedoch komplizierter Informationssicherheit: Jeder Besitzer eines Computers, der irgendwo auf der Welt mit dem Internet verbunden ist, kann versuchen, eine unbefugte Verbindung mit einem anderen Computer herzustellen.

Es liegt in der Verantwortung von IT-Experten, Firewalls und Systeme zu installieren, um verdächtigen Datenverkehr zu erkennen. Die Paketanalyse ruft Informationen über die Quell- und Ziel-IP-Adressen sowie die beteiligten Netzwerkports ab. Der Wert von Netzwerkports ist dem von IP-Adressen nicht unterlegen; Dies sind die wichtigsten Kriterien zur Unterscheidung nützlichen Datenverkehrs von gefälschten und schädlichen Nachrichten, die in das Netzwerk ein- und ausgehen. Der meiste Internet-Netzwerkverkehr besteht aus TCP- und UDP-Paketen, die Informationen über die Netzwerkports enthalten, die Computer verwenden, um Datenverkehr von einer Anwendung zu einer anderen weiterzuleiten. Voraussetzung für die Firewall- und Netzwerksicherheit ist, dass der Administrator genau weiß, wie Computer und Netzwerkgeräte diese Ports nutzen.

Häfen studieren

Kenntnisse über die Grundprinzipien des Netzwerkportbetriebs sind für jeden von Nutzen Systemadministrator. Mit einem grundlegenden Verständnis der TCP- und UDP-Ports kann ein Administrator eine ausgefallene Netzwerkanwendung selbstständig diagnostizieren oder einen Computer schützen, der auf das Internet zugreift, ohne einen Netzwerktechniker oder Firewall-Berater anrufen zu müssen.

Der erste Teil dieses Artikels (bestehend aus zwei Teilen) beschreibt die grundlegenden Konzepte, die zur Diskussion von Netzwerkports erforderlich sind. Die Position der Netzwerk-Ports in der Gesamtzahl wird angezeigt Netzwerkmodell und die Rolle von Netzwerkports und NAT-Firewall (Network Address Translation) bei der Verbindung von Unternehmenscomputern mit dem Internet. Abschließend werden Netzwerkpunkte angezeigt, an denen der Netzwerkverkehr auf den entsprechenden Netzwerkports bequem identifiziert und gefiltert werden kann. Teil 2 befasst sich mit einigen Ports, die von gängigen Anwendungen und Betriebssystemen verwendet werden, und stellt einige Tools zum Auffinden offener Netzwerkports vor.

Kurzer Überblick über Netzwerkprotokolle

TCP/IP ist eine Reihe von Netzwerkprotokollen, über die Computer miteinander kommunizieren. Bei der TCP/IP-Suite handelt es sich um nichts anderes als im Betriebssystem installierte Softwarecodeteile, die den Zugriff auf diese Protokolle ermöglichen. TCP/IP ist ein Standard, also TCP/IP-Anwendungen Windows-Computer sollte erfolgreich mit einer ähnlichen Anwendung auf einem UNIX-Computer kommunizieren. In den Anfängen der Vernetzung, im Jahr 1983, entwickelten Ingenieure das siebenschichtige OSI-Verbindungsmodell, um Computernetzwerkprozesse vom Kabel bis zur Anwendung zu beschreiben. OSI-Modell besteht aus physischen, Kanal-, Netzwerk-, Transport-, Sitzungsdatendarstellungs- und Anwendungsschichten. Administratoren, die ständig mit dem Internet und TCP/IP arbeiten, befassen sich hauptsächlich mit den Netzwerk-, Transport- und Anwendungsschichten, für eine erfolgreiche Diagnose ist es jedoch erforderlich, andere Schichten zu kennen. Trotz des fortgeschrittenen Alters des OSI-Modells wird es immer noch von vielen Spezialisten verwendet. Wenn beispielsweise ein Netzwerktechniker über Layer-1- oder Layer-2-Switches spricht oder ein Firewall-Anbieter über Layer-7-Steuerung spricht, spricht er über die im OSI-Modell definierten Schichten.

In diesem Artikel geht es um Netzwerkports auf Schicht 4 – Transport. In der TCP/IP-Suite werden diese Ports von den Protokollen TCP und UDP verwendet. Aber bevor wir dazu kommen detaillierte Beschreibung Um eine Schicht zu verwenden, müssen Sie sich kurz mit den sieben OSI-Schichten und ihrer Rolle in modernen TCP/IP-Netzwerken vertraut machen.

Schichten 1 und 2: Physische Kabel und MAC-Adressen

Schicht 1, physisch, stellt das eigentliche Medium dar, durch das das Signal übertragen wird, z. B. Kupferkabel, Glasfaserkabel oder Funksignale (im Fall von Wi-Fi). Schicht 2, Datenverbindung, beschreibt das Datenformat für die Übertragung im physischen Medium. Auf Schicht 2 werden Pakete in Frames organisiert und es können grundlegende Flusskontroll- und Fehlerbehandlungsfunktionen implementiert werden. IEEE 802.3, besser bekannt als Ethernet, ist heute der am weitesten verbreitete Layer-2-Standard lokale Netzwerke. Ein typischer Netzwerk-Switch ist ein Layer-2-Gerät, über das mehrere Computer physisch verbunden sind und Daten miteinander austauschen. Manchmal können zwei Computer keine Verbindung zueinander herstellen, obwohl die IP-Adressen korrekt zu sein scheinen. Das Problem kann durch Fehler im ARP-Cache (Address Resolution Protocol) verursacht werden, was auf ein Problem auf Ebene 2 hinweist. Darüber hinaus können einige drahtlose Zugangspunkte (Access Point, AP) bieten MAC-Adressfilterung und ermöglichen nur die Verbindung zum drahtlosen AP Netzwerkadapter mit einer bestimmten MAC-Adresse.

Schichten 3 und 4: IP-Adressen und Netzwerkports

Layer 3, Netzwerk, unterstützt Routing. Bei TCP/IP wird das Routing in IP implementiert. Die IP-Adresse des Pakets gehört zur Schicht 3. Netzwerk-Router- Layer-3-Geräte, die die IP-Adressen von Paketen analysieren und die Pakete an einen anderen Router weiterleiten oder Pakete an diesen zustellen lokale Computer. Wenn im Netzwerk ein verdächtiges Paket erkannt wird, besteht der erste Schritt darin, die IP-Adresse des Pakets zu überprüfen, um den Ursprung des Pakets zu ermitteln.

Zusammen mit der Netzwerkschicht ist Schicht 4 (Transport) ein guter Ausgangspunkt für die Diagnose Netzwerkfehler. Im Internet enthält Schicht 4 die TCP- und UDP-Protokolle sowie Informationen über den Netzwerkport, der ein Paket einer bestimmten Anwendung zuordnet. Der Netzwerkstapel eines Computers verwendet eine TCP- oder UDP-Netzwerkportzuordnung zu einer Anwendung, um den Netzwerkverkehr an diese Anwendung weiterzuleiten. Beispielsweise ist TCP-Port 80 einer Webserveranwendung zugeordnet. Diese Zuordnung von Ports zu Anwendungen wird als Dienst bezeichnet.

TCP und UDP sind unterschiedlich. Im Wesentlichen bietet TCP zuverlässige Verbindung um Daten zwischen zwei Anwendungen auszutauschen. Bevor die Kommunikation beginnen kann, müssen die beiden Anwendungen eine Verbindung herstellen, indem sie den dreistufigen TCP-Handshake-Prozess abschließen. UDP ist eher ein Fire-and-Forget-Ansatz. Kommunikationszuverlässigkeit für TCP-Anwendungen wird vom Protokoll bereitgestellt und die UDP-Anwendung muss die Zuverlässigkeit der Verbindung unabhängig überprüfen.

Der Netzwerkport ist eine Zahl zwischen 1 und 65535, die angegeben und beiden Anwendungen bekannt ist, zwischen denen die Kommunikation hergestellt wird. Beispielsweise sendet ein Client normalerweise eine unverschlüsselte Anfrage an den Server an der Zieladresse am TCP-Port 80. Normalerweise sendet der Computer DNS-Abfrage an den DNS-Server an der Zieladresse am UDP-Port 53. Client und Server verfügen über eine Quell- und Ziel-IP-Adresse sowie einen Quell- und Ziel-Netzwerkport, die unterschiedlich sein können. Historisch gesehen werden alle Portnummern unter 1024 als „bekannte Portnummern“ bezeichnet und sind bei der Internet Assigned Numbers Authority (IANA) registriert. Auf einigen Betriebssystemen können nur Systemprozesse Ports in diesem Bereich verwenden. Darüber hinaus können Organisationen die Ports 1024 bis 49151 bei der IANA registrieren, um den Port ihrer Anwendung zuzuordnen. Diese Registrierung bietet eine Struktur, die dabei hilft, Konflikte zwischen Anwendungen zu vermeiden, die versuchen, dieselbe Portnummer zu verwenden. Im Allgemeinen hindert eine Anwendung jedoch nichts daran, einen bestimmten Port anzufordern, solange dieser nicht von einem anderen aktiven Programm belegt ist.

In der Vergangenheit konnte der Server an Ports mit niedriger Nummer lauschen und der Client konnte eine Verbindung an einem Port mit hoher Nummer (über 1024) initiieren. Beispielsweise könnte ein Web-Client eine Verbindung zu einem Webserver am Zielport 80 herstellen, aber einen zufällig ausgewählten Quellport, z. B. TCP-Port 1025, zuordnen. Wenn er dem Client antwortet, adressiert der Webserver das Paket an den Client mit der Quelle Port 80 und Zielport 1025. Die Kombination aus IP-Adresse und Port wird als Socket bezeichnet und muss auf dem Computer eindeutig sein. Aus diesem Grund müssen Sie beim Einrichten eines Webservers mit zwei separaten Websites auf demselben Computer mehrere IP-Adressen verwenden, z. B. Adresse1:80 und Adresse2:80, oder den Webserver so konfigurieren, dass er mehrere Netzwerkports überwacht, z als Adresse1:80 und Adresse1:81. Einige Webserver ermöglichen die Ausführung mehrerer Websites auf einem einzigen Port, indem sie einen Host-Header anfordern. Diese Funktion wird jedoch tatsächlich von der Webserveranwendung auf einer höheren Ebene 7 ausgeführt.

Als in Betriebssystemen und Anwendungen Netzwerkfunktionen verfügbar wurden, begannen Programmierer, Portnummern über 1024 zu verwenden, ohne alle Anwendungen bei der IANA zu registrieren. Wenn Sie im Internet nach einem beliebigen Netzwerkport suchen, können Sie in der Regel schnell Informationen zu Anwendungen finden, die diesen Port verwenden. Oder Sie können nach bekannten Häfen suchen und viele Websites finden, die die häufigsten Häfen auflisten.

Wenn Sie Netzwerkanwendungen auf einem Computer blockieren oder Firewall-Fehler beheben, besteht die meiste Arbeit aus der Klassifizierung und Filterung von Layer-3-IP-Adressen sowie Layer-4-Protokollen und Netzwerkports. Um schnell zwischen legitimem und verdächtigem Datenverkehr zu unterscheiden, sollten Sie lernen, die 20 häufigsten zu erkennen Die im Unternehmen weit verbreiteten TCP- und UDP-Ports.

Das Erkennen und Kennenlernen von Netzwerkports geht über das Zuweisen von Firewall-Regeln hinaus. Einige Microsoft-Sicherheitspatches beschreiben beispielsweise, wie NetBIOS-Ports geschlossen werden. Diese Maßnahme trägt dazu bei, die Verbreitung von Würmern zu begrenzen, die über Schwachstellen im Betriebssystem eindringen. Wenn Sie wissen, wie und wo diese Ports geschlossen werden müssen, können Sie Netzwerksicherheitsrisiken reduzieren und gleichzeitig die Bereitstellung eines kritischen Patches vorbereiten.

Und direkt zu Level 7

Von Layer 5 (Sitzung) und Layer 6 (Präsentation) hört man heutzutage selten, aber Layer 7 (Anwendung) ist ein heißes Thema unter Firewall-Anbietern. Der neueste Trend in der Entwicklung Netzwerk-Firewalls- Kontrolle auf Ebene 7, die die Methoden beschreibt, mit denen der Betrieb der Anwendung analysiert wird Netzwerkprotokolle. Durch die Analyse der Nutzlast eines Netzwerkpakets kann eine Firewall feststellen, ob der sie passierende Datenverkehr legitim ist. Beispielsweise enthält eine Webanforderung eine GET-Anweisung in einem Layer-4-Paket (TCP-Port 80). Wenn Ihre Firewall über Layer-7-Funktionalität verfügt, können Sie überprüfen, ob die GET-Anweisung korrekt ist. Ein weiteres Beispiel ist, dass viele Peer-to-Peer-Filesharing-Programme (P2P) Port 80 kapern können. Dadurch kann ein Außenstehender das Programm so konfigurieren, dass es einen Port seiner Wahl verwendet – höchstwahrscheinlich einen Port, der offen bleiben sollte eine bestimmte Firewall. Wenn die Mitarbeiter eines Unternehmens Zugriff auf das Internet benötigen, muss Port 80 geöffnet sein. Um jedoch legitimen Webverkehr von P2P-Verkehr zu unterscheiden, der von jemandem an Port 80 geleitet wird, muss die Firewall eine Layer-7-Kontrolle ermöglichen.

Rolle der Firewall

Nachdem wir die Netzwerkschichten beschrieben haben, können wir mit der Beschreibung des Kommunikationsmechanismus zwischen ihnen fortfahren Netzwerkanwendungen Durch Firewalls hindurch, achten Sie dabei besonders auf die verwendeten Netzwerk-Ports. Im folgenden Beispiel kommuniziert ein Client-Browser mit einem Webserver auf der anderen Seite der Firewall, so wie ein Firmenmitarbeiter mit einem Webserver im Internet kommunizieren würde.

Die meisten Internet-Firewalls arbeiten auf den Schichten 3 und 4, um eingehenden und ausgehenden Netzwerkverkehr zu prüfen und ihn dann zuzulassen oder zu blockieren. Im Allgemeinen schreibt der Administrator Zugriffskontrolllisten (ACLs), die die IP-Adressen und Netzwerkports des blockierten oder zugelassenen Datenverkehrs definieren. Um beispielsweise auf das Internet zuzugreifen, müssen Sie einen Browser starten und ihn auf die Website verweisen. Der Computer initiiert eine ausgehende Verbindung, indem er eine Folge von IP-Paketen sendet, die aus Header- und Nutzdateninformationen bestehen. Der Header enthält Routeninformationen und andere Paketattribute. Firewall-Regeln werden oft unter Berücksichtigung von Routing-Informationen geschrieben und enthalten typischerweise die Quell- und Ziel-IP-Adressen (Schicht 3) und das Paketprotokoll (Schicht 4). Beim Surfen im Web gehört die Ziel-IP-Adresse dem Webserver, und das Protokoll und der Zielport (standardmäßig) sind TCP 80. Die Quell-IP-Adresse ist die Adresse des Computers, von dem aus der Benutzer auf das Web zugreift, und die Quelle Port ist normalerweise eine dynamisch zugewiesene Nummer größer als 1024. Die nützlichen Informationen sind unabhängig vom Header und werden von der Benutzeranwendung generiert. In diesem Fall handelt es sich um eine Anfrage an den Webserver, eine Webseite bereitzustellen.

Die Firewall analysiert den ausgehenden Datenverkehr und lässt ihn gemäß den Firewall-Regeln zu. Viele Unternehmen erlauben den gesamten ausgehenden Datenverkehr aus ihrem Netzwerk. Dieser Ansatz vereinfacht die Konfiguration und Bereitstellung, verringert jedoch die Sicherheit, da keine Kontrolle über die Daten besteht, die das Netzwerk verlassen. Beispielsweise kann ein Trojaner einen Computer in einem Unternehmensnetzwerk infizieren und Informationen von diesem Computer an einen anderen Computer im Internet senden. Es ist sinnvoll, Zugriffskontrolllisten zu erstellen, um solche ausgehenden Informationen zu blockieren.

Im Gegensatz zum ausgehenden Ansatz vieler Firewalls sind die meisten so konfiguriert, dass sie eingehenden Datenverkehr blockieren. Typischerweise lassen Firewalls eingehenden Datenverkehr nur in zwei Situationen zu. Beim ersten handelt es sich um Datenverkehr, der als Reaktion auf eine vom Benutzer zuvor gesendete ausgehende Anfrage eintrifft. Wenn Sie Ihren Browser beispielsweise auf die Adresse einer Webseite verweisen, lässt die Firewall zu, dass HTML-Code und andere Komponenten der Webseite in das Netzwerk gelangen. Der zweite Fall ist die Platzierung eines internen Dienstes im Internet, wie z Mail-Server, Web- oder FTP-Site. Das Hosten eines solchen Dienstes wird üblicherweise als Portübersetzung oder Serververöffentlichung bezeichnet. Die Implementierung der Portübersetzung variiert je nach Firewall-Anbieter, das zugrunde liegende Prinzip ist jedoch dasselbe. Der Administrator definiert einen Dienst, beispielsweise TCP-Port 80 für den Webserver und einen Back-End-Server zum Hosten des Dienstes. Wenn Pakete über die diesem Dienst entsprechende externe Schnittstelle in die Firewall gelangen, werden sie vom Portübersetzungsmechanismus an einen bestimmten Computer im Netzwerk weitergeleitet, der sich hinter der Firewall verbirgt. Die Portübersetzung wird in Verbindung mit dem unten beschriebenen NAT-Dienst verwendet.

NAT-Grundlagen

Mit NAT können sich mehrere Computer in einem Unternehmen einen kleinen öffentlichen IP-Adressraum teilen. Der DHCP-Server eines Unternehmens kann eine IP-Adresse aus einem der privaten, nicht über das Internet routbaren IP-Adressblöcke zuweisen, die in Request for Comments (RFC) Nr. 1918 definiert sind. Mehrere Unternehmen können sich auch denselben privaten IP-Adressraum teilen. Beispiele für private IP-Subnetze sind 10.0.0.0/8, 172.16.0.0/12 und 192.168.0.0/16. Internet-Router blockieren alle Pakete, die an eine der privaten Adressen gerichtet sind. NAT ist eine Firewall-Funktion, die es Unternehmen ermöglicht, über private IP-Adressen mit anderen Computern im Internet zu kommunizieren. Die Firewall versteht es, ein- und ausgehenden Datenverkehr in private interne IP-Adressen zu übersetzen, sodass jeder Computer auf das Internet zugreifen kann.

Transportschicht

Die Aufgabe der Transportschicht besteht darin, Daten zwischen verschiedenen Anwendungen zu übertragen, die auf allen Netzwerkknoten ausgeführt werden. Nachdem das Paket per IP an den empfangenden Computer übermittelt wurde, müssen die Daten an einen speziellen Empfängerprozess gesendet werden. Jeder Computer kann mehrere Prozesse ausführen und eine Anwendung kann mehrere Einstiegspunkte haben, die als Ziel für Datenpakete fungieren.

Pakete, die auf der Transportschicht des Betriebssystems ankommen, werden an den Eingangspunkten verschiedener Anwendungen in mehreren Warteschlangen organisiert. In der TCP/IP-Terminologie werden diese Einstiegspunkte Ports genannt.

Übertragungskontrollprotokoll

Übertragungskontrollprotokoll(TCP) (Transmission Control Protocol) ist ein obligatorisches Protokoll des TCP/IP-Standards, definiert in RFC 793, „Transmission Control Protocol (TCP)“.

TCP ist ein Transportschichtprotokoll, das den Transport (Übertragung) eines Datenstroms ermöglicht, wobei zunächst eine Verbindung hergestellt werden muss, wodurch das Vertrauen in die Integrität der empfangenen Daten gewährleistet wird und im Falle eines Datenverlusts auch eine wiederholte Datenanforderung durchgeführt wird oder Korruption. Außerdem TCP-Protokollüberwacht doppelte Pakete und vernichtet, wenn sie erkannt werden, doppelte Pakete.

Im Gegensatz zum UDP-Protokoll garantiert es die Integrität der übertragenen Daten und die Bestätigung des Absenders über die Ergebnisse der Übertragung. Wird bei Dateiübertragungen verwendet, bei denen der Verlust eines Pakets die gesamte Datei beschädigen kann.

TCP erreicht seine Zuverlässigkeit durch:

  • Daten aus der Anwendung werden in Blöcke einer bestimmten Größe unterteilt, die gesendet werden.
  • Wenn TCP ein Segment sendet, stellt es einen Timer ein und wartet auf eine Bestätigung dieses Segments vom entfernten Ende. Wenn nach Ablauf der Zeit keine Bestätigung empfangen wird, wird das Segment erneut übertragen.
  • Wenn TCP Daten von der Gegenseite der Verbindung empfängt, sendet es eine Bestätigung. Diese Bestätigung wird nicht sofort gesendet, sondern normalerweise um den Bruchteil einer Sekunde verzögert.
  • TCP berechnet eine Prüfsumme für seinen Header und seine Daten. Hierbei handelt es sich um eine Prüfsumme, die an den Enden der Verbindung berechnet wird und deren Zweck darin besteht, etwaige Datenänderungen während der Übertragung zu erkennen. Wenn ein Segment mit einer falschen Prüfsumme eintrifft, verwirft TCP es und es wird keine Bestätigung generiert. (Es wird erwartet, dass der Absender eine Zeitüberschreitung durchführt und erneut überträgt.)
  • Da TCP-Segmente als IP-Datagramme übertragen werden und IP-Datagramme zufällig eintreffen können, können TCP-Segmente auch zufällig eintreffen. Nach Erhalt TCP-Daten Sie können deren Reihenfolge bei Bedarf ändern, sodass die Anwendung die Daten in der richtigen Reihenfolge erhält.
  • Da ein IP-Datagramm dupliziert werden kann, muss der empfangende TCP die duplizierten Daten verwerfen.
  • TCP bietet Flusskontrolle. Jede Seite einer TCP-Verbindung verfügt über einen bestimmten Pufferbereich. TCP auf der Empfangsseite erlaubt der Gegenseite nur dann, Daten zu senden, wenn der Empfänger sie in einen Puffer unterbringen kann. Dadurch wird verhindert, dass langsame Hosts ihre Puffer durch schnelle Hosts überlaufen lassen.
  • Die Sequenznummer dient zwei Zwecken:
    • Wenn das SYN-Flag gesetzt ist, ist dies der Anfangswert der Sequenznummer – ISN (Initial Sequence Number), und das erste Datenbyte, das im nächsten Paket übertragen wird, hat eine Sequenznummer gleich ISN + 1.
    • Andernfalls, wenn SYN nicht festgelegt ist, hat das erste in einem bestimmten Paket übertragene Datenbyte diese Sequenznummer.
  • Bestätigungsnummer – Wenn das ACK-Flag gesetzt ist, enthält dieses Feld die Sequenznummer, die der Empfänger beim nächsten Mal erwartet. Markiert dieses Segment als Empfangsbestätigung.
  • Die Headerlänge wird in 32-Bit-Wörtern angegeben.
  • Die Fenstergröße ist die Anzahl der Bytes, die der Empfänger ohne Bestätigung empfangen kann.
  • Prüfsumme – umfasst Pseudo-Header, Header und Daten.
  • Dringlichkeitsindikator – zeigt das letzte Byte dringender Daten an, auf die sofort reagiert werden muss.
  • URG – Dringlichkeitsflag, enthält das Feld „Urgency Indicator“; wenn =0, dann wird das Feld ignoriert.
  • ACK – Bestätigungsflag, enthält das Feld „Bestätigungsnummer“. Wenn =0, wird das Feld ignoriert.
  • PSH – das Flag erfordert einen Push-Vorgang, das TCP-Modul muss das Paket dringend an das Programm übertragen.
  • RST – Verbindungsunterbrechungsflag, wird verwendet, um eine Verbindung abzulehnen
  • SYN – Sequenznummer-Synchronisierungsflag, das beim Verbindungsaufbau verwendet wird.
  • FIN – Flag für das Ende der Übertragung auf der Seite des Absenders

Schauen wir uns die Header-Struktur an TCP mit dem Wireshark-Netzwerkanalysator:

TCP-Ports

Da mehrere Programme auf demselben Computer ausgeführt werden können, wird zur Übermittlung eines TCP-Pakets an ein bestimmtes Programm die eindeutige Kennung oder Portnummer jedes Programms verwendet.

Port-Nummer ist eine bedingte 16-Bit-Zahl von 1 bis 65535, die angibt, für welches Programm das Paket bestimmt ist.

TCP-Ports verwenden einen bestimmten Programmport, um Daten zu übermitteln, die über das Transmission Control Protocol (TCP) übertragen werden. TCP-Ports sind komplexer und funktionieren anders als UDP-Ports. Während ein UDP-Port als einzelne Nachrichtenwarteschlange und als Einstiegspunkt für eine UDP-Verbindung fungiert, ist der letzte Einstiegspunkt für alle TCP-Verbindungen eine eindeutige Verbindung. Jede TCP-Verbindung wird durch zwei Einstiegspunkte eindeutig identifiziert.

Jeder einzelne TCP-Server-Port kann anbieten allgemeiner Zugang auf mehrere Verbindungen, da alle TCP-Verbindungen durch zwei Werte identifiziert werden: eine IP-Adresse und einen TCP-Port (Socket).

Alle TCP-Portnummern, die kleiner als 1024 sind, sind reserviert und bei der Internet Assigned Numbers Authority (IANA) registriert.

UDP- und TCP-Portnummern überschneiden sich nicht.

TCP-Programme verwenden reservierte oder bekannte Portnummern, wie in der folgenden Abbildung dargestellt.

Aufbau einer TCP-Verbindung

Sehen wir uns nun an, wie TCP-Verbindungen hergestellt werden. Angenommen, ein Prozess, der auf einem Host läuft, möchte eine Verbindung mit einem anderen Prozess auf einem anderen Host herstellen. Denken Sie daran, dass der Host, der die Verbindung initiiert, als „Client“ bezeichnet wird, während der andere Host als „Server“ bezeichnet wird.

Bevor Daten übertragen werden, müssen die Parteien gemäß dem TCP-Protokoll eine Verbindung herstellen. Der Verbindungsaufbau erfolgt in drei Schritten (TCP „Triple Handshake“-Verfahren).

  • Der Anforderer (normalerweise Client genannt) sendet ein SYN-Segment, das die Portnummer des Servers angibt, mit dem der Client eine Verbindung herstellen möchte, sowie die ursprüngliche Sequenznummer (ISN) des Clients.
  • Der Server antwortet mit seinem SYN-Segment, das die ursprüngliche Sequenznummer des Servers enthält. Der Server bestätigt auch die Ankunft des SYN des Clients mit ACK (ISN + 1). Pro SYN wird eine einzelne Sequenznummer verwendet.
  • Der Client muss die Ankunft eines SYN vom Server bestätigen, wobei seine SYN-Segmente die ursprüngliche Sequenznummer des Clients (ISN+1) enthalten und ein ACK (ISN+1) verwenden. Das SYN-Bit ist auf 0 gesetzt, da die Verbindung hergestellt ist.

Sobald die TCP-Verbindung hergestellt ist, können diese beiden Hosts Daten untereinander übertragen. Da es sich bei der TCP-Verbindung um eine Vollduplex-Verbindung handelt, können sie gleichzeitig Daten übertragen.