Forum

Netzwerke, Ports, Netzwerk-Dienste und Firewalls
Januar 06, 2006, 14:59:31
Hier möchte ich in mehreren Schritten versuchen, den Zusammenhang von Netzwerken, Ports, Netzwerk-Diensten, Firewalls und anderen Begriffen zu erklären.
Mir ist klar, daß ich dabei stellenweise stark vereinfachen muß und daß die gegebenen Antworten nicht für alle Fälle stimmen. Bezogen sind die Antworten auf Nicht-Windows-Computer im privaten Umfeld.

Auch wird es sicher noch einige Veränderungen benötigen, daher habe ich die Diskussion in das Board "Lochkarten" ausgelagert.

1. Wie werden Daten über ein Netzwerk ausgetauscht und was für Sorten von Datenpaketen gibt es?
Zwei Computer in einem Netzwerk oder dem Internet können sich untereinander Daten zuschicken. Dazu werden kleine Datenpakete zum anderen Computer geschickt. In diesen Paketen ist neben den eigentlichen Daten auch Absender- und Ziel-Adresse angegeben. Zu einer solchen Adresse gehört die IP-Adresse und die Port-Nummer. Die Port-Nummer dient dazu, unterschiedliche Anwendungen auf einem Computer zu unterscheiden. Z.B. kann man Daten zu der Mail-Server-Software eines Computers oder zu der Webserver-Software des gleichen Computers schicken. Mit der Port-Nummer wird angegeben, wohin die Daten gelangen sollen.

Es gibt bezogen auf einen Computer vier verschiedene Arten von Datenpaketen:
Datenverkehr, der vom eigenen Rechner initiiert wird, besteht aus ausgehenden Datenpaketen und eingehenden Datenpaketen als Antwort darauf. Z.B. beim Surfen im WWW schickt der Browser Datenpakete zunächst hinaus zum Webserver ("schick mir die Seite http://www.apfelinsel.de") und erhält üblicherweise dann Datenpakete vom Webserver zurück, die dann die Webseite enthalten.
Diese Datenpakete, die durch ausgehende Verbindungen initiiert wurden, sind üblicherweise erwünscht und es gibt dort keinen Grund diese zu verhindern.

Datenverkehr, der von außen initiiert wird, besteht zunächst einmal aus eingehenden Paketen, die ungefragt an den eigenen Rechner geschickt werden, und evtl. aus ausgehenden Paketen, in denen der eigene Rechner antwortet. Wenn man keine Software auf dem eigenen Computer hat, die von anderen Rechnern aus benutzt werden soll (z.B. Webserver), dann sind diese Pakete üblicherweise unerwünscht.

2. Was ist ein Netzwerk-Dienst?
Ein Netzwerk-Dienst ist ein Programm, welches fremden Computern eine Dienstleistung bereit stellt (z.B. Webserver). Diese Programme senden nicht von sich aus Daten an andere Computer, sondern sie warten auf eine Anfrage von außen. Dazu "lauschen" sie an einem selbst gewählten Port, d.h. alle ungefragt von außen kommenden Datenpakete, die an diesen Port geschickt werden, werden an das Programm weitergeleitet und dieses schickt evtl. eine Antwort zurück. Unter OS X ist bei einer Standard-Installation zunächst einmal kein Netzwerk-Dienst gestartet.

3. Was passiert mit unerwünschten Datenpaketen von außen in meinem Rechner und sind diese gefährlich?
Wenn solche Pakete im eigenen Rechner ankommen, dann wird nachgeschaut, ob unter der angegebenen Port-Nummer auf dem eigenen Rechner überhaupt ein Netzwerk-Dienst (z.B. Webserver) angemeldet ist. Wenn es keinen Netzwerk-Dienst gibt, also keine Software an diesem Port auf Anfragen horcht, dann wird das Datenpaket verworfen.
D.h. aber auch: Nur wenn ein Netzwerk-Dienst auf dem eigenen Rechner gestartet ist, dann können eingehende Datenpakete ein Ziel finden. Ein Blockieren eines Ports, der nicht benutzt wird, ist daher sinnlos.
Hat man aber einen Netzwerk-Dienst absichtlich gestartet, dann ist das Blockieren des entsprechenden Ports eigentlich auch sinnlos, denn dann ist der Netzwerk-Dienst ja nicht erreichbar.
Es gibt nur den Fall eines schlecht konfigurierten Netzwerk-Dienstes. Z.B. möchte man, daß der eigene Rechner einen Webserver zum Testen hat, der aber nur vom eigenen Rechner aus zu benutzen ist. Dann wäre es möglich durch Blockieren des Ports zu erreichen, daß der Webserver von außen nicht erreichbar ist. Besser wäre es allerdings den Webserver von vorneherein so zu konfigurieren, daß er nur auf Anfragen des eigenen Rechners antwortet, dann wäre ein Blockieren von Ports ebenfalls sinnlos.

