Was bedeutet "eingehender" und "ausgehender" Verkehr?

20

Ich habe viele Ressourcen gesehen, die erläutern, wie die Firewall eines Servers so eingerichtet wird, dass eingehender und ausgehender Datenverkehr über HTTP-Standardports ( 80und 443) zugelassen wird. Ich kann jedoch nicht herausfinden, warum ich einen dieser Ports benötige. Muss ich beide entsperren, damit eine "normale" Website funktioniert? Damit das Hochladen von Dateien funktioniert? Gibt es Situationen, in denen es ratsam wäre, eine zu entsperren und die andere gesperrt zu lassen?

Es tut mir leid, wenn das eine grundlegende Frage ist, aber ich konnte sie nirgendwo erklären (auch ich bin kein englischer Muttersprachler). Ich weiß, dass auf einer "regulären" Website der Client immer derjenige ist, der eine Anfrage initiiert. Daher gehe ich davon aus, dass ein Webserver eingehenden Datenverkehr auf diesen Ports akzeptieren muss, und mein gesunder Menschenverstand sagt mir, dass der Server eine Antwort senden darf ohne etwas anderes zu entsperren (sonst wäre es nicht sinnvoll, zwei Arten von Regeln zu haben). Ist das korrekt?

Aber was ist ein ausgehender Web- (Dienst-) Verkehr und wie würde er genutzt? AFAIK: Wenn der Server eine Verbindung mit einem anderen Computer herstellen möchte, ist der spezifische Port derjenige am anderen Ende (dh der Zielport wäre 80). An seinem Ende könnte jeder freie Port verwendet werden (der Quellport wäre zufällig) ). Ich kann HTTP-Anfragen von meinem Server aus öffnen ( wgetz. B. mithilfe von), ohne die Blockierung aufzuheben. Daher gehe ich davon aus, dass meine Konzepte "eingehend" und "ausgehend" irgendwie falsch sind.

mgibsonbr
quelle

Antworten:

22

"Eingehend" und "ausgehend" beziehen sich auf die betreffende Maschine.

"Eingehend" bezieht sich auf Pakete, die woanders anfangen und an der Maschine ankommen, während "ausgehend" sich auf Pakete bezieht, die an der Maschine anfangen und woanders ankommen.

Wenn Sie auf Ihren Webserver verweisen, akzeptiert dieser meist eingehende Verbindungen zu seinem Webservice und stellt nur gelegentlich (oder möglicherweise nie) ausgehende Verbindungen her.

Wenn Sie auf Ihren Web-Client verweisen, werden meist ausgehende Verbindungen zu anderen Diensten hergestellt und nur gelegentlich (oder möglicherweise nie) eingehende Verbindungen akzeptiert.

Klar wie Schlamm jetzt?

Michael Hampton
quelle
3
Ich würde Folgendes hinzufügen: Um eine Antwort an Ihren Client zu senden, müssen Sie ausgehenden Datenverkehr für hergestellte Verbindungen zulassen. Wenn also ein Client eine Verbindung zu Ihrem Port 80 herstellt, kann Ihr Server mit jedem Port des Clients kommunizieren.
Hex
1
Ganz richtig. Eine zustandsbehaftete Firewall sollte dies jedoch automatisch handhaben.
Michael Hampton
1
Mein Webserver sollte also eingehende Verbindungen an den Ports entsperren 80und 433muss sich nicht um ausgehende Verbindungen an diesen Ports kümmern, sondern muss ausgehende Verbindungen im dynamischen / kurzlebigen Portbereich zulassen. Ist das richtig? Und ich bin immer noch ein bisschen verwirrt mit der ausgehenden Sache: Wenn ein Webclient versucht, eine Verbindung zu einer Site herzustellen, ist der Zielport 80, aber der Quellport kann jeder sein. Welchen Port würde eine Firewall in diesem Computer berücksichtigen, wenn sie sich für das Blockieren / Entsperren entscheidet?
mgibsonbr
@mgibsonbr Jetzt schwenkst du in die Theorie. Wir bevorzugen hier praktische Fragen. :)
Michael Hampton
1
In Anbetracht der Tatsache, dass Sie nur begrenzte Kenntnisse über Firewalls und Datenverkehr haben, würde ich die Verwendung eines Firewall-Builder-Skripts empfehlen. UFW ist ein guter Anfang. Die Webseite des Projekts lautet help.ubuntu.com/community/UFW . Schauen Sie sich diese an, und Sie erhalten ein grundlegendes Verständnis für Firewalls und das Verkehrsmanagement. Wenn Sie dennoch Hilfe benötigen, werde ich versuchen, Ihre Frage detailliert zu klären.
Hex
6

In Ihrem Fall müssen Sie nur eingehende Anfragen an Port 80 weiterleiten.

Wenn eine Verbindung hergestellt wird, lässt die Firewall automatisch Pakete an den Port des Clients zurück. Sie müssen dafür keine Regeln erstellen, da die Firewall dies weiß.

demütig
quelle
1
Dies beantwortet nicht seine ganze Frage, aber ja, wenn er eine Stateful Firewall verwendet, werden nur 80 und 443 benötigt.
89c3b1b8-b1ae-11e6-b842-48d705
3

Ohne einen Zusammenhang damit zu haben, was der von Ihnen gelesene Text bedeutet, wenn er sich auf ausgehenden Webdienstverkehr bezieht, gehe ich in meiner Antwort wie folgt vor:

  1. Sie haben eine Firewall am Eingang / Ausgang Ihres Netzwerks.

  2. Die Firewall ist vollständig gesperrt und lässt KEINEN ein- oder ausgehenden Datenverkehr zu.

  3. Damit Ihre internen Kunden externe Websites durchsuchen können, müssen Sie eine Regel für ausgehende Webdienste konfigurieren, mit der sie eine Verbindung zu diesen externen Websites herstellen können.

Im einfachsten Sinne würde die Regel ungefähr so ​​lauten:

JEDER interne Host zu JEDEM externen Host, auf dem das Ziel = TCP-Port 80 ist, dann ALLOW.

Joeqwerty
quelle
Daraus entstand der Ausdruck "ausgehender Webdienstverkehr" . In meinem speziellen Fall versuche ich, die Firewall in einer Serverinstanz (IBM Cloud) einzurichten. Bei der Standardinstallation wurden die meisten Dinge blockiert (ich konnte Apache ausführen, aber nicht von außen darauf zugreifen), und ich möchte wissen, welche kriminellen Dinge ich entsperren sollte, um Seiten bedienen und Datei-Uploads empfangen zu können (über den Browser des Clients). usw. Und ich konnte nicht sagen, ob dieses bestimmte Stück auf meinen Fall zutrifft oder nicht - da es nur das Wie und nicht das Warum angibt.
mgibsonbr