Update per Linux-Server

WSUS Offline Update: Windows-PCs bequem updaten

12.04.2016 von Thorsten Eggeling
Wir zeigen Ihnen, wie Sie über einen lokalen Linux-Server alle Windows-PCs mit einem Schlag updaten - und dabei gehörig Bandbreite sparen.

Windows besitzt eine automatische Update-Funktion, über die sich das System stets aktuell halten lässt. Allerdings erfordert das Windows-Update teilweise Downloads im Umfang von mehreren Hundert MB für jeden PC, den Sie aktualisieren müssen. Für Besitzer einer schnellen Internetverbindung ist das kein Problem.

Anders sieht es bei geringer Bandbreite oder einem Volumentarif aus: Hier ist es praktisch, die Updates nur einmal herunterladen zu müssen.

1. Updaten mit WSUS Offline Update

Das Tool WSUS Offline Update lädt Updates für Windows Vista, 7, 8, Office 2007, 2010 und 2013 sowie bei Bedarf auch das .Net-Framework, C++-Laufzeitbibliotheken und Aktualisierungen für den Windows-Defender. Die Aufgabe des Tools ist vor allem, direkt nach einer Windows-Neuinstallation alle verfügbaren Updates auch ohne Internetverbindung von einer DVD oder einem USB-Stick zu installieren. WSUS Offline Update lässt sich jedoch auch über das Netzwerk zur Aktualisierung mehrerer PCs verwenden. Verwenden Sie auf jedem Windows-PC, den Sie über WSUS Offline Update aktualisieren wollen, unter „Systemsteuerung -> Windows Update -> Einstellungen ändern -> Wichtige Updates“ die Option „Nach Updates suchen, aber den Zeitpunkt zum Herunterladen und installieren manuell festlegen“. Sie erhalten dann eine Benachrichtigung, wenn noch Updates fehlen.


2. Samba-Freigabe einrichten

Für die benötigte Windows-Netzwerkfreigabe brauchen Sie einen Samba-Server, den Sie unter Ubuntu oder Linux Mint mit

sudo apt-get update sudo apt-get install samba-common samba

nachinstallieren können. Öffnen Sie danach die Samba-Konfigurationsdatei als root in einem Editor:

sudo gedit /etc/samba/smb.conf

Im Abschnitt „[global]“ fügen Sie am Ende die Zeile

guest account=nobody

ein. Falls die Option „map to guest = bad user“ nicht bereits vorhanden ist, tragen Sie diese Zeile ein.

Erstellen Sie am Ende der Datei einen neuen Abschnitt mit der Bezeichnung „[wsus]“ und einem Inhalt wie in der Abbildung. Hinter „path“ geben Sie das Verzeichnis an, in dem Sie WSUS Offline Update einrichten wollen. „hans“ ersetzen Sie jeweils durch den Gruppen- beziehungsweise User-Namen des administrativen Hauptbenutzers. Speichern Sie die Datei, und führen Sie im Terminal folgende Befehle aus:

smbpasswd -a hans smbpasswd -an nobody

„hans“ ersetzen Sie durch Ihren Linux-Benutzernamen und vergeben dann ein Samba-Passwort. „nobody“ ist der Gastbenutzer ohne Passwort.

Mit dieser Konfiguration haben der eingetragene Linux-Benutzer und die Gruppe „adm“ Schreibzugriff auf die Freigabe. Andere Benutzer und Gäste dürfen Dateien nur lesen und ausführen. „force create mode = 665“ sorgt dafür, dass von Windows aus erstellte Dateien lesbar und ausführbar sind. Der anonyme Zugriff ist nur für die Auto-Reboot-Funktion von WSUS Offline nötig (-> Punkt 4).

Update-Downloader: Das Script „DownloadUpdates.sh“ lädt die Windows-Updates herunter. System, Sprache und Optionen lassen sich über Parameter festlegen.

3. WSUS Offline Update installieren

Laden Sie WSUS Offline Update über http://download.wsusoffline.net herunter, und entpacken Sie die ZIP-Datei in den in -> Punkt 2 freigegebenen Ordner, beispielsweise „/wsus“. Ändern Sie mit

sudo chown -R hans:hans /wsus sudo chmod -R 775 /wsus

den Eigentümer und die Zugriffsrechte. Verwenden Sie Benutzernamen und Pfade entsprechend Ihrer Konfiguration. Für den Update-Download unter Linux ist zusätzliche Software erforderlich, die Sie mit folgendem Befehl nachinstallieren:

sudo apt-get install cabextract md5deep xmlstarlet