4. Was ist eine Firewall/Private Firewall?
Eine Firewall ist streng genommen ein Konzept, mit dem der Datenverkehr zum und vom eigenen Rechner gefiltert wird. Eine Firewall besteht dabei aus drei Dingen:
  • Einer Hardware, die zwischen eigenem Rechner und zu trennendem Netzwerk geschaltet wird.
  • Eine Software, die die Datenpakete aufgrund ihrer Quell-/Zieladresse und ihres Inhaltes filtern kann.
  • Einem Satz von Filterregeln.
Eine solche echte Firewall ist aber zum einen sehr teuer und zum anderen auch nur von Fachleuten richtig zu konfigurieren. Daher findet man diese praktisch nur im Firmen-Umfeld.
Eine Private Firewall (PF) ist eigentlich eine Software (Paketfilter), die auf dem zu schützenden Computer läuft und die Datenpakete anhand ihrer Quell-/Zieladresse filtert, d.h. blockiert oder durchläßt. Fast immer ist eine PF gemeint, wenn jemand "Firewall" schreibt oder sagt.

5. Ist es sinnvoll, allen eingehenden Verkehr mit einer PF zu blockieren?
Dies ist oft die Grundeinstellung von PF. Mit eingehendem Verkehr sind üblicherweise nur(!) die eingehenden Pakete gemeint, die zu einer von außen iniitierten Verbindung gehören. Eingehende Pakete aus von innen initiierten Verbindungen werden nicht geblockt, sonst könnte man ja keine E-Mails mehr abrufen, nicht mehr im Internet surfen etc. Es geht also nur um Datenpakete, die ungefragt an uns geschickt werden.
Solange man keinen Netzwerk-Dienst zur Verfügung stellt, kann man natürlich problemlos alle Pakete blocken. Nur bringt das keinen Vorteil, denn wenn kein Netzwerk-Dienst läuft, würden die Pakete sowieso verworfen.
Hat man aber einen Netzwerk-Dienst laufen, der von außen erreichbar sein soll, dann muß man speziell für diesen ein Loch in seine PF machen, damit diese Pakete nicht auch blockiert werden.
Hat man also keinen schlecht konfigurierten Netzwerk-Dienst laufen (s.o.), dann bringt die PF keinen Vorteil, eher den Nachteil, daß man diese evtl. konfigurieren muß (Löcher) und daß diese PF evtl. Sicherheitslücken haben und somit zusätzliche Angriffspunkte liefern.

6. Ist der Stealth-Modus sinnvoll?
Oft wird vorgeschlagen, grundsätzlich alle Pakete, die ungefragt an einen geschickt werden, zu blockieren. Auch ping-Pakete, die zum Testen einer Verbindung benutzt werden, sollte man blockieren. Hierdurch würde der Rechner daher für einen Angreifer "unsichtbar", d.h. er würde nicht mehr feststellen können, daß hinter einer bestimmten IP-Adresse ein anderer Rechner erreichbar ist.
Das ist zwar ein schönes Bild, das sehr leicht verständlich ist, aber leider ist es falsch, nicht standard-konform und auch noch kontraproduktiv:
  • Laut Standard müssen Geräte am Netzwerk auf ping-Pakete antworten. Man kann natürlich nicht dazu gezwungen werden, aber es ist unhöflich.
  • Der Computer ist in Wirklichkeit nicht unsichtbar, sondern liefert einem potentiellen Angreifer sogar mehr Informationen, als wenn die ping-Pakete zurückgeschickt würden. Warum? Wenn sich hinter einer IP-Adresse aktuell kein Rechner verbirgt, dann schickt der letzte Computer auf dem Weg zu dieser IP-Adresse die Meldung zurück "Adresse nicht erreichbar". Damit weiß an potentieller Angreifer, aha, hinter dieser IP verbirgt sich niemand. Ist unter der IP-Adresse aber ein Rechner vorhanden und blockiert der die Antworten, kommt keine Antwort zurück. D.h. wenn keine Antwort kommt, weiß eine potentieller Angreifer, aha, da ist ein Computer mit einer PF, die evtl. eigene Sicherheitslücken hat, mal testen... Ein potentieller Angreifer erhält also durch Blockieren der ping-Pakete die zusätzliche Information, daß eine PF läuft.
  • Da keine Antworten zurück kommen, geht ein normaler Rechner davon aus, daß diese verloren gegangen sind und schickt sie erneut. Dadurch werden die Netzwerkleitungen stärker belastet.

