Firewall für Anfänger: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
Malte (Diskussion | Beiträge)
Zur Kategorie Netzwerk hinzugefügt
Malte (Diskussion | Beiträge)
Alten Artikel in Firewall eingepflegt, und neue Einleitung verfasst.
Zeile 1: Zeile 1:
Dieser Artikel richtet sich an Arch–Nutzer, die noch nie eine Firewall unter Linux benutzt haben.
{{unvollständig}}


Wer schonmal mit Windows zu tun hatte, kennt sicherlich Personal Firewalls. Ein möglich buntes Programm ermöglicht es einem, einzelnen Programmen den Zugriff auf das Internet zu gewähren bzw. zu verweigern. Unter einem Mehrbenutzersystem wie Linux hingegen filtert eine Firewall in der Regel auf Paketebene. Pakete sind die kleinste Dateneinheit, die beim Netzwerkverkehr auf einmal versendet wird. In der Regel greift man unter Linux auf iptables zurück.
Eine Firewall ist ein Programm, welches es ermöglicht, nur ausgewählte Netzwerkkommunikation zuzulassen; und ist ein wichtiger Teil eines Sicherheitskonzeptes auch für den heimischen PC. Grundlegend wird dabei zwischen zwei Typen von Firewalls unterschieden, deren Vor– und Nachteile kurz angeschnitten werden:


== Firewall zurücksetzen ==
Die evtl. von Windows bekannten „Personal Firewalls“ ermöglichen es, entweder nur einzelnen Programmen Zugriff aufs Internet zu gewähren (so genanntes Whitelisting, nur bestimmten Programmen diesen zu verweigern nennt man Blacklisting). Vorteil einer Personal Firewall ist, dass sie oft sehr einfach zu installieren ist, und meist eine bunte Oberfläche mitbringt.
Der Aufbau neuer Regeln sollte immer damit beginnen, alle vorhandenen Regeln zu löschen (flush):


iptables -F
Unter Linux hingegen kommt meist eine so genannte „Paketfilterfirewall“ zum Einsatz. Diese analysiert und filtert die kleinste über Netzwerke versendete Dateneinheit, die so genannten Pakete. as wohl größte Problem von Personal Firewalls ist, dass sie in Händen eines unversierten Nutzers oft dazu neigen, mehr Schaden als Nutzen anzurichten. Die ständigen Fragen, wenn ein Systemdienst oder ein Teil eines Programms (Updatefunktionen sind unter Windows oft in einer Zweiten Programmdatei), werden lästig, und irgendwann erlaubt der genervte Nutzer jedem Programm Internetzugriff.


== Standardverhalten festlegen ==
Die Paketfilterfirewall hingegen (Unter Linux ist dies [[iptables]]) fragt nicht nach. Sie arbeitet einfach Ihren Regelsatz ab, und entscheidet so, ob Daten übermittelt werden, oder nicht. Und da ist auch schon der große Unterschied zu sehen:
Bei iptables Stellen alle Regeln Ausnahmen vom Standardverhalten ab. Dabei stellt man die Richtlinien OUTPUT, INPUT und FORWARD ein. Wie die Namen suggerieren, steht OUTPUT für alle ausgehenden Pakete, INPUT für alle eingehenden und FORWARD für alle Weitergeleiteten. Solange es sich nicht um eine Firewall oder einen Router handelt, sollte FORWARD auf das Verhalten DROP gesetzt werden, d.h. alle Pakete werden einfach „fallen gelassen“.


iptables -P FORWARD DROP
Statt dass dem Browser Zugriff auf das Internet gewährt wird, wird Zugriff auf das World Wide Web (Das Protokoll http) zugelassen. Für einen Anfänger ist es jedoch einfacher, statt auch den ausgehenden Datenverkehr zu filtern, nur den am Rechner ankommenden Datenverkehr zu filtern. Und somit z.B. Zugriff auf Windows Dateifreigaben zu gewähren, eventuelle Hintertüren jedoch am Funktionieren zu hindern. Eins noch vorweg: Eine Firewall ist eine Software. Software wird von Menschen geschrieben, und Menschen machen Fehler. Einen 100%igen Schutz wird es saher niemals geben.


