Microsofts Webserver (Microsoft Internet Information Services) wird oft bei der Installationen einer Server-Rolle automatisch mitinstalliert. So wird bei beim Setup von PowerShell Web Access, oder bei der Konfiguration einer Zertifizierungsstellen Webregistrierung (CA) auch IIS installiert. In diesem Artikel beschränke ich mich auf die alleinige Bereitstellung eines Webservers unter Windows Server mit dem Protokoll HTTPS.
Installation der Rolle Web-Server
Die Installation kann im Server-Manager (Rollen hinzufügen) oder in der Befehlszeile erfolgen. Ich empfehle einen One-Liner in PowerShell:
Install-WindowsFeature -Name Web-Server -IncludeManagementTools
Fertig. Kein Klicken und Suchen in der grafischen Oberfläche.
Überprüfen der Installation
Im Server-Manager ist nun der Menüpunkt Internetinformationsdienste (IIS)-Manager zu finden. Unter Sites befindet sich die Default Web Site.
Die Default Web Site zeigt auf ein Verzeichnis, welches man im Explorer öffnen kann.
#
Im Verzeichnis c:\inetpub\wwwroot sind in der Regel die Dateien für die Website abgelegt.
Testen der Funktionalität mit HTTP
Der neu installierte Webserver sollte nun mit dem Protokoll HTTP erreichbar sein. Dazu einfach im Browser http://localhost oder http://IP-Adresse eingeben. Die Seite öffnet sich.
Da HTTPS verschlüsselt ist, empfehle ich die Seite über https erreichbar zu machen. Dazu wird ein Zertifikat benötigt. Das Zertifikat kann über eine eigene CA bereitgestellt werden, wie in meiner Serie Active Directory Zertifikatsdienste (Teil 1-8) beschrieben ist, oder selbst erstellt werden.
Erstellen eines Zertifikats für HTTPS
Wieder ein One-Liner in PowerShell. Bei DNSName muss der Name der Website eingegeben werden.
New-SelfSignedCertificate -DnsName "intranet.pagr.com" -CertStoreLocation "cert:\LocalMachine\My"
Das Zertifikat ist in certlm.msc (in PowerShell oder Ausführen eingeben) unter Eigene Zertifikate – Zertifikate zu finden.
Website auf HTTPS umstellen
Zurück zur IIS Konsole. Hier einfach mit der rechte Maustaste auf Default Web Site und auf Bindungen bearbeiten klicken.
Danach auf Hinzufügen.
Und dann legt man die Einstellungen für HTTPS (Port 443) fest. Das zuvor erstellte Zertifikat sollte per Drop-Down auswählbar sein.
Die Website ist unter dem Namen https://intranet.pagr.com noch nicht erreichbar. Es fehlt noch ein DNS Eintrag.
Erstellen eines CNAME in DNS (optional)
In PowerShell oder Ausführen dnsmgmt.msc eingeben und es öffnet sich die DNS Konsole. Unter Forward-Lookupzone findet man den DNS Namespace. In meinem Fall ist das pagr.com. Dort mit der rechten Maustaste auf Neuer Alias (CNAME) klicken.
Bei Aliasname den Namen der Seite eingeben. Beim Vollqualifizierten Domänennamen des Zielhosts muss der Computername (FQDN) eingeben werden (in meinem Fall dc01. pagr.com). Soll heißen: Wenn jemand intranet.pagr.com eingibt, dann landet er auf dc01.pagr.com.
Testen der HTTPS Verbindung
Im Browser https://intranet.pagr.com eingeben und die Seite öffnet sich.
Einziger Schönheitsfehler: Es besteht ein Problem mit dem Zertifikat. Das Zertifikat wurde selbst erstellt, daher vertraut der Browser dem Zertifikat nicht. Lösung: Zertifikat kaufen, oder manuell das Zertifikat zu den Vertrauenswürdigen Stammzertifizierungsstellen hinzufügen, oder wie oben erwähnt eine eigene CA installieren: Active Directory Zertifikatsdienste (Teil 1): Installation einer Enterprise Root-CA.
In certlm.mgr kann das Zertifkat einfach von den Eigenen Zertifikaten zu den Vertrauenswürdigen Stammzertifizierungsstellen kopiert werden. Wie hier ersichtlich:
Danach erscheint die Meldung nicht mehr.
Viel Spaß mit dem neuen Webserver!
Apropos: Wer IIS gegen Denial-of-Service Angriffe testen möchte der wird vielleicht in meinem Beitrag IIS vs. Apache: Denial-of-Service Angriff testen fündig.
Categories: Windows Server
2 replies »