Der Microsoft ISA-Server 2004

25.11.2004
Der ISA-Server 2004 vereint Firewall, VPN-Manager, Proxy und ein Intrusion-Detection-System unter einem Dach. Wir stellen die wichtigsten Funktionen des Internet Security & Acceleration Servers und deren Zusammenspiel vor. Von Thomas Wölfer

Microsoft vereint in der Produktbezeichnung des ISA-Servers die Begriffe Security und Acceleration. Für die Sicherheit sorgen eine Firewall, VPN-Funktionen und das Intrusion Detection System. Beschleunigung erfährt der Webzugriff durch den integrierten Proxy.

Die Firewall ist als Application Layer Firewall ausgelegt, die sowohl vor externen als auch vor internen Angriffen schützt. Dabei untersucht der ISA-Server auch den Verkehr bei Internet-Protokollen wie HTTP und kümmert sich nicht nur um das reine Blockieren von Ports oder IP-Adressen. Auch bei VPN-Verbindungen greift die Firewall, so dass Angriffe über das VPN blockiert werden.

Zunächst fällt beim ISA-Server aber die Benutzeroberfläche ins Auge: Diese gestattet einen sehr guten Einblick in die Konfiguration und den aktuellen Zustand des Servers. Im Wesentlichen handelt es sich um eine stark ausgebaute Management-Konsole, der man die Herkunft als MMC-Modul nicht mehr ansieht. Zu jedem Zeitpunkt bietet sie aufgaben- und zielorientierte Hilfetexte und Dokumentationen an, es gibt Live-Updates der Filterzustände, Einblicke in das Ereignisprotokoll und andere Protokolle und vieles mehr.

Die primäre Konfiguration des ISA-Servers erfolgt über einen Satz an Vorlagen: Der Server lässt sich damit auf einen Schlag als Webproxy, äußere Firewall einer DMZ oder für andere typische Aufgaben beziehungsweise Netzwerk-Layouts konfigurieren. Durch die Aktivierung einer solchen Vorlage stellt der ISA-Server automatisch passende Firewall-Regeln ein, legt zulässige Netzwerkverbindungen fest und erledigt weitere notwendige Schritte: Im Wesentlichen ist der ISA-Server also durch die Auswahl einer einzigen Vorlage komplett konfiguriert - danach beschränkt sich die administrative Tätigkeit auf die Anpassung an lokale Gegebenheiten.

Die Firewall

Die Firewall im ISA-Server bietet eine ganze Reihe von Schlüsselfunktionen. Primär ist das die reine Firewall-Funktionalität, die mehrschichtig angelegt ist. Dabei gibt es zunächst den Stateful Inspection Filter, der den grundlegenden Teil der Firewall ausmacht. Der Administrator wählt anhand der Eigenschaften der Paket-Header aus, welche Pakete durchgelassen werden und welche nicht. Überprüfbare Eigenschaften sind beispielsweise Ausgangs- oder Ziel-IP und Quell- oder Zielport. Zusätzlich bietet der ISA-Server einen dynamischen Filter an: Im Gegensatz zur statischen Filterung können die benötigten Ports je nach Bedarf geöffnet und danach wieder geschlossen werden, man muss die Ports also nicht von Hand freigeben oder schließen.

Man kann mit dem Paketfilter also beispielsweise Pakete blockieren, die von einer bestimmten IP-Adresse kommen oder die an eine bestimmte Zieladresse gerichtet sind. Dabei sind auch Kombinationen möglich - das unterscheidet sich nicht wesentlich von den Filtermöglichkeiten der Basis-Firewall im Windows 2003 Server (Webcode: p1231). Das Praktische an solchen Filtern ist die Tatsache, dass bestimmte Dienste feste Ports verwenden. Man kann also zum Beispiel den Zugriff auf FTP verbieten, indem man einfach Port 20 blockiert, oder man verhindert den Zugriff auf SMTP-Server durch einen Block von Port 25.

Der Circuit Filter im ISA-Server dient der Sicherung von Internet-Protokollen und Diensten wie Telnet, Real Audio und IRC. Dabei untersucht ISA im Wesentlichen Informationen, die während des TCP-Handshakes (Webcode: p209) ausgetauscht werden.

Die Application Layer Firewall

Mit dem Paketfilter kann man nur einzelne Pakete isoliert behandeln - nicht aber die Daten untersuchen, die sich aus den Einzelpaketen tatsächlich ergeben. Um diese Daten zu verarbeiten, muss die Firewall sich mit den Protokollen der Applikationsschicht auskennen.

