In diesem Workshop wollen wir die Clientverwaltung in einer Domäne über die PowerShell beispielhaft durchspielen. Dabei konzentrieren wir uns auf die Bereiche
- Druckerverwaltung
- Überprüfen, ob bestimmte Windows-Features installiert sind.
- Auflistung der Gruppenmitgliedschaften eines Computers.
- Eintragen von DNS-Servern.
Wir arbeiten dabei mit einem Windows-10-Client in einer Server-2012R2-Domäne. Auf dem Client ist damit die PowerShell in Version 5, auf dem Server in Version 4 verfügbar.
Beim PowerShell-Remoting wird zwischen 1:1- und 1:n-(Fan-Out)-Beziehungen unterschieden. Die 1:1-Remote-Verwaltung ist über das Konzept "PsSession" implementiert. Das Fan-Out – also das gleichzeitige Abarbeiten von Anweisungen auf mehreren Zielrechnern – wird über das "invoke-Command" und dessen Parameter erreicht. Bei diesem Verfahren ist eine Trennung der Konfigurationseinstellungen von der Programmierlogik für die Pflege des Skripts hilfreich. Die Daten können in einer Datenbank, XML- oder Textdatei gespeichert werden.
Besonders eine strukturierte, kommaseparierte Textdatei (CSV) bietet einen einfachen und praktikablen Ansatz. Sie lässt sich simpel warten und erweitern – selbst von weniger skriptsicheren Administratoren. Die Spalten der CSV-Tabelle beinhalten die IP-Adresse des Windows-Clients, die DNS-Server, gewünschte Windows-Features, Drucker, notwendige Gruppenmitgliedschaften sowie optional weitere Steuerungsinformationen. Das Skript soll dann über einen zentralen Verwaltungsrechner remote ausgeführt werden. Damit entfällt eine aufwendige lokale Anpassung der einzelnen Clients. Bei der Ausführung müssen Sie unter Umständen den notwendigen Berechtigungskontext über den Parameter "-Credential" mitgeben. Neben den PowerShell-Cmdlets und der Windows Management Instrumentation (WMI)
...Der komplette Artikel ist nur für Abonnenten des ADMIN Archiv-Abos verfügbar.