Installation und Konfiguration von IIS auf Windows Server
Internet Information Services (IIS) ist Microsofts integrierter Webserver für Windows Server. Er wird genutzt, um Webseiten zu hosten, statische und dynamische Inhalte bereitzustellen und Anwendungen wie .NET und ASP.NET auszuführen. IIS unterstützt Protokolle wie HTTP, HTTPS, FTP und WebDAV und bietet Funktionen wie Authentifizierung, SSL, Komprimierung und Anwendungsbereitstellung.
In dieser Anleitung wird erklärt, wie IIS auf Windows Server installiert und eingerichtet wird. Sie erfahren, wie Sie Webseiten erstellen, Authentifizierung verwalten, Anwendungen bereitstellen und Leistungs- sowie Sicherheitsfunktionen wie SMTP und HTTPS aktivieren.
IIS installieren
IIS ist eine integrierte Windows-Server-Rolle, die über den Server-Manager oder PowerShell aktiviert werden kann.
- Öffnen Sie den Server-Manager über das Startmenü.
- Klicken Sie auf Verwalten > Rollen und Features hinzufügen.
- Gehen Sie den Assistenten durch, bis Sie zu Serverrollen gelangen.
- Wählen Sie Webserver (IIS) aus.
- Schließen Sie den Assistenten ab und klicken Sie auf Installieren.
Nach der Installation können Sie den IIS-Manager über das Menü Tools im Server-Manager öffnen.
Um IIS mit PowerShell zu installieren, führen Sie diesen Befehl als Administrator aus:
Install-WindowsFeature -name Web-Server -IncludeManagementTools
Damit wird die IIS-Webserver-Rolle zusammen mit den Verwaltungstools installiert.
IIS-Webseiten verwalten
IIS ermöglicht das Hosten mehrerer Webseiten auf einem einzelnen Server. Über den IIS-Manager können Bindings, Stammverzeichnisse und Hostnamen konfiguriert werden.
- Öffnen Sie den IIS-Manager über das Startmenü.
- Erweitern Sie im Bereich Verbindungen den Server und wählen Sie Sites aus.
- Klicken Sie mit der rechten Maustaste auf Sites und wählen Sie Website hinzufügen….
- Geben Sie die folgenden Details ein:
- Site-Name: Interne Bezeichnung (z. B. MySite)
- Anwendungspool: Standard, außer bei Nutzung einer speziellen .NET-Version
- Physischer Pfad: Ordner mit den Dateien der Seite (z. B. C:\inetpub\wwwroot\mysite)
- Bindings:
- Typ: http oder https
- IP-Adresse: Alle nicht zugewiesenen oder eine dedizierte IP
- Port: 80 (HTTP) oder 443 (HTTPS)
- Hostname: z. B. example.com
- Klicken Sie auf OK, um die Website zu erstellen.
Die Website erscheint nun unter Sites, wo Sie diese jederzeit starten, stoppen oder ändern können.
Eine Website lässt sich auch mit PowerShell anlegen:
New-Item -Path "C:\inetpub\wwwroot\mysite" -ItemType Directory
New-WebSite -Name "MySite" -Port 80 -PhysicalPath "C:\inetpub\wwwroot\mysite" -HostHeader "example.com"
Passen Sie Name, Port, Pfad und Host-Header nach Bedarf an.
Website starten oder stoppen
IIS ermöglicht es, jede gehostete Website einzeln zu steuern – Sie können diese starten, stoppen oder neu starten, ohne andere zu beeinträchtigen.
- Öffnen Sie den IIS-Manager.
- Erweitern Sie im Bereich Verbindungen den Eintrag Sites und wählen Sie Ihre gewünschte Website.
- Klicken Sie im Bereich Aktionen auf Starten, Stoppen oder Neu starten.
PowerShell-Alternativen:
Website starten:
Start-WebSite -Name "MySite"
Website stoppen:
Stop-WebSite -Name "MySite"
Website neu starten:
Restart-WebItem 'IIS:\Sites\MySite'
Ersetzen Sie MySite durch den Namen Ihrer Website.
Anwendungen mit dem Web Platform Installer bereitstellen
IIS ermöglicht die Installation beliebter Anwendungen wie WordPress, Joomla oder Drupal über den integrierten Web Platform Installer (Web PI), der die Einrichtung von Web-Stacks und CMS-Plattformen vereinfacht.
- Öffnen Sie den IIS-Manager.
- Wählen Sie im Bereich Aktionen die Option Bereitstellen > Anwendungen aus Galerie installieren.
- Suchen oder durchsuchen Sie die gewünschte Anwendung (z. B. WordPress).
- Klicken Sie auf Hinzufügen und dann auf Installieren.
- Folgen Sie den Anweisungen, um die Einrichtung abzuschließen.
„`html
Authentifizierung konfigurieren
IIS bietet verschiedene Authentifizierungsmethoden, um den Zugriff zu steuern. Eine häufige Wahl in internen oder geschützten Umgebungen ist die Basisauthentifizierung, bei der gültige Benutzeranmeldedaten erforderlich sind.
- Öffnen Sie den IIS-Manager und wählen Sie Ihre Website aus.
- Doppelklicken Sie in der Features-Ansicht auf Authentifizierung im IIS-Bereich.
- Markieren Sie Basisauthentifizierung und klicken Sie im Bereich Aktionen auf Aktivieren.
- (Optional) Wählen Sie Anonyme Authentifizierung und klicken Sie auf Deaktivieren, um die Anmeldung zu erzwingen.
Standardmäßig ist die Anonyme Authentifizierung aktiviert, sodass alle Benutzer uneingeschränkten Zugriff haben.
Wichtig: Basisauthentifizierung überträgt Anmeldedaten im Klartext, sofern sie nicht mit HTTPS kombiniert wird. Verwenden Sie daher immer SSL/TLS. Sie können den Zugriff außerdem über NTFS-Berechtigungen oder die Integration mit Active Directory steuern.
SMTP für ausgehende E-Mails aktivieren
Viele Webanwendungen wie WordPress, Joomla oder ASP.NET-basierte Seiten benötigen die Möglichkeit, E-Mails zu versenden – etwa für Passwortzurücksetzungen, Registrierungsbestätigungen oder Kontaktformulare. Mit Windows Server können Sie SMTP-Dienste aktivieren, um dies zu ermöglichen.
SMTP-Server-Feature installieren
- Öffnen Sie den Server-Manager.
- Wählen Sie Verwalten > Rollen und Features hinzufügen.
- Gehen Sie zum Bereich Features.
- Aktivieren Sie SMTP-Server.
- Schließen Sie den Assistenten ab und starten Sie den Server bei Bedarf neu.
Damit wird ein einfacher SMTP-Relay auf Ihrem Server eingerichtet.
SMTP-Einstellungen für Anwendungen konfigurieren
Nachdem das SMTP-Feature installiert ist, konfigurieren Sie die Mail-Einstellungen Ihrer Anwendung. Für ASP.NET-Anwendungen:
- Öffnen Sie den IIS-Manager und wählen Sie Ihre Anwendung.
- Doppelklicken Sie im Bereich ASP.NET auf SMTP-E-Mail.
- Tragen Sie die folgenden Angaben ein:
- E-Mail-Adresse: Absenderadresse, die im „Von“-Header erscheint.
- Zustellungsmethode: Netzwerk auswählen.
- SMTP-Server: Geben Sie Ihren Relay-Server an (z. B. localhost, mail.example.com oder den SMTP-Endpunkt Ihres Unternehmens).
- Port: Übliche Werte sind 25, 587 oder 465 – je nach Anbieter.
- Anmeldedaten: Konfigurieren, falls der SMTP-Server eine Authentifizierung verlangt.
- Klicken Sie auf Übernehmen, um die Änderungen zu speichern.
Tipp: Für produktive Umgebungen empfiehlt es sich, einen externen SMTP-Dienst wie SendGrid, Amazon SES oder den Relay-Server Ihrer Organisation zu verwenden, statt den lokalen Server direkt ins Internet freizugeben.
Antwortkomprimierung aktivieren
IIS unterstützt statische und dynamische Komprimierung, um die Größe von Antworten an Clients zu reduzieren. Dadurch verbessern sich Ladezeiten, Bandbreite wird eingespart und die Gesamtleistung steigt – insbesondere bei textbasierten Ressourcen wie HTML, CSS, JavaScript und JSON.
Komprimierung im IIS-Manager aktivieren
- Starten Sie den IIS-Manager.
- Wählen Sie im Bereich Verbindungen entweder den Serverknoten (für globale Einstellungen) oder eine bestimmte Website.
- Doppelklicken Sie in der Features-Ansicht auf Komprimierung.
- Aktivieren Sie:
- Statische Inhaltskomprimierung aktivieren
- Dynamische Inhaltskomprimierung aktivieren
- Klicken Sie im Bereich Aktionen auf Übernehmen.
Hinweis: Statische Komprimierung speichert komprimierte Inhalte auf der Festplatte. Dynamische Komprimierung komprimiert Inhalte bei jeder Anfrage neu und kann die CPU-Last erhöhen. Testen Sie, welche Option für Ihre Umgebung geeignet ist.
web.config für Website-Einstellungen verwenden
IIS nutzt die Datei web.config für sitespezifische Konfigurationen. Ähnlich wie die .htaccess-Datei bei Apache ist sie XML-basiert und sollte sich im Stammverzeichnis Ihrer Website befinden (z. B. C:\inetpub\wwwroot\yoursite\web.config).
Typische Anwendungsfälle sind:
- URL-Rewrite
- Zugriffsbeschränkungen
- Eigene Fehlerseiten
- MIME-Type-Definitionen
Änderungen in der web.config greifen sofort, ohne dass ein Serverneustart erforderlich ist.
Website mit SSL absichern
Durch die Absicherung Ihrer Website mit HTTPS werden Datenintegrität und Vertraulichkeit gewährleistet. Mit IIS können Sie ein SSL-Zertifikat einbinden, um sichere Verbindungen herzustellen.
SSL-Zertifikat importieren
- Öffnen Sie den IIS-Manager.
- Wählen Sie im Bereich Verbindungen den Servernamen (nicht die Website).
- Doppelklicken Sie im IIS-Bereich auf Serverzertifikate.
- Klicken Sie im Bereich Aktionen auf Importieren….
- Wählen Sie Ihre Zertifikatsdatei (meist .pfx), geben Sie falls nötig das Passwort ein und schließen Sie den Vorgang ab.
Website an HTTPS binden
- Erweitern Sie im IIS-Manager den Bereich Sites und wählen Sie Ihre Zielseite.
- Klicken Sie im Bereich Aktionen auf Bindings….
- Klicken Sie im Dialog Websitebindungen auf Hinzufügen….
- Legen Sie fest:
- Typ: https
- IP-Adresse: Wählen Sie eine oder lassen Sie Alle nicht zugewiesenen.
- Port: 443
- Hostname: z. B. yourdomain.com (optional)
- SSL-Zertifikat: Wählen Sie das zuvor importierte Zertifikat
- Klicken Sie auf OK und dann auf Schließen.
Testen Sie die Einrichtung, indem Sie https://yourdomain.com
im Browser aufrufen. Bei erfolgreicher Konfiguration erscheint ein Schloss-Symbol.
Für die automatische Ausstellung und Erneuerung von SSL-Zertifikaten können Sie kostenlose Tools nutzen:
- Certify The Web: Ein GUI-basierter Let’s Encrypt-Client für Windows.
- win-acme: Ein Kommandozeilen-Tool für Let’s Encrypt unter Windows Server.
Diese Tools erleichtern die Verwaltung von Zertifikaten und eignen sich besonders für selbst gehostete oder nicht-kommerzielle Webseiten.
Fazit
In diesem Tutorial haben Sie Internet Information Services (IIS) auf Windows Server installiert und konfiguriert, um Webseiten und Anwendungen zu hosten. Sie haben die IIS-Rolle aktiviert, Websites erstellt und verwaltet, Anwendungen mit dem Web Platform Installer bereitgestellt und Dienste wie Authentifizierung, SMTP-E-Mail und Komprimierung konfiguriert. Außerdem nutzten Sie die web.config-Datei für detaillierte Einstellungen und sicherten Ihre Anwendung mit SSL ab.
Ob Sie nun .NET-Anwendungen, statische Dateien oder CMS-Plattformen wie WordPress bereitstellen – IIS bietet eine stabile und flexible Umgebung. Mit diesen Konfigurationen ist Ihr Windows Server nun vollständig für sicheres und effizientes Webhosting vorbereitet.