Eine einfache Firewall erlaubt allen Ausgehenden Datenverkehr:
iptables -P OUTPUT ACCEPT
Im Gegensatz dazu wird aller Eingehender Verkehr Blockiert, und nur, wenn benötigt, einzelne Ports geöffnet:
iptables -P INPUT DROP
== Einzelne Ports öffnen ==
In vielen Fällen kann es hilfreich sein, auch auf Desktopmaschinen mit [[SSH]] zuzugreifen. Dafür muss der Port 22 für TCP geöffnet werden:
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
Zudem ist es in heterogenen Netzwerken meist erwünscht, Datenverkehr zum [[Samba|Sambaserver]] zuzulassen:
iptables -A INPUT -p tcp --dport 139 -j ACCEPT
iptables -A INPUT -p tcp --dport 445 -j ACCEPT
== Alle Aufgebauten Verbindungen Durchwinken ==
Damit nicht eingehender Verkehr, der als Antwort auf ausgehenden Verkehr erfolgte, blockiert wird, werden die entsprechenden Pakete anhand ihres Status durchgewinkt:
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
== Lokalen Netzwerkverkehr zulassen ==
Viele Systemdienste verlassen sich darauf, dass sie über die Loopback–Schnittstelle kommunizieren können. Daher sollte jeglicher Datenverkehr über die Schnittstelle lo zugelassen werden:
iptables -A INPUT -i lo -j ACCEPT


[[Kategorie:Netzwerk]]
[[Kategorie:Netzwerk]]

Version vom 4. Januar 2013, 11:16 Uhr

Dieser Artikel oder Artikelabschnitt ist noch nicht vollständig!


Eine Firewall ist ein Programm, welches es ermöglicht, nur ausgewählte Netzwerkkommunikation zuzulassen; und ist ein wichtiger Teil eines Sicherheitskonzeptes auch für den heimischen PC. Grundlegend wird dabei zwischen zwei Typen von Firewalls unterschieden, deren Vor– und Nachteile kurz angeschnitten werden:

Die evtl. von Windows bekannten „Personal Firewalls“ ermöglichen es, entweder nur einzelnen Programmen Zugriff aufs Internet zu gewähren (so genanntes Whitelisting, nur bestimmten Programmen diesen zu verweigern nennt man Blacklisting). Vorteil einer Personal Firewall ist, dass sie oft sehr einfach zu installieren ist, und meist eine bunte Oberfläche mitbringt.

Unter Linux hingegen kommt meist eine so genannte „Paketfilterfirewall“ zum Einsatz. Diese analysiert und filtert die kleinste über Netzwerke versendete Dateneinheit, die so genannten Pakete. as wohl größte Problem von Personal Firewalls ist, dass sie in Händen eines unversierten Nutzers oft dazu neigen, mehr Schaden als Nutzen anzurichten. Die ständigen Fragen, wenn ein Systemdienst oder ein Teil eines Programms (Updatefunktionen sind unter Windows oft in einer Zweiten Programmdatei), werden lästig, und irgendwann erlaubt der genervte Nutzer jedem Programm Internetzugriff.

Die Paketfilterfirewall hingegen (Unter Linux ist dies iptables) fragt nicht nach. Sie arbeitet einfach Ihren Regelsatz ab, und entscheidet so, ob Daten übermittelt werden, oder nicht. Und da ist auch schon der große Unterschied zu sehen:

Statt dass dem Browser Zugriff auf das Internet gewährt wird, wird Zugriff auf das World Wide Web (Das Protokoll http) zugelassen. Für einen Anfänger ist es jedoch einfacher, statt auch den ausgehenden Datenverkehr zu filtern, nur den am Rechner ankommenden Datenverkehr zu filtern. Und somit z.B. Zugriff auf Windows Dateifreigaben zu gewähren, eventuelle Hintertüren jedoch am Funktionieren zu hindern. Eins noch vorweg: Eine Firewall ist eine Software. Software wird von Menschen geschrieben, und Menschen machen Fehler. Einen 100%igen Schutz wird es saher niemals geben.