Selbstsigniertes Zertifikat für den IIS 6.0 erzeugen und installieren

Autor: olc, MCSEboard.de

Ab und an kommt es vor, dass man „auf die Schnelle“ ein SSL-Zertifikat für den Internet Information Server (IIS) benötigt, ohne ein kommerzielles Zertifikat erwerben zu wollen oder erwerben zu können.

Um ein selbstsigniertes Zertifikat zu erzeugen und zu konfigurieren, benötigt man das „IIS Resource Kit“. Der kostenlose Download ist bei Microsoft möglich [1].

In diesem HowTo wird davon ausgegangen, dass ein IIS 6.0 schon installiert und eine Standardwebsite konfiguriert ist.

Erzeugen und Installieren des selbst signierten Zertifikats
Zuerst muss das IIS Resource Kit installiert werden. Dazu startet man die Installation über das Installationspaket „iis60rkt.exe“ und wählt die Standardoptionen.

Bei der Komplettinstallation des Resource Kits ist das benötigte Programm „SelfSSL.exe“ mit dabei. Wählt man eine angepasste Installation, muss man dieses Paket mit auswählen, um den weiteren Ausführungen folgen zu können.

Abb. 1

Nach der Installation mit den Standardoptionen steht das Programm „SelfSSL.exe“ über den Programmordner im Startmenü unter IIS Ressources --> SelfSSL --> SelfSSL (Symbol ist eine schwarze Shell) zur Verfügung oder direkt unter „C:\Programme\IIS Resources\SelfSSL\“.

Ein Aufruf von selfssl.exe /? zeigt die verfügbaren Optionen.

Exemplarisch wird mit folgender Kommandozeile

C:\Programme\IIS Resources\SelfSSL>selfssl.exe /T /N:CN=srv01.domain.de /K:2048 /V:365 /S:1 /P:443

ein Zertifikat erstellt, welches:

Abb. 2

/T – „trusted“ ist. D.h. der Server, auf dem der IIS läuft, fügt das selbst erzeuge Zertifikat zu den eigenen vertrauenswürdigen Zertifikaten hinzu. Das bedeutet nicht, dass dem Zertifikat auch auf den Clients vertraut wird, die auf den IIS zugreifen. Dies kann man nur über ein kommerzielles Zertifikat erreichen oder aber, in dem man das selbst erzeugte Zertifikat den vertrauenswürdigen Zertifikaten auf den Clients hinzufügt, die auf den IIS-Server zugreifen.

/N:CN=srv01.domain.de – auf einen Server mit dem Namen „srv01.domain.de“ ausgestellt ist. Den Namen kann man im Grunde frei wählen, sollte jedoch im besten Fall den „Full Qualified Domain Name“ (FQDN) des Server oder den NetBIOS bzw. DNS-Namen verwenden.
HINWEIS: Das „CN=“ bei der Option „/N:“ ist obligatorisch. Oftmals liest man in Newsgroups oder Foren Fehlermeldungen beim Erzeugen des Zertifikats, die darauf zurückzuführen sind, dass das „CN=“ vor dem Systemnamen nicht angegeben wurde. Eine bekannte Fehlermeldung dafür lautet „Failed to build the subject name blob: 0x80092023“. Ist doch selbsterklärend oder? ;-)

/K:2048 – eine 2048 Bit-Verschlüsselung nutzt. Hier kann man auch Werte wie 1024 oder 4096 einsetzen.

/V:365 – 365 Tage lang gültig ist. Es können beliebige Werte eingetragen werden.

/S:1 – der ersten Site des IIS zugeordnet wird. Sind mehrere Seiten auf dem IIS vorhanden, muss hier die korrekte ID eingegeben werden. Herausfinden kann man die ID beispielsweise, in dem man über die Eigenschaften der zu sichernden Webseite die Eigenschaften der Protokollierung anklickt und die Zahl hinter „W3SVC“ notiert (siehe Abbildung 2).

/P:443 – auf dem Port 443 läuft.

 

Abb. 3

Nach dem Bestätigen des Imports kann man auf der entsprechenden Webseite SSL-Anfragen stellen.

 

Hinweis!
Das Thema „Sicherheit“ wird hier bewusst ausgelassen. Jeder, der die beschriebene Möglichkeit zur Zertifikatserzeugung nutzt, sollte sich darüber bewusst sein, dass ein selbst signiertes Zertifikat nicht den gleichen Sicherheitsprüfungen standhält wie ein kommerzielles Zertifikat z.B. von Thawte oder Verisign. Interessierten sei hier [2] empfohlen.

© MCSEboard.de, olc