7. Ich habe einen NATenden Router, brauche ich zusätzlich eine PF?
Da Privatanwender üblicherweise von ihrem Provider nur eine IP-Adresse bekommen, die Anwender aber trotzdem zu Hause evtl. mehrere Computer vernetzen wollen, kommen NATende Router zum Einsatz. Dabei haben die lokalen Rechner und der Router alle eine IP-Adresse, die nur von privaten Netzwerken benutzt wird. Der Router hat zusätzlich noch die externe vom Provider zugewiesene IP-Adresse.
  • erwünschter von innen initiierter Datenverkehr: Ein lokaler Computer soll eine Website darstellen. Dazu schickt der Computer die Anfrage zum Router, der merkt sich, von welchem Computer die Anfrage kam und stellt diese Anfrage nun selber mit seiner externen IP-Adresse an den richtigen Webserver. Wenn dieser die Antwort (also die Webseite) schickt, weiß der Router noch, wer die Anfrage ursprünglich gestellt hatte und leitet die Antwort an den entsprechenden Computer weiter.
  • unerwünschter von außen initiierter Datenverkehr: Von außen wird ein Datenpaket geschickt und landet beim Router. Da es keine vorherige Anfrage von einem lokalen Computer gab, weiß der Router nicht, an welchen lokalen Computer er die Daten weiterschicken soll und verwirft sie. Ungefragte Datenpakete können daher einen Computer hinter einem NATendem Router nicht erreichen. Vorausgesetzt, man hat den Router nicht absichtlich so konfiguriert, daß er ungefragte Datenpakete an einen speziellen Computer weiterleiten soll. Dies macht man aber nur, wenn der betreffende Computer einen für von außen nutzbaren Netzwerk-Dienst laufen hat und dann sind die ungefragten Pakete ja erwünscht.
Wofür dann noch eine PF, die diese ungefragten Pakete am Computer selber abwehrt? Ungefragte Pakete können nur noch von den anderen lokalen Computern stammen.

8. Warum wird eine Private Firewall immer so propagiert??
Das hat zwei Gründe:
  • Die meisten dieser Ratschläge stammen ursprünglich aus der Windows-Welt und werden dann ohne Reflexion auf alle Systeme übertragen. Unter Windows laufen nach einer Standard-Installation jede Menge Dienste und es ist praktisch nicht möglich dafür zu sorgen, daß kein Dienst läuft. In der Kombination, daß diese Dienste oft unnötigerweise am Netzwerk horchen und Sicherheitslücken aufweisen, ist es absolut wichtig, diese Ports zu sperren.
  • Der zweite Grund sind die Firmen, die PF herstellen. Die wollen Geld verdienen. Und daher sind diese PFs auch mit allerlei Diagrammen, Berichten, Popup-Fenstern etc. vollgestopft, damit der Benutzer merkt, aha ich habe mein Geld für etwas sinnvolles ausgegeben, schon wieder 254 "Angriffe" abgewehrt.

Vielen Dank auch an jochen, mbs und radneuerfinder für Anregungen und Verbesserungen.
« Letzte Änderung: Januar 23, 2006, 09:16:56 von MacFlieger »
_______
Was ist die Mehrheit? Mehrheit ist der Unsinn, Verstand ist stets bei wen´gen nur gewesen." -- Schiller