Ist das der Fall, kann man mit einer Application Layer Firewall tatsächlich einzelne Elemente der Kommunikation blockieren: Statt per Paketfilter den Zugriff auf FTP vollständig zu blockieren, ist es nunmehr möglich, auch einzelne Control-Messages von FTP zu verbieten: "Get" lässt man vielleicht zu, "Put" hingegen nicht.

Mit anderen Worten: Sie können die Kommunikation auf Basis von Strings innerhalb der Kommunikation auf Anwendungsebene kontrollieren - damit ist es möglich, unerwünschte Kontrollwörter zu unterbinden und damit die Möglichkeit von Angriffen durch Buffer Overflows zu minimieren: Je weniger Kommandos zugelassen werden, um so geringer ist die Chance, dass ein Angreifer einen Buffer Overflow ausnutzen kann.

Der ISA-Server bietet dabei die Möglichkeit, auf Applikations-, Kommando- und Datenebene zu filtern. Das ermöglicht den Einsatz des Filters für VPN, HTTP, FTP, SMTP, POP3, DNS, H.323, RPC und gestreamte Inhalte.

Application Layer - SMTP

Die Application Layer Firewall geht noch viel weiter - man muss das Thema nur lange genug durchdenken, um auf immer neue Anwendungsmöglichkeiten zu kommen. So kann man den ISA-Server mit der Application Layer Firewall beispielsweise auch als einfachen Mail-Filter verwenden: Attachments blockieren, Mails anhand bestimmter Schlüsselwörter verwerfen oder bestimmte Absender vollständig blockieren. Bei Attachments kann man natürlich auch nur bestimmte Arten filtern, wie zum Beispiel ausführbare Dateien - und das alles erledigen Sie direkt im SMTP-Anwendungsfilter. Dabei sollten Sie aber eines im Auge behalten: Wenn man Mails per SMTP-Filter aussortiert, dann ist es sicherlich keine gute Idee, diese einfach wegzuwerfen.

Der SMTP-Filter kennt darum zwei weitere Behandlungsarten: Die Mail lässt sich ins Badmail-Verzeichnis verschieben oder an eine konfigurierbare Adresse weiterleiten. Die Überwachung des Badmail-Verzeichnisses erfordert Handarbeit - und Mails, die eventuell mit Viren belastet sind, werden dort auch nicht vernünftig gefiltert. Daher empfiehlt es sich, für solche Zwecke einen festen Mail-Account einzurichten, der über einen vollständigen Virenschutz verfügt, und die vom Filter beanstandeten Mails an diesen Account weiterzuleiten. Auf diese Weise stehen Mails, die vielleicht irrtümlich gefiltert wurden, trotzdem zur Verfügung.

Server-Publishing

Im Umfeld der Firewall-Funktion ist auch das so genannte ServerPublishing zu sehen. Dabei wird ein Server aus dem internen Netz über den ISA-Server für den Zugriff aus dem Internet freigegeben. Der ISA-Server tritt dann nach außen für den eigentlichen Server auf. Über Veröffentlichungsregeln legt der Administrator fest, wer welche Server sehen darf - und wer nicht.

Wenn man will, kann man beispielsweise die Veröffentlichung eines Webservers als eine Art Reverse-Proxy betrachten, wie das zum Beispiel mit dem Proxy-Server Squid möglich ist. Die Granularität ist dabei jedoch stark eingeschränkt. Im Gegensatz zu den vielfältigen Möglichkeiten des Squid als Reverse-Proxy kann man beim ISA-Server im Wesentlichen die freigegebenen Rechner und dort noch freigegebene Verzeichnisse festlegen: Bestimmte Verhaltensweisen auf Basis von MIME-Types oder Ähnliches sind nicht möglich.

Die ISA-Server Firewall integriert sich auch mit den VPN-Diensten des Windows Server 2000 und 2003. Dadurch kann man die Firewall des ISA-Servers ebenfalls auf VPN-Verbindungen anwenden. Es lässt sich beispielsweise relativ einfach festlegen, auf welche Ressourcen oder Protokolle ein Benutzer, der über eine VPN-Verbindung mit dem LAN verbunden ist, zugreifen darf.

Der ISA-Server kennt verschiedene Arten von Clients beziehungsweise Client-Anfragen. Die einfachste Art davon ist der SecureNAT-Client, der für beliebige Rechner im internen Netz gedacht ist, die TCP verstehen und eine Außen-Verbindung herstellen wollen.

