Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » Ports » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Ports
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
eldi
unregistriert
Ports Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Meine Frage:
Hallo Miteinander

Ich habe einiges im Internet gelesen, verstehe jedoch noch nicht, wie die Ports funktionieren.

Wenn ich den Webbrowser öffne und eine Seite geladen wird, wird der Port 80 geöffnet um die Anfrage zu senden, schliesst dann den Port bis er eine Antwort erhält, um den Port 80 zu öffnen?

Wie erkennt er, dass es kein Angreifer ist aber eine Antwort?

Man sagt, dass es gefährlich ist Ports zu öffnen, aber wieso? Der 80er Port ist doch in dem Sinne auch offen für die Internetkommunikation?

Wenn ich den Xampp-Server/Apache starte, wird er da einen port freigeben , von dem ich von aussen erreichbar bin?

Meine Ideen:
meine "Ideen" stehen eigentlich oben,weiss nur nicht, ob die auch korrekt sind.


Wäre euch wirklich dankbar.
18.12.2018 21:20
NixJava
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo.

Zitat:
Wenn ich den Webbrowser öffne und eine Seite geladen wird, wird der Port 80 geöffnet um die Anfrage zu senden

Normalerweise wird ein zufälliger höherer Port des Client gewählt, wenn eine Anfrage gestellt wird. Port 80 (HTTP) wird auf dem Server angesprochen.

Zitat:
schliesst dann den Port bis er eine Antwort erhält, um den Port 80 zu öffnen?

Wie erkennt er, dass es kein Angreifer ist aber eine Antwort?

Wie lange ein Port geöffnet bleibt bzw. wann dieser wieder explizit geschlossen wird, hängt vom verwendeten Protokoll ab. TCP und UDP sind die wohl verbreitesten Protokolle der Transportschicht. Deine zweite Frage ist gar nicht so leicht zu beantworten. Session-Hijacking ist in der Tat ein Problem und lässt sich am einfachsten durch verschlüsselten Datenverkehr (HTTPS) verhindern.

Zitat:
Man sagt, dass es gefährlich ist Ports zu öffnen, aber wieso? Der 80er Port ist doch in dem Sinne auch offen für die Internetkommunikation?

Das ist eben nur einer von vielen Ports. Man kann sagen, dass jede Anwendung ihre eigenen (Standard)ports besitzt. Je mehr Ports geöffnet sind, desto größer ist die Angriffsfläche für ein Angreifer.

Zitat:
Wenn ich den Xampp-Server/Apache starte, wird er da einen port freigeben , von dem ich von aussen erreichbar bin?

Ja, die Standardports sind geöffnet, wodurch du aus dem Netz erreichbar bist. Es sein denn du erlaubst nur lokalen Zugriff.
19.12.2018 18:33
eldi
Grünschnabel


Dabei seit: 07.01.2019
Beiträge: 1

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo NixJava
Vielen Dank für die Antwort, eine Frage hätte ich noch.



Wenn ich den Xampp Server starte und er den Port 80 benutzt , wieso kann ich von einem anderen Client auch gleichzeitig Xampp auf 80 benutzen, müsste er nicht belegt sein??

Ich habe das Gefühl, ich habe das Prinzip der Ports nicht verstanden. Ich dachte Ports Einstellungen nimmt man nur über den Router vor. Wenn ich also Xampp starte notiert/öffnet der Router dann diesen Port automatisch.

Kann es sein, dass es so abläuft?
Es wird nur lokal bei "einem" Client so eingestellt und ich muss dann beim Router angeben, welchen Port ich öffne, der dann an einen Client mit der IP-Adresse und Port 80 "weitergeleitet" wird.

Ich könnte also beim Router, 2 verschiedene Ports öffnen, die dann aber auf beide Clients mit verschiedenen Ip-Adressen aber dem gleichen Port haben (80) weiterleiten.

Hört sich irgendwie kompliziert an, hoffe man versteht, auf was ich hinaus will großes Grinsen
07.01.2019 15:51 eldi ist offline Beiträge von eldi suchen Nehmen Sie eldi in Ihre Freundesliste auf
NixJava
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo.

Zitat:
Ich dachte Ports Einstellungen nimmt man nur über den Router vor.

Das ist nicht richtig. Zwar kann ein Router spezielle Aufgaben bzgl. Ports wahrnehmen, zum besseren Verständnis lassen wir den aber mal außen vor.

Man darf Hardwareports (Schnittstellen) auch nicht mit den Netzwerkports verwechseln.

Stell dir vor, du hast zwei PCs direkt miteinander verbunden, ohne Router oder sonstigen Schnickschnack (eigentlich würde sogar ein Rechner ausreichen, bei dem sich dann alles lokal abspielt). Rechner A ist der Server und stellt einen HTTP-Server über Port 80 bereit. Wenn du Apache startest, fordert das Programm beim Betriebssystem einen Port (in diesem Fall 80) an, um eingehende Verbindungen entgegenzunehmen. Danach befindet sich der HTTP-Server im "Wartezustand".

Ein Browser auf Rechner B möchte nun den Service des Webservers auf Rechner A in Anspruch nehmen. Auch dazu fordert dieser bei seinem Betriebssystem einen Port an. Dieser ist in der Regel ein hoher, zufälliger Port X. Über diesen schickt der Browser dann ein Datenpaket mit folgenden Informationen (vereinfacht dargestellt):

code:
1:
2:
3:
4:
5:
Quelladresse Rechner B (z.B. IP-Adresse)
Zieladresse Rechner A (z.B. IP-Adresse)
Quellport X (zufällig)
Zielport 80
Ich hätte gerne die Datei /verzeichnis/beispiel.txt

Gleichzeitig bleibt Port X auf Rechner B geöffnet, um die Antwortpakete zu empfangen.

Der Webserver nimmt diese Anfrage entgegen, weil er auf dem Port 80 lauscht, an den das Paket gerichtet ist. Die Antwort hat folgende Gestalt (Server tauscht die Adressen und Ports):

code:
1:
2:
3:
4:
5:
Quelladresse Rechner A
Zieladresse Rechner B
Quellport 80
Zielport X
Inhalt der Datei /verzeichnis/beispiel.txt

Mal angenommen, Rechner B will nun eine weitere Datei vom Server anfordern, obwohl der erste Datentransfer noch nicht abgeschlossen ist. Dazu stellt der Browser eine neue Verbindung her, also auch einen anderen Port Y.

code:
1:
2:
3:
4:
5:
Quelladresse Rechner B
Zieladresse Rechner A
Quellport Y (zufällig, aber von X verschieden)
Zielport 80
Ich hätte gerne die Datei /verzeichnis/anderes_beispiel.txt

Die folgende Antwort des Servers ist nun an Port Y gerichtet. Der Browser weiß daher, welche Antwortpakete zu welcher Anfrage gehören. Ist ein Datentrasfer abgeschlossen, wird der Client-Port nach einiger Zeit geschlossen und damit freigegeben. Er kann dann für neue Anfragen benutzt werden.
07.01.2019 17:40
NixJava
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Vielleicht noch zur Ergänzung: Die Anfrage eines Clienten "belegt" einen Server-Port nicht. Der Webserver kann mehrere Anfragen parallel bearbeiten. Wäre auch blöd, wenn ich durch meine Suchmaschinenanfrage den Service für andere Nutzer blockiere. Augenzwinkern
07.01.2019 17:48
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Theoretische Informatik » Ports