WavebreakmediaMicro - Fotolia

DSC und PackageManagement: Die wichtigsten Neuerungen der PowerShell 5.1

Windows 10 Anniversary Update und Windows Server 2016 enthalten die PowerShell 5.1, die einige Verbesserungen bringt. Ein Blick auf DSC und PackageManagement.

Zusammen mit der Veröffentlichung des Anniversary Update für Windows 10 wurden von Microsoft im August 2016 auch neue Funktionen der PowerShell 5.1 vorgestellt. Gegenüber dem großen Versionssprung auf die PowerShell 5.0 im Februar 2016 enthält das Update auf die PowerShell-Version 5.1 zwar nur vergleichsweise kleine Neuerungen, dürfte vielen Windows-Admins aber trotzdem willkommene Verbesserungen bringen.

Die PowerShell 5.1 ist wie üblich Teil des Windows Management Framework (WMF), das in Version 5.1 derzeit als Preview direkt von Microsofts Download-Seite heruntergeladen werden kann. Im Zuge der allgemeinen Verfügbarkeit von Windows Server 2016 dürfte aber auch WMF 5.1 in Kürze final zur Verfügung stehen.

WMF 5.1 und PowerShell 5.1 können laut Microsoft neben Systemen mit Windows 10 und Windows Server 2016 auch auf Windows 7 SP1, Windows 8.1, Windows Server 2012/2012 R2 und Windows Server 2008 R2 SP1 installiert werden. Voraussetzung hierfür ist das .NET Framework 4.6, ansonsten gelingt zwar die Installation, manche der neuen Funktionen sollen ohne .NET Framework 4.6 aber fehlerhaft arbeiten.

Die PowerShell 5.1 bietet nach der Installation allgemeine Sicherheitsverbesserungen und Bugfixes, aber auch neue Cmdlets und Funktionen für Desired State Configuration (DSC) und Paketverwaltung. Erstmals seit Bestehen der PowerShell gibt es mit der PowerShell 5.1 auch unterschiedliche Versionen, die über Funktionsumfang und Plattformkompatibilität entscheiden: Die Desktop-Edition basiert auf dem .NET Framework und zielt auf Desktop-Betriebssysteme oder Core-Installationen von Windows Server ab. Im Gegensatz zu dieser „klassischen“ PowerShell gibt es mit Version 5.1 auch eine Core-Edition, die auf .NET Core aufbaut und für die Verwaltung der Nano-Server-Bereitstellung von Windows Server oder Windows 10 IoT gedacht ist.

Verbesserungen der PowerShell Desired State Configuration

Neben Fehlerbereinigungen und Debugging-Verbesserungen wurde innerhalb der Desired State Configuration zum Beispiel die Unterstützung für SSL 3.0 eingestellt, stattdessen können jetzt die TLS-Protokolle TLS 1.1 und TLS 1.2 verwendet werden. Bis einschließlich PowerShell 5.0 war lediglich die Nutzung von SSL 3.0 oder TLS 1.0 möglich.

Der Sicherheit kommt auch die neue Möglichkeit zugute, digital signierte DSC-Module und –Konfiguration zu verwenden. Mithilfe der Desired State Configuration werden über Pull-Server Konfigurationen für die verwalteten Maschinen verteilt. Erhalten Angreifer Zugriff auf den Pull-Server, können sie folglich eigene Konfigurationsdateien und Module verteilen und so das gesamte Netzwerk kompromittieren. Die PowerShell 5.1 ermöglicht daher das Signieren von Konfigurationsdateien im .MOF-Format. Damit sollten keine DSC-Konfigurationen mehr ausgeführt werden, die nicht über eine gültige Signatur verfügen.

.MOF-Dateien können in der PowerShell 5.1 über das Set-AuthenticodeSignature-Cmdlet signiert werden, das jetzt auch entsprechende Konfigurationsdateien unterstützt. Module dagegen werden über den Modul-Katalog signiert, indem zunächst über New-FileCatalog eine Katalog-Datei des Moduls erstellt wird, die dann ebenfalls über Set-AuthenticodeSignature signiert werden kann. Anschließend muss die Katalog-Datei noch in den Modul-Ordner abgelegt werden. Auf einem DSC-Node kann die Signatur-Überprüfung anschließend per Pull- oder Push-Request aktiviert werden.

Eine weitere Neuerung im Bereich Desired State Configuration betrifft Composite-Ressourcen, also DSC-Konfigurationen, die als Ressourcen für andere Konfigurationen verwendet werden können. Für diese Composite-Ressourcen bietet die PowerShell 5.1 Unterstützung für das PsDscRunAsCredential-Cmdlet, wodurch Admins jetzt bei der Arbeit mit Composite-Ressourcen einen Wert für PsDscRunAsCredential angeben können. Anschließend werden alle Ressourcen innerhalb der Composite-Ressource als RunAs-Anwender ausgeführt.

Neuerungen beim Paket-Management in der PowerShell 5.1

Die Paketverwaltung mit der PowerShell war schon im Dezember im Rahmen der Preview zur PowerShell 5.0 vorgestellt worden und ermöglicht, ähnlich wie auch auf Linux-Systemen, das geskriptete Installieren und Deinstallieren von Softwarepaketen. In der PowerShell 5.1 hat Microsoft jetzt mit kleinen Verbesserungen nachgelegt, die das Arbeiten mit der Paketverwaltung erleichtern sollen.

So kann die Paketverwaltung jetzt beispielsweise auch über Proxy- oder Intranetverbindungen verwendet werden. Letzteres ist ganz einfach durch die neuen Parameter -ProxyCredential und -Proxy möglich. So lassen sich über den Parameter -Proxy die URL und über den Parameter -ProxyCredential in Zusammenarbeit mit Get-Credential Anmeldedaten für den Proxy-Server mit PackageManagement-Cmdlets verwenden.

Die Verwendung in Intranetumgebungen ist dagegen etwas aufwändiger, aber ebenfalls in wenigen Schritten erledigt. Zunächst muss auf einer Maschine mit Internetzugang über den gewohnten Befehl Install-PackageProvider -Name NuGet der NuGet-Provider heruntergeladen werden, der anschließend über $env:ProgramFiles\PackageManagement\ProviderAssemblies\nuget oder über $env:LOCALAPPDATA\PackageManagement\ProviderAssemblies\nuget gefunden werden kann. Diese Dateien werden anschließend auf einem Ordner oder Netzwerklaufwerk gespeichert, auf das die Maschine im Intranet zugreifen kann. Jetzt kann der NuGet-Provider über Install-PackageProvider -Name NuGet -Source <Pfad zum Ordner> installiert werden.

In der PowerShell 5.1 werden jetzt zudem für die Befehle Install-Package, Uninstall-Package und Save-Package Event-Logs aufgezeichnet, zudem können jetzt auch Repositories verwendet werden, die eine Benutzerauthentifizierung verwenden. Hierfür können den Cmdlets Find-Package und Install-Package Anmeldedaten per -Credential (Get-Credential) angehängt werden.

Folgen Sie SearchDataCenter.de auch auf Twitter, Google+, Xing und Facebook!

Fortsetzung des Inhalts unten

Erfahren Sie mehr über Serverbetriebssysteme

ComputerWeekly.de

Close