SelfLinux Sicherheit Grundlagen Sicherheit Abschnitt 8 | SelfLinux-0.13.0

| Grundlagen Sicherheit | Autoren Formatierung GFDL

#### 8 Die Firewall

#### 8.1 Was ist eine Firewall?

Lutz Donnerhacke schreibt in der FAQ zur Newsgroup de.comp.security.firewall

> Als Firewall bezeichnet man ein organisatorisches und technisches Konzept zur Trennung von Netzbereichen, dessen korrekte Umsetzung und dauerhafte Pflege. Ein oft benutztes Instrument der Umsetzung ist ein Stück Hardware, das zwei physisch getrennte Netzbereiche genau so verbindet, wie es im Konzept zugelassen wird. Dieses Stück Hardware bezeichnet man als Firewall-Rechner/System oder verkürzt als Firewall.

#### 8.2 Paketfilter und Kernelparameter

Der Paketfilter ist ein Teilaspekt der Firewall, der Sicherheitsrichtlinien bezüglich des zu transportierenden Netzwerkverkehrs durchzusetzen versucht und idealerweise die einzige Verbindung zu einem nicht vertrauenswürdigen Netz darstellt. Dies beinhaltet natürlich auch den Netzwerkverkehr vom und ins Internet. Anhand festgelegter Regeln werden Datenpakete (Datagramme) gefiltert, protokolliert (logging), markiert und geändert. Bei der Formulierung dieser Regeln für das Netzwerk gelten beispielsweise folgende Überlegungen:

- wer nutzt das Netzwerk?
- welche Daten dürfen welche Wege nehmen?
- welche Dienste werden von wem und für wen angeboten?
- wann werden die Dienste angeboten?
- ...

Bei der Beantwortung dieser Fragen werden auch die Maßnahmen klar, die zu treffen sind, um das Netzwerk korrekt zu konfigurieren. Es werden IP-Adressen vergeben, Routen gesetzt, Dienste in der Form konfiguriert, dass sie auch nur dort angeboten werden, wo sie genutzt werden sollen (Freigaben zum Beispiel nur im LAN und nicht im Internet). Erst wenn diese grundlegende Netzwerkkonfiguration getätigt ist, besteht die Möglichkeit, dass man die Hilfe des Paketfilters benötigt, um den Verkehr im Netzwerk zu steuern. Man sollte sich jedoch bewusst sein, dass Paketfilter auf Schicht 3 und 4 des ISO/OSI Modells arbeiten. Um Entscheidungen aufgrund von Informationen der Applikationsebene (Schicht 7) wie z.B. http oder irc treffen zu können, werden Proxies eingesetzt, die das Thema des nächsten Abschnittes sind.

#### 8.3 Proxy

Paketfilter sind aber bei weitem nicht die einzige Maßnahme, die zur Regelung des Netzwerkverkehrs zur Verfügung steht. Weitere Möglichkeiten bietet der Proxy (Application Level Gateway), der sich zwischen Client und Server befindet. Er arbeitet auf Applikationsebene (Schichten 5-7 des ISO/OSI Referenzmodells) und kennt die Interna der jeweiligen Protokolle (z.B. http, irc). Was bedeutet das? Der Client kommuniziert nicht direkt mit dem Server, sondern er verbindet sich zu dem Proxy und weist diesen an, eine Verbindung mit dem Server aufzunehmen. Der Proxy sendet und empfängt Daten vom Server, filtert diese nach bestimmten Regeln und leitet sie dann an den Client weiter, oder auch nicht. Proxies realisieren eine logische Trennung der Kommunikationspartner, es existieren also zwei unabhängige Verbindungen: Client-Proxy und Proxy-Server. Dadurch werden

- Authentifizierung und Autorisierung (benutzerabhängige Nutzung von Diensten)
- Zwischenspeicherung (Cache) von Daten
- Filterung von Dateninhalten (Virenscanner, Kindersicherung)
- Löschen der Datenherkunft (Anlegen von personenbezogenen Profildaten unterbinden)

ermöglicht. Normalerweise muss der Proxy vom Client unterstützt werden, aufgrund des Design einiger Netzwerkprotokolle lassen sich diese nicht oder nur schwer über einen Proxy leiten. Es gibt aber auch generische Proxy-Protokolle, wie zum Beispiel SOCKS5. Eine interessante Lösung stellt ein transparenter Proxy dar: Die Client-Server Verbindung wird durch den Paketfilter über den Proxy umgeleitet, ohne dass der Client davon etwas merkt.

Als repräsentative Vertreter seien an dieser Stelle

- SOCKS (Dante) als generischer Proxy
- squid und wwwoffle als HTTP-Proxies,
- Exim und pop3gwd als Email-Proxies.
- bnc und tircproxy als IRC-Proxies

genannt.

#### 8.4 Was können Firewalls und was können sie nicht?

Eine Firewall kann unter anderem...

- den Netzwerkverkehr zwischen Netzen kontrollieren und einschränken,
- Netzwerkzugriffe auf Rechner bzw. Dienste zulassen oder blockieren,
- den Netzwerkverkehr protokollieren,
- den Netzwerkverkehr manipulieren (z.B. Umleitung auf andere Rechner bzw. Proxies).

Ein Firewall kann nicht dazu beitragen,

- alle Sicherheitslücken im System / Netzwerk zu schließen,
- Konfigurations- oder Installationsfehler zu beseitigen,
- Systemanomalien (Viren, Trojaner, Würmer,...) oder Einbrüche festzustellen und
- Schwachstellen (z.B. einfache Passwörter) zu erkennen.

Keine Firewall zu haben ist in jedem Falle ehrlicher, als eine Firewall aufzustellen, und damit zu glauben, man sei sicher!