In diesem Artikel sehen wir uns an, wie Sie Web sites, Anwendungspools und die IIS-Webserverkonfiguration auf Home windows Server sichern. Sie können eine Internetinformationsdienste-Sicherung verwenden, um eine Site im Falle eines Hostserverausfalls wiederherzustellen oder wenn Sie eine Site (und/oder IIS-Konfiguration) auf einen anderen Server migrieren/verschieben.
Inhalt:
- IIS auf Home windows Server sichern
- Wiederherstellen einer IIS-Konfiguration auf einem anderen Home windows Server-Host
IIS auf Home windows Server sichern
Das Sichern der Daten und der Konfiguration von Websites, die auf einem Internetinformationsdienst-Webserver ausgeführt werden, besteht aus mehreren Schritten:
- Sichern Sie IIS-Site-Dateien (Standardmäßig werden IIS-Website-Dateien gespeichert in
%SystemDrivep.cinetpubwwwroot
). Dieser Ordner muss im Backup-Plan enthalten sein. Es reicht aus, alle Dateien mit Ihrem Sicherungstool (Sie können sogar die integrierte Home windows Server-Sicherung verwenden -> wählen Sie das inetpub-Verzeichnis für die Sicherung) oder einfache BAT/PowerShell-Skripte zu kopieren. Um beispielsweise WSB zu installieren und das Verzeichnis inetpubwwwroot in einem freigegebenen Ordner zu sichern, verwenden Sie die folgenden Befehle:# Set up the Home windows server function the use of PowerShell;
Set up-WindowsFeature -Title Home windows-Server-Backup
# backup IIS site static recordsdata
wbadmin get started backup –backupTarget:srv-backup1backup -include:c:inetpubwwwroot -vsscopy - Aktuelle IIS-Zertifikate sichern (exportieren). (Sie können die Liste der SSL-Zertifikate auf dem Server mit diesem Befehl abrufen:
netsh http display sslcert
) Sie können PowerShell verwenden, um Zertifikate in einem freigegebenen Netzwerkordner im PFX-Structure (Private Knowledge Trade) zu sichern:dir cert:localmachinemy | The place-Object { $_.hasPrivateKey } | Foreach-Object { [system.IO.file]::WriteAllBytes("srv-backup1backup$($_.Matter).pfx",($_.Export('PFX', 'secret')) ) }
- IIS-Konfiguration (Einstellungen) sichern.
Sie können die IIS-Konfiguration mit dem integrierten Backup sichern appcmd Werkzeug. Öffnen Sie eine Eingabeaufforderung als Administrator und wechseln Sie das Verzeichnis:
cd c:Windowssystem32inetsrv
Lassen Sie uns die IIS-Konfiguration sichern:
appcmd upload backup srv1-iis-backup-2022_03_10
BACKUP object srv1-iis-backup-2022_03_10 added
Appcmd erstellt einen Ordner im Verzeichnis c:Windowssystem32inetsrvbackup mit dem Namen Ihres Backups. Es enthält die folgenden Dateien:
- administrative.config
- applicationHost.config
- MBSchema.xml
- MetaBase.xml
- Umleitung.config
Es bleibt, dieses Verzeichnis auf das Backup-Speichergerät zu kopieren.
Unter Home windows Server 2019/2016 können Sie anstelle von appcmd das integrierte PowerShell-Cmdlet verwenden, um IIS zu sichern:
Backup-WebConfiguration -Title MyBackup202203
Dieses Cmdlet exportiert auch die aktuellen IIS-Einstellungen nach $env:WindirSystem32inetsrvbackup
.
Wiederherstellen einer IIS-Konfiguration auf einem anderen Home windows Server-Host
Sie können Ihre IIS-Konfiguration aus einer Sicherung auf demselben Server oder auf einem anderen Host wiederherstellen. Angenommen, Sie müssen die IIS-Konfiguration auf einem anderen Home windows Server-Host wiederherstellen.
Kopieren Sie das IIS-Sicherungsverzeichnis in denselben Ordner (c:windowssystem32backup) auf dem Zielserver.
Führen Sie den folgenden Befehl aus, um eine Liste aller verfügbaren IIS-Konfigurationssicherungen anzuzeigen:
appcmd listing backup
Die kopierte Sicherung sollte in der Liste der verfügbaren erscheinen. Stellen Sie die IIS-Konfiguration aus einer Sicherung wieder her:
appcmd repair backup /prevent:true srv1-iis-backup-2022_03_10
Die „Wiederhergestellte Konfiguration aus Backup srv1-iis-backup-2022_03_10 bedeutet, dass die IIS-Konfiguration erfolgreich wiederhergestellt wurde.
Die /prevent:true
Possibility zwingt IIS, vor der Wiederherstellung anzuhalten.
Repair-WebConfiguration -Title srv1-iis-backup-2022_03_10
Notiz. Es gibt Einträge wie BACKUP “CFGHISTORY_0000000001”
in der Liste der verfügbaren Sicherungen. Dies sind IIS-Konfigurationssicherungen, die automatisch erstellt werden und sich im Verzeichnis inetpubhistory befinden. Automatische Sicherungsfunktionen wurden in IIS 7+ eingeführt: Die über den IIS-Supervisor vorgenommenen Änderungen an ApplicationHost.config werden nachverfolgt, die 10 neuesten Sicherungen werden gespeichert und die Datei wird alle 2 Minuten auf Änderungen überprüft.
Um ein vorheriges Backup zu löschen, führen Sie den Befehl aus:
appcmd.exe delete backup BackupName
- Auf beiden Servern muss dieselbe IIS-Model verwendet werden. Sie können Ihre Model von IIS in der Registrierung mit PowerShell überprüfen:
get-itemproperty HKLM:SOFTWAREMicrosoftInetStp | choose setupstring,versionstring
In meinem Fall ist dies IIS 10.0 - Wenn IIS-Anwendungspools nicht von den integrierten Konten ausgeführt werden, müssen sie auf dem Ziel-IIS-Host verfügbar sein.
- Vor dem Wiederherstellen von IIS müssen Sie alle von Ihnen verwendeten SSL-Zertifikate auf den neuen Server importieren.
Sie können Ihren IIS-Webserver auch mithilfe von sichern msdeploy Paket (Internet Deployment Instrument). Weighted down Sie das msdeploy-Paket herunter und installieren Sie es auf Ihrem IIS-Host und auf dem Zielsicherungshost (https://www.microsoft.com/en-us/obtain/main points.aspx?identification=43717).
Um ein IIS-Backup (mit allen Websites, wenn mehrere Websites auf IIS ausgeführt werden) auf einem Far off-Home windows-Host 192.168.100.112 über webdeploy zu erstellen, kann der folgende Befehl verwendet werden:
msdeploy -verb:sync -source:webServer,computername=192.168.100.112 dest:bundle=c:BackupIISserver1_iis_backup.zip
Sie können auch eine einzelne IIS-Site sichern:
msdeploy –verb:sync -source:contentPath="site_name.com",computername=192.168.100.112 -dest:bundle=c:BackupIISsite_name.zip
Oder kopieren Sie nur statische Site-Dateien aus dem angegebenen Verzeichnis:
msdeploy –verb:sync –supply:dirPath="c:inetpubwwwrootsite_name",computername=192.168.100.112 -dest:bundle=c:BackupIISsite_name_static_files.zip
https://aspiringsysadmin.com/