Die Konfiguration solcher SecureNAT-Clients ist denkbar einfach: Man muss nur das Standard-Gateway des Client-Rechners auf die IP des ISA-Servers setzen - mehr nicht. Der Server kümmert sich dann um die Adressumsetzung für den Client und schützt dabei die Kommunikation des Clients durch die Firewall. SecureNAT-Clients können allerdings den Webcache des ISA-Servers nicht verwenden: Entweder man verbindet die Clients mit dem Cache des ISA-Servers, oder man lässt sie per SecureNAT arbeiten - beides gleichzeitig geht nicht.

Der Webproxy-Client

Der andere gängige Client des ISA-Servers ist der Webproxy-Client. Ähnlich wie bei SecureNAT handelt es sich dabei nicht um eine spezielle Client-Software: Der Client muss jedoch über einen Webbrowser verfügen, der HTTP/1.1 unterstützt. Das ist bei Netscape ab Version 2 und bei IE ab Version 3.02 der Fall - es gibt da also keine großen Verfügbarkeitsprobleme.

Auf Seiten des ISA-Servers werden dabei die Protokolle HTTP, HTTPS und FTP unterstützt: Soll der Client nur surfen und manchmal auch downloaden können, ist der Webproxy-Client völlig ausreichend.

Alle gängigen Browser unterstützen die Einrichtung eines Proxy-Servers für Webanfragen, man ist nicht auf den Internet Explorer festgelegt. Der IE ist allerdings in der Lage, eine Authentifizierung auf Benutzerebene durchzuführen - wenn man diese unbedingt nutzen will, kann man nicht auf andere Browser ausweichen.

Eine Besonderheit der Firewall betrifft SSL: Wenn man über den ISA-Server einen Webserver publiziert, der Daten per SSL erhalten soll, kann der ISA-Server den eingehenden SSL-Datenstrom entschlüsseln, die Daten per "Stateful Inspection" untersuchen und sie dann an den eigentlichen Webserver weiterleiten. Auf diese Weise sind publizierte Webserver auch vor Angriffen geschützt, die sich in verschlüsselten Verbindungen befinden.

ISA-Server als Webcache

Der Webcache ist der Teil des ISA-Servers, der für den Namensbestandteil "Acceleration" verantwortlich zeichnet. Beim Webcache handelt es sich um eine Konfiguration, bei der auch eine einzelne Netzwerkkarte ausreichend ist - in diesem Fall erfolgt der Zugriff auf das Internet durch ein bereits vorhandenes Gateway.

Der Trick am Webcache ist folgender: Man konfiguriert die Clients so um, dass sie ihre Anfragen an den ISA-Server richten und nicht an den eigentlichen Server im Internet. Der ISA-Server selbst übernimmt nun die Anfrage, leitet sie an den Webserver weiter und nimmt die Antwort entgegen, um sie lokal zwischenzuspeichern und dann an den Client zu schicken. Dieses Vorgehen bringt zunächst einmal keine wirkliche Verbesserung der Performance, denn schließlich müssen Anfrage und Antwort nun einen zusätzlichen Rechner durchlaufen.

Betrachtet man das Verfahren jedoch innerhalb eines LANs, kommen die Vorteile ans Licht. Je mehr Personen mit einem Rechner im Web surfen, umso größer ist die Chance, dass der Webcache eine angeforderte Ressource bereits zuvor heruntergeladen hat. Ist das der Fall, liefert er die Ressource direkt aus, statt sie erst aus dem Internet zu holen.Der Webcache holt nur noch dann Daten aus dem Internet, wenn er sie nicht bereits zuvor geladen hat, oder wenn die Daten veraltet sind. Ob sie veraltet sind, ermittelt er anhand der vom Webserver mitgelieferten Eigenschaften der angeforderten Ressource. Diese Art des Caching dient nicht nur der Verbesserung der Performance, sondern spart auch Traffic und damit bares Geld.

Der Webcache im ISA-Server hat noch eine weitere Funktion, die ausschließlich für die Verbesserung der Performance gedacht ist: Man kann den Cache auf Basis eines Zeitplans im Voraus füllen. In diesem Fall holt sich der ISA-Server zu festgelegten Zeitpunkten bestimmte Ressourcen automatisiert aus dem Web, die auf jeden Fall verfügbar sind und schnell an lokale Clients ausgeliefert werden können. Anders als im normalen Betrieb haben dann alle angeschlossenen Benutzer einen beschleunigten Zugriff - der erste Benutzer wird nicht ausgeschlossen.