Starten Sie dann den Updater mit

bash /wsus/sh/DownloadUpdates.sh

Das Bash-Script zeigt ein einfaches Menü, womit Sie Systeme und Anwendungen festlegen, die Sie aktualisieren möchten. Am Ende sehen Sie eine Zusammenfassung der gesetzten Parameter. So laden Sie etwa mit

bash /wsus/sh/DownloadUpdates.sh w63-x64 deu /dotnet /msse /wddefs

Updates für Windows 8.1 64 Bit, das .Net-Framework, Microsoft Security Essentials und Defender-Virendefinitionen. Die Befehlszeile verwenden Sie in einem Cronjob für den automatischen Download, den Sie mit crontab -e erstellen. Tippen Sie in den Editor etwa folgende Zeile ein, wenn die Ausführung jeden Tag um 22:10 Uhr starten soll:

10 22 * * * /bin/bash /wsus/sh/DownloadUpdates.sh w63-x64 deu /dotnet /ms

Sollten Sie Updates für Windows-8.1 64- und 32 Bit benötigen, ersetzen Sie „w63-x64“ durch „all-63“. Entsprechend gibt es für Windows 7 neben „w61“ und „w61-x64“ den Parameter „all-61“.

4. Windows aktualisieren

Auf Ihrem Windows-PCs starten Sie „UpdateInstaller.exe“ aus dem Verzeichnis „client“ der Netzwerkfreigabe Ihres Linux-Rechners. Setzen Sie Häkchen vor den gewünschten Optionen, und klicken Sie auf „Start“. Da einige Updates einen Windows-Neustart erfordern, müssen Sie das Tool unter Umständen mehrmals aufrufen. Sie können auch ein Häkchen vor „Automatisch neu starten und fortsetzen“ setzen. Das funktioniert, sofern Sie den anonymen Zugriff auf die Freigabe eingerichtet haben, wie unter -> Punkt 2 beschrieben.

Sollte beim Update die Fehlermeldung „Zugriff verweigert“ erscheinen, setzen Sie die Zugriffsrechte neu, beispielsweise mit der Zeile

find /wsus \( -name "*.exe" -o -name "*.cmd" \) -print0 | xargs -0 -I {} chmod 775 {}

Das Update lässt sich über Batch-Dateien automatisieren. Laden Sie dazu „WsusHelper“ herunter, und entpacken Sie die enthaltenen Dateien in das WSUS-Verzeichnis.

Laden Sie „StartUpdater.cmd“ und „RunAsAdmin.cmd“ in einem Editor. Tragen Sie hinter „set Freigabe=“ den UNC-Pfad zur WSUS-Freigabe ein und hinter „set NetDrive=“ den gewünschten Laufwerksbuchstaben. Bei Bedarf können Sie über „StartUpdater.cmd“ auch den Adobe Flash Player und Java aktualisieren.

Kopieren Sie PC-WELT Flash-Updater und PC-WELT Java-Updater ebenfalls in das freigegebene Verzeichnis. „StartUpdater.cmd“ führt Updates nur mittwochs durch. Wenn Sie einen anderen Tag wünschen, ändern Sie die Angabe hinter „if„%DOW%“==““.

Für eine tägliche Prüfung setzen Sie hinter „set EveryDay=“ eine „1“ ein. Passen Sie außerdem die Optionen hinter „doupdate.cmd“ an. Sie starten den Updater manuell per Doppelklick auf „RunAsAdmin.cmd“.

Windows-Updates: Offline und online

WSUS Offline Update lädt und installiert die meisten sicherheitsrelevanten Aktualisierungen. Als „wichtig“ oder „empfohlen“ eingestufte Updates werden aber in der Regel nicht berücksichtigt. Es ist daher nötig, auch das standardmäßige Windows-Update hin und wieder zu verwenden. Sie können – wenn auch ziemlich umständlich – weitere Updates für WSUS Offline definieren.

Suchen Sie über Google oder bei http://www.microsoft.com/en-us/download/default.aspx nach der Knowledge-Base-IDs der gewünschten Updates.

Ermitteln Sie die direkten Download-URLs, und tragen Sie diese in eine TXT-Datei ein, die Sie im Verzeichnis „static/custom“ speichern. Eine weitere TXT-Datei mit jeweils einer KB-Nummer pro Ziel legen Sie unter „client/static/custom“ ab. Die TXT-Dateien müssen nach dem gleichen Muster wie die Dateien unter „static“ beziehungsweise „client/static“ benannt sein.


(PC-Welt/ad)