Der Begriff Firewall wird teilweise unterschiedlich verwendet. Manchmal werden Firewalls mit Paketfiltern gleichgesetzt. An sich sind Firewalls jedoch ein Massnahmenpaket zur Durchsetzung von Sicherheitsrichtlinien in einem Netzwerk. Die dafür nötige Software umfaßt meist auch einen Paketfilter, beschränkt sich aber nicht nur darauf. Firewalls können an unterschiedlichen Punkten eines Netzwerkes eingesetzt werden und können auf unterschiedlichen Ebenen des Netzwerkverkehrs wirken. Je nachdem ist der Schutz den sie bieten unterschiedlich. Außerdem ist auch die Art der verwendeten Policy entscheidend für die Schutzwirkung.
Grundsätzlich wird bei Sicherheitsmassnahmen oft zwischen Whitelisting und Blacklisting unterschieden. Whitelisting bedeutet, alle erlaubten Aktionen werden aufgelistet. Alles was nicht erlaubt ist, ist automatisch verboten. Blacklisting ist das Gegenteil: Alle verbotenen Aktionen werden aufgelistet, alles was nicht verboten ist, ist erlaubt. Whitelisting ist der grundsätzlich sicherere, weil restriktivere Ansatz. Whitelisting kann auch gegen noch unbekannte Gefahren schützen, wozu Blacklisting nicht in der Lage ist.
Obwohl Blacklisting vom Ansatz her unsicherer als Whitelisting ist, findet man in der Praxis dennoch viele Beispiele für Blacklisting. Virenscanner arbeiten klassischerweise mit Blacklisting: Alle bekannten Viren werden in eine Datenbank eingetragen. Jede zu öffnende Datei wird mit der Datenbank abgeglichen. Aus diesem Grund können Virenscanner nur bekannte Viren erkennen und versagen bei noch unbekannten Schädlingen. Ein Virenscanner der Whitelisting umsetzen will, müßte eine Liste aller erlaubten Programme haben. Wird ein Programm gestartet, das nicht auf dieser Liste ist, würde der Start verweigert werden. Dieser Ansatz wäre sicherer, bedeutet jedoch viel Pflegearbeit, da jedes Programm das benutzt werden soll, erst in die Datenbank aufgenommen werden muß. Aus diesem Bequemlichkeitsgrund arbeitet viel Sicherheitssoftware dennoch mit dem Blacklistingansatz, wodurch ihre Schutzwirkung natürlich begrenzt wird.
Regelsätze für Firewalls sollten generell so restriktiv wie möglich formuliert werden. Auf desto mehr Kriterien eine Firewall überprüft, desto eher kann sie eine möglicherweise auch noch unbekannte Gefahr abwehren. Restriktive Regelsätze bedeuten aber oft auch einen Mehraufwand für die Pflege der Regelsätze. Eine hohe Sicherheit steht daher oft der Bequemlickeit im Wege und oft ist in der Theorie jeder bereit etwas für Sicherheit zu tun, in der Praxis siegt dann aber doch die Bequemlichkeit (oder betriebswirtschaftlich gesehen der Faktor Zeit/Geld).
Ein Paketfilter überprüft Eigenschaften eines TCP/IP Paketes wie etwa Quelladresse, Zieladresse und Zielport. Anhand dieser Kriterien wird unterschieden ob ein Paket erwünscht ist oder ausgefiltert wird. Da auf Pakete meist auch Antworten erwartet werden, besitzen viele Paketfilterfirewalls zusätzlich die Fähigkeit Antwortpakete auf erwünschte Netzwerkpakete zu erkennen und ebenfalls automatisch durchzulassen. Solche Paketfilter-Firewalls werden auch als Stateful Firewall bezeichnet, da sie sich den Status einer Verbindung merken.
Paketfilterfirewalls dienen hauptsächlich dazu den Zugriff auf Netzwerkdienste zu beschränken, damit zum Beispiel nicht aus dem Internet heraus auf den internen Fileserver zugegriffen werden kann. Sie bieten keinen Schutz zum Beispiel gegen Trojaner die in eine Email eingebettet sind. Wenn Mailverkehr durch die Paketfilterfirewall hindurch gestattet ist, kann der Paketfilter nicht entscheiden, ob sich in einer Email ein Trojaner befindet oder nicht, da er den Inhalt des Mailverkehrs nicht analysiert.
Mit Paketfilterfirewalls läßt sich nicht nur der Zugriff auf interne Dienste von außen beschränken, sondern auch Policies für das erreichen externer Dienste von innen durchsetzen. Sollen aus Sicherheitsgründen verschiedene Netzwerkdienste oder bestimmte IP-Adressen für die internen Clients gesperrt bleiben, läßt sich durch einen Paketfilter auch Netzwerkverkehr von Innen nach Außen filtern. Auch dabei kann nur nach Kriterien wie IP Adresse oder Zielport gefiltert werden. Da heutzutage fast alle Dienste des Internets auch über Weboberflächen zugänglich sind und das erreichen von Webservern meist erlaubt sein soll, ist diese Methode der Einschränkung oft nur unzureichend (aber besser als nichts).
Der größte Nachteil an Paketfiltern ist also der Umstand, daß sich mit Paketfiltern nur typische TCP/IP Charakeristika wie IP-Adresse und Portnummer filtern lassen, aber Inhalte von Anwendungsprotokollen wie etwa SMTP oder HTTP nicht auswertbar sind. Paketfilter arbeiten also auf den Ebenen 3 und 4 der OSI-Level.
Paketfilter können sowohl mit einem Blacklisting, als auch mit einem Whitelisting Ansatz betrieben werden. Da Whitelisting sicherer ist und im Fall von Paketfiltern im allgemeinen keine Nachteile hat, empfiehlt es sich in jedem Fall eine Whitelisting Policy zu verwenden.
Die Nachteile klassischer Paketfilter sollen durch Application Level Firewalls, manchmal auch als (Application-) Gateways bezeichnet, ausgeglichen werden. Application Level Firewalls werden fast immer zusammen mit einem Paketfilter verwendet. Application Level Firewalls arbeiten wie der Name sagt auf der Ebene der Anwendungsprotokolle, also auf den Ebenen 5 bis 7 der OSI-Layer. Da es hier viele unterschiedliche Anwendungsprotokolle gibt, wird hierfür meist je Anwendungsprotokoll, welches gefiltert werden soll, eine eigene Software eingesetzt.
Application Level Firewalls sind meist nichts anderes als Proxy-Server für das jeweilige Anwendungsprotokoll. Eine Application Level Firewall für HTTP-Verkehr ist daher im allgemeinen ein HTTP-Proxy, über den sämtlicher HTTP-Verkehr zur Analyse weiter geleitet wird. Eine Application Level Firewall für SMTP ist ein Mailserver, der SMTP-Verkehr annimmt, analysiert und dann an den eigentlichen Mailserver weiterleitet. Auf dem Proxy kann dann beispielsweise eine Analyse auf Schadsoftware stattfinden. Der Vorteil von Application Level Firewalls ist die zusätzliche Analyse der Anwendungsdaten. Ihr Nachteil ist jedoch, das pro verwendeten Anwendungsprotokoll auch eine eigene Software nötig ist um Anwendungsdaten zu analysieren. Außerdem sind Application Level Firewalls deutlich komplexer als einfache Paketfilter. Application Level Firewalls werden meist nach dem Blacklisting Konzept betrieben.
Viele Firewalls setzen neben Paketfiltern und Application Level Firewalls noch weitere Schutzmaßnahmen wie etwa Einbruchserkennungssysteme ein. Netzwerk-Einbruchserkennungssysteme analysieren sämtlichen Netzwerkverkehr auf Anomalien um Angriffe zu erkennen. Dabei gibt es 2 Ansätze: Der erste Ansatz besteht darin, daß das Einbruchserkennungssystem eine Weile lang den Datenverkehr analysiert, wobei es lernt, was normal ist. Anschließend werden alle Abweichungen als Angriff gewertet (Whitelistingansatz). Die zweite Möglichkeit besteht darin, daß das Einbruchserkennungssystem eine Datenbank bekannter Angriffsmuster besitzt und den Netzwerkverkehr mit dieser Datenbank vergleicht (Blacklisting). Die meisten Einbruchserkennungssystem arbeiten mit einer Datenbank. Ein bekanntes datenbankbasiertes Einbruchserkennungssystem, welches OpenSource ist, ist Snort.
Manche Einbruchserkennungssysteme sind so erweitert, das diese einen erkannten Angriff auch direkt abblocken können, indem Paketfilterregeln neu gesetzt werden. Dabei kann jedoch auch die Gefahr bestehen, daß ein Angreifer absichtlich Angriffspakete von einer gefälschten IP Adresse schickt um Verbindungen von dieser IP Adresse zu blockieren. Dadurch kann es passieren das erwünschte Verbindungen nicht mehr funktionieren, weil diese fälschlich als Angriffsadresse erkannt wurden. Die meisten Einbruchserkennungssystem melden jedoch nur erkannte Angriffsversuche ohne selbst Gegenmaßnahmen einzuleiten.
Firewalls sollen Netzwerke schützen und werden daher meist an den Grenzen eines Netzwerkes installiert, das heißt im Allgemeinen auf einem Router. Typischerweise besitzt eine Firewall daher mehrere Netzwerkinterfaces, wobei jedes Interface an ein anderes Subnetz angeschlossen ist. Grundsätzlich ist es jedoch auch möglich Firewalls auf Bridges zu installieren. Dadurch kann eine Firewall in eine bestehende Netzwerkinfrastruktur integriert werden, ohne das Netz in neue Subnetze aufteilen zu müssen. Zusätzlich bietet eine Firewall auf einer Bridge auch die Möglichkeit auf OSI-Layer 2, also zum Beispiel nach MAC-Adressen zu filtern.
Die einfachste Variante einer Firewall, ist die Installation der Firewall an der Grenze zwischen internen Netzwerk und Internet, welches folgende Grafik zeigt.
Manchmal möchte man innerhalb des eigenen Netzwerkes Serverdienste auch für Clients aus dem Internet bereit stellen. In diesem Fall muß man seine Firewall so konfigurieren, daß Verbindungen von außen auf den entsprechenden Server zugelassen werden. Dadurch wird die Sicherheit der Firewall geschwächt. Es wird eine Lücke geöffnet, durch die potientiell auch Angreifer in das Netzwerk gelangen können. Damit ein Angreifer der sich des Servers ermächtigt hat, nicht Zugriff auf das gesamte Netzwerk erhält, wird für diesen Zweck eine sogenannte Demilitarisierte Zone (DMZ) errichtet. Diese läßt sich vergleichen mit einer Burg, die eine äußere und eine innere Burgmauer besitzt. Außenstehende Händler dürfen in die äußere Burgmauer gelangen. Sollte sich dennoch mal ein Räuber unter den Händlern verstecken, hat er es zwar hinter die äußere Burgmauer geschafft, jedoch nicht bis ganz ins Innere, zu welchen auch die Händler keinen Zutritt haben. Für eine DMZ muß also eine zweite Firewall konfiguriert werden. Dieses Szenario zeigt die folgende Abbildung.
In diesem Fall dürfen interne Systeme, sowohl das Internet, als auch den Server in der DMZ kontaktieren. Der Server in der DMZ darf jedoch keine internen Systeme kontaktieren. Systeme aus dem Internet dürfen den DMZ-Server kontaktieren, jedoch nicht die internen Systeme. Wird nur ein einzelner Server für die DMZ benötigt, ist es mitunter übertrieben 2 komplett getrennte Firewallsysteme zu nutzen. Stattdessen ist es auch möglich eine einzelne Firewall mit 3 Netzwerk-Interfaces zu verwenden und einen entsprechenden Regelsatz zur Trennung der 3 Zonen. Dieser Aufbau beschreibt die folgende Grafik.
Ein Konzept mit 2 getrennten Firewalls für ein DMZ ist aber in jedem Fall sicherer, da auch die Firewall selbst ein Angriffsziel sein kann.
Generell lassen sich mit dieser Methode unterschiedliche Sicherheitszonen bilden, die jeweils voneinander abgeschottet werden können. Dies kann auch für ein Wlan sinnvoll sein, da ein Wlan potientiell unsicherer ist, als ein Kabelgebundenes Netzwerk.