Secure Socket Layer mit dem Internet Information Server

IIS 7: SSL einrichten

09.04.2008 von Martin Kuppinger
Die vollkommen überarbeitete Benutzeroberfläche der IIS 7 bringt viele Vorteile. Viele der gewohnten Aktivitäten werden nun aber auch in grundlegend anderer Weise durchgeführt. Ein Beispiel dafür ist die Einrichtung von verschlüsselten Verbindungen via SSL.

SSL/TLS (Secure Sockets Layer/Transport Layer Security), meist nur kurz als SSL bezeichnet, ist der Standard für die sichere Kommunikation mit Websites im Internet. Dabei müssen zwei Bereiche unterschieden werden:

Sichere Kommunikationskanäle zu Websites sind heute die Regel. Die auf X.509v3-Zertifikaten basierende Client-Authentifizierung in Verbindung mit SSL ist dagegen auch jetzt noch eher selten.

Wenn man die sichere Kommunikation mit Servern näher betrachtet wird übrigens schnell deutlich, dass dort auch eine Authentifizierung erfolgt – aber eben des Servers durch sein digitales Zertifikat, das von einer vertrauenswürdigen Stammzertifizierungsstelle ausgestellt wurde.

Die Arten von Zertifikaten

Bei den IIS 7 lassen sich drei Arten von Zertifikaten unterscheiden, die in unterschiedlichen Situationen zum Einsatz kommen:

Die Verwaltung der Zertifikate erfolgt im Bereich Serverzertifikate der Features, die bei einem Webserver aufgerufen werden kann.

Zertifikate: Die Serverzertifikate werden auf der Seite Serverzertifikate des Verwaltungsprogramms der IIS 7.0 konfiguriert.

Öffentliche Zertifikate – Zertifikatsanforderung

Bei öffentlichen Zertifikaten erzeugen Sie über die Aktion Zertifikatanforderung erstellen zunächst eine Anforderung für ein solches Zertifikat, das dann an eine Stammzertifizierungsstelle gesendet wird.

Anforderung: Für Internet-Zertifikate muss zunächst eine Zertifikatsanforderung erstellt werden.

Bei dieser sind die für Zertifikatsanforderungen üblichen Informationen anzugeben, beginnend bei einem common name als Name für das Zertifikat. Hier wird der FQDN (Fully Qualified Domain Name) des Servers verwendet, für den das Zertifikat gelten soll.

Im nächsten Schritt können Sie den Kryptografiedienstanbieter auswählen, der für das Zertifikat verwendet werden soll. Hier gibt es die Unterstützung für RSA- und DH-Algorithmen, also Rivest/Shamir/Adelman oder Diffie/Hellman. Außerdem lässt sich die Bitlänge einstellen. In der Regel können Sie aber die Standardeinstellungen übernehmen.

Abschließend muss noch der Dateiname festgelegt werden. Es empfiehlt sich, den Dateinamen mit dem vollständigen Pfadnamen zu erstellen, weil es in anderen Situationen beim Windows Server 2008 Probleme geben kann, die Datei wiederzufinden.

Anforderung und Abholung

Der nächste Schritt ist die eigentliche Anforderung des Zertifikats. Dazu arbeiten Sie über die Web-Schnittstelle der von Ihnen gewählten Zertifizierungsstelle. Über diese geben Sie den Text der Zertifikatsanforderung ein. Diesen können Sie aus der bei der Erstellung der Zertifikatsanforderung generierten Datei kopieren.

Kryptisch: Der Text für die Zertifikatsanforderung kann aus der erstellten Datei kopiert werden.

Abhängig von der Zertifizierungsstelle unterscheidet sich die weitere Prozedur. In jedem Fall kann man gleich oder – bei öffentlichen Zertifikaten die Regel – zu einem späteren Zeitpunkt das Zertifikat abholen. Die Datei muss die Endung .cer haben, um bei den IIS importiert werden zu können.

Um diese Datei bei den IIS 7 zu importieren, wird die Aktion Zertifikatanforderung abschließen ausgewählt. Dort kann auf die Datei zugegriffen werden. Für die Datei muss noch ein Anzeigename angegeben werden, unter dem das Zertifikat in der Liste der Serverzertifikate dann geführt wird.

Domänenzertifikate

Deutlich einfacher ist die Anforderung von Domänenzertifikaten, da in diesem Fall mit einer Online-Zertifizierungsstelle zusammengearbeitet wird. Falls übrigens innerhalb einer Active Directory-Umgebung eine Offline-CA genutzt wird, muss die Anforderungsprozedur verwendet werden, die oben für die Internet-Zertifikate beschrieben wurde. Sie funktioniert auch mit den Zertifikatsdiensten des Windows Server 2008.