Der ISA-Server ist einfach zu managen: Eingehender und ausgehender Traffic lässt sich durch Policies kontrollieren. Grundlage kann dabei die Gruppenzugehörigkeit, der User-Account, die Anwendung, Quelle oder Ziel, ein bestimmter Inhalt und auch ein Zeitplan sein. Für die Einstellung der diversen Parameter bietet der ISA-Server passende Wizards.

Ist der ISA-Server einmal eingerichtet, lässt sich die komplette Konfiguration in einer XML-Datei speichern und bei Bedarf später wieder einlesen. Auf diese Weise ist nicht nur eine Sicherheitskopie der Konfiguration möglich, man kann damit auch mehrere identisch konfigurierte Firewalls aufsetzen.

Der ISA-Server lässt sich komplett ins Active Directory integrieren. In diesem Fall verwendet er auch die AD-Datenbank zur Benutzer-Authentifizierung. Das ist jedoch nicht zwingend notwendig - wer will, kann auch eine separate User-Datenbank auf dem ISA-Server selbst benutzen, darüber hinaus sind weitere Authentifizierungsmethoden wie zum Beispiel Radius verfügbar.

Nach der Installation fließt kein Traffic

Direkt nach der Installation des ISA-Servers taucht dann ein kleines Problem auf: Es existieren keinerlei Verbindungsmöglichkeiten - nichts, aber auch gar nichts, funktioniert. Und das ist gut so, denn dadurch ist der Rechner zunächst einmal völlig abgesichert.

Der Grund dafür: Der ISA-Server aktiviert nach der Installation eine Firewall-Standardrichtlinie. An dieser Richtlinie kann man als Benutzer nichts verändern - abgesehen von der Art und Weise der Protokollierung. Gleichzeitig handelt es sich dabei um die Regel, die zuletzt abgearbeitet wird. Da direkt nach der Installation noch keine weitere Firewall-Richtlinie besteht, kommt nur diese Standardrichtlinie zum Tragen - und sie blockt jeden nicht explizit erlaubten Verkehr ab. Egal von welcher Quelle und zu welchem Ziel - durch die Standardregel kommt nichts durch.

Um Traffic zu gestatten, muss also in einem ersten Arbeitsschritt nach der Installation alles, was erlaubt sein soll, ausdrücklich erlaubt werden. Die unverrückbare Grundregel beim ISA-Server heißt: Alles, was nicht erlaubt ist, ist verboten.

Eine neue Regel, mit der dann auch Kommunikationsverbindungen möglich sind, entwirft man mit den ISA-Server-Wizards. Diese kennen von Haus aus alle wichtigen Protokolle und stellen für den lokalen Rechner, das Internet und andere wichtige Elemente entsprechende Icons zur Verfügung.

tecchannel-Praxis "Sicher ins Internet"

tecChannel.de ist die Nummer eins der Online-Fachmedien in Deutschland (IVW 1/04). Auf www.tecChannel.de finden Sie mehr als 1.700 Beiträge und über 14.000 News zu allen Themen der IT. Das kostenlose Online-Programm wird ergänzt durch das noch umfangreichere kostenpflichtige tecCHANNEL-Premium-Programm und die tecCHANNEL-Compact-Buchreihe.

Die neue Ausgabe von tecCHANNEL-Praxis "Sicher ins Internet, Mail, Fax & VPN" beschreibt die Installation und Wartung eines kompletten Kommunikationsservers auf Linux-Basis, mit Sicherheits- und Internetfunktionen. Gerade kleinere Unternehmen behandeln die Inter- und Intranet-Kommunikation nach wie vor stiefmütterlich, wie eine aktuelle Studie des Statistischen Bundesamtes belegt.

tecCHANNEL-Praxis "Sicher ins Internet, Mail, Fax & VPN" bietet bislang ungesicherten Firmen eine Komplettlösung zum Abschotten ihres Netzzugangs.

Die neue tecCHANNEL-Compact erhalten Sie für 12,95 Euro im Bahnhofshandel sowie im Flughafen-Buchhandel. Sie können tecCHANNEL-Compact auch jederzeit direkt im Online-Shop unterwww.tecChannel.de/shop bestellen. Sie erhalten das Buch dann versandkostenfrei zugeschickt.

Zur Startseite