Freigeben über


Freigegebene Konfiguration in IIS-Versionen

von Walter Oliver

Einführung

In IIS 6.0 war die Synchronisierung und Replikation der Konfiguration zwischen Servern schwierig, da keine integrierte Funktionalität vorhanden war. Der Serveradmin könnte zwar das Skript iiscnfg.vbs verwenden, um die Konfiguration zwischen Servern zu kopieren, aber dann müssten immer noch ACLs für die Metabasis und computerspezifische Pfade wie das Windows-Verzeichnis festgelegt werden.

Gemeinsame Konfiguration in IIS

In IIS 7.0 und höher ermöglicht die gemeinsame Konfigurationsfunktion Admins, die IIS-Serverkonfigurationsdateien applicationHost.config und administration.config auf einer Remotefreigabe zu speichern. Sie kann beim Aufbau einer Webfarm verwendet werden, um Probleme im Zusammenhang mit der Replikation und Synchronisierung der Konfiguration zu beheben.

Was wird von der gemeinsamen Konfiguration exportiert?

  • applicationHost.config
  • administration.config
  • Verschlüsselungsschlüssel für IIS und ASP.NET (exportiert als configEncKey.key)

Was wird nicht exportiert?

  • machine.config
  • root Web.config
  • Web.config-Dateien für Websites und Anwendungen (diese sind Teil des Website-Inhalts und können auf einer Freigabe gespeichert werden)
  • Websiteinhalte (können auf einer Freigabe gespeichert werden)
  • Benutzerdefinierte Module
  • Installierte Module (die installierten Module sollten auf jedem Server auf die gleiche Weise konfiguriert werden)

Setup

So richten Sie eine gemeinsame Konfiguration ein

  1. Erstellen Sie ein Benutzerkonto, das auf die Freigabe zugreift, die die Konfiguration enthält. Dies kann ein Domänenbenutzerkonto oder ein lokales Benutzerkonto sein, wenn der Computer nicht einer Domäne beigetreten ist.

    Hinweis

    Wenn der Computer nicht der Domäne beigetreten ist, muss das Konto auf dem oder den Webserver(n) und dem Dateiserver erstellt werden.

  2. Erstellen Sie eine Freigabe zum Speichern der Konfigurationsdateien, und legen Sie Berechtigungen fest. Sie können dafür die folgenden Befehle verwenden:

    md %SystemDrive%\centralconfig
    net share centralconfig$=%SystemDrive%\centralconfig /grant:ConfigUser,Read /grant:Administrators,Full
    
  3. Navigieren Sie zu Verwaltungstools, und klicken Sie auf Internetinformationsdienste-Manager (IIS).

  4. Klicken Sie auf den Knoten Servername.

  5. Doppelklicken Sie auf das Symbol Gemeinsame Konfiguration.

  6. Um die Konfigurationsdateien vom lokalen Rechner an einen anderen Ort zu exportieren, klicken Sie auf der Seite Gemeinsame Konfiguration auf Konfiguration exportieren (im Bereich Aktionen).

  7. Geben Sie im Dialogfeld Konfiguration exportieren einen Pfad in das Textfeld Physischer Pfad ein.

  8. Klicken Sie auf Verbindung herstellen als …, geben Sie ein Benutzerkonto und ein Kennwort ein, und klicken Sie dann auf OK. Dieses Konto wird für den Zugriff auf die Freigabe verwendet. Sie sollten ein eingeschränktes Active Directory-Konto verwenden, das nicht das Domänenadministratorkonto ist.

  9. Geben Sie im Dialogfeld Konfiguration exportieren ein Kennwort ein, das zum Schutz der Verschlüsselungsschlüssel verwendet wird, und klicken Sie dann auf OK.

  10. Aktivieren Sie auf der Seite Gemeinsame Konfiguration die Option Gemeinsame Konfiguration aktivieren.

  11. Geben Sie den physischen Pfad, das Benutzerkonto und das Kennwort ein, das Sie zuvor eingegeben haben, und klicken Sie dann auf Übernehmen (im Bereich Aktionen).

  12. Geben Sie im Dialogfeld Kennwort für Verschlüsselungsschlüssel das zuvor festgelegte Kennwort für den Verschlüsselungsschlüssel ein, und klicken Sie dann auf OK.

  13. Klicken Sie im Dialogfeld Gemeinsame Konfiguration auf OK.

  14. Klicken Sie auf OK.

  15. Schließen Sie IIS-Manager, und öffnen Sie ihn erneut.

  16. Doppelklicken Sie auf das Symbol Verwaltungsdienst.

  17. Klicken Sie im Bereich Aktionen auf Neu starten.

Wenn Sie auf die Aufgabe „Konfiguration exportieren“ klicken, exportiert die Benutzeroberfläche die Dateien applicationHost.config und administration.config in den Pfad sowie die Verschlüsselungsschlüssel, die IIS zur Verschlüsselung von Eigenschaften wie benutzerdefinierten Kennwörtern für Anwendungspools verwendet. Standardmäßig gibt es keine verschlüsselten Eigenschaften in der Datei applicationHost.config, es sei denn, der Serveradmin hat benutzerdefinierte Identitäten für einen Anwendungspool oder eine Website eingegeben.

Die gemeinsame Konfiguration funktioniert über eine neue Datei mit dem Namen redirection.config, die sich im Ordner %windir%\system32\inetsrv\config befindet, um einen Pfad und einen Benutzernamen für den Zugriff auf die Konfigurationsdateien anzugeben. Wenn das Kontrollkästchen Gemeinsame Konfiguration aktiviert ist, aktualisiert die Benutzeroberfläche die Datei redirection.config mit dem Pfad und dem Benutzernamen.

Diese Aufgabe kann zwar manuell (oder programmgesteuert) durchgeführt werden, indem Sie die Dateien kopieren und die Datei redirection.config aktualisieren, aber der Serveradmin muss die Verschlüsselungsschlüssel exportieren und importieren, es sei denn, Sie beabsichtigen, keine Verschlüsselung zu verwenden. Die Benutzeroberfläche erledigt all diese Aufgaben nahtlos für den Admin.

Weitere Informationen finden Sie unter Gemeinsame Konfiguration.