Online: Bei Domänenzertifikaten muss nur die Online-Zertifizierungsstelle für eine sofortige Ausstellung der Zertifikate angezeigt werden.

Im ersten Schritt sind wieder die Informationen für das Zertifikat einzugeben. Im zweiten Schritt wählen Sie jedoch die Online-Zertifizierungsstelle aus. Außerdem legen Sie hier gleich den Anzeigenamen fest. Nach dem Anklicken von Fertig wird das Zertifikat direkt erzeugt und in die Liste der Serverzertifikate aufgenommen.

Selbstsignierte Zertifikate

Noch einfacher ist die Erstellung von selbstsignierten Zertifikaten über die Aktion Selbstsigniertes Zertifikat erstellen. Hier ist nur ein Anzeigename anzugeben. Das Zertifikat wird dann automatisch für den lokalen Server erstellt und in der Liste der Serverzertifikate abgelegt.

Detailliert: Die Details zu einem Serverzertifikat.

Bei den dort gespeicherten Zertifikaten ist beim Blick auf Ausgestellt von erkennbar, wer die Zertifikate erstellt hat, denn dort wird die Zertifizierungsstelle ausgegeben. Selbstsignierte Zertifikate erscheinen mit dem lokalen Computernamen - ansonsten ist die CA zu sehen.

Weitere Informationen zu einem Zertifikat kann man sich über Anzeigen darstellen lassen. Für die Zertifikate gibt es noch weitere Optionen wie Exportieren und Entfernen sowie, bei Zertifikaten von einer Zertifizierungsstelle, auch Erneuern, um das Zertifikat aktualisieren zu lassen.

SSL konfigurieren

Bei der Konfiguration von SSL gibt es einen kleinen Trick, den man beachten muss. Neben der Konfiguration der SSL-Einstellungen pro Website muss man zunächst die Bindungen der Website anpassen, so dass auch HTTPS-Bindungen unterstützt werden.

Dazu wechselt man auf die Ebene der Site. Dort findet sich bei den Aktionen der Befehl Bindungen. Dort kann man Bindungen hinzufügen. Bei der Definition einer neuen Bindung muss man zunächst den Typ der Bindung auswählen. Falls SSL verwendet werden soll, ist der Typ https. Der Port wird standardmäßig gesetzt, kann aber ebenso wie die IP-Adresse angepasst werden.

Bindung: Um SSL nutzen zu können, muss man zunächst eine HTTPS-Bindung für die Website definieren.

Im unteren Bereich ist zusätzlich das SSL-Zertifikat auszuwählen, das zum Einsatz kommen soll. Dieses müssen Sie zuvor bei den Serverzertifikaten eingerichtet haben. Über den Punkt Anzeigen lassen Sie sich ein Zertifikat noch einmal anzeigen, um das richtige von mehreren zur Auswahl stehenden Zertifikaten zu wählen.

Die SSL-Einstellungen

Anschließend können Sie die SSL-Einstellungen setzen. Diese finden sich bei der Site ebenso wie bei den untergeordneten Teilbereichen bis hin zu einzelnen Dateien.

Abgesichert: Über die SSL-Einstellungen kann konfiguriert werden, dass für den Zugriff auf eine Website SSL erforderlich ist.

Bei den Einstellungen legen Sie zunächst fest, ob SSL erforderlich ist oder nicht. Falls SSL erforderlich sein soll, können Sie die Verwendung von 128-Bit-SSL erzwingen.

Außerdem können Sie Einstellungen zu den Client-Zertifikaten vornehmen. Diese können ignoriert, akzeptiert oder erzwungen werden. Falls mit Client-Zertifikaten gearbeitet werden soll, muss Sie die Unterstützung für diese Form der Authentifizierung als Rollendienst bei den IIS einrichten.

Im Grundsatz ist der Umgang mit SSL bei den IIS 7 recht einfach. Die Herausforderung ist, dass die Einstellungen nun über gleich drei Bereiche verteilt sind und man zudem bei Nutzung von Clientzertifikaten auch noch darauf achten muss, dass der entsprechende Rollendienst eingerichtet ist. Als Problem kann sich auch noch die Delegierung der Features erweisen, wenn diese für die SSL-Einstellungen auf Schreibgeschützt gesetzt ist und damit eine Anpassung unterbunden wird. (Kuppinger/mha)