PowerShell ist ein praktisches Tool für IT-Administratoren. In Windows 11 kann PowerShell an Ihre Anforderungen angepasst werden, indem Sie Module hinzufügen, PowerShell-Profile verwenden und Gruppenrichtlinien anwenden.
Konfigurieren der PowerShell-Umgebung
PowerShell verfügt über integrierte Konfigurationen, die erstellt wurden, um die allgemeinen Anforderungen der Benutzer zu erfüllen. Diese Konfiguration ist jedoch nur eine grundlegende Konfiguration und muss möglicherweise auf die spezifischen Anforderungen des Administrators zugeschnitten werden.
Beispielsweise sind einige Funktionen, wie z. B. die Skriptausführung oder die Modulprotokollierung, standardmäßig nicht aktiv, sodass Benutzer sie aktivieren müssen, um ihren Sicherheitsrichtlinien oder ihrer Arbeitsumgebung zu entsprechen.


Ändern der Konfiguration mithilfe von PowerShell-Profilskripts
Das PowerShell-Profilskript ist ein automatisiertes Skript, das jedes Mal ausgeführt wird, wenn PowerShell geöffnet wird. Mit diesen Skripten können Benutzer die Arbeitsumgebung automatisch einrichten, z. B. Module hinzufügen, Variablen festlegen oder benutzerdefinierte Funktionen definieren.
PowerShell bietet vier Arten von Profildateien für verschiedene Szenarien:
1. AllUsersAllHosts
Dieses Profil gilt für alle Benutzer auf allen PowerShell-Hosts.
Standardspeicherort:
C:\Windows\System32\WindowsPowerShell\v1.0\profile.ps1
2. AllUsersCurrentHost
Dieses Profil gilt für alle Benutzer, jedoch nur auf bestimmten Hosts (z. B. PowerShell, VS Code oder Windows Terminal).
Standardspeicherort:
C:\Windows\System32\WindowsPowerShell\v1.0\Microsoft.PowerShell_profile.ps1
3. CurrentUserAllHosts
Dieses Profil gilt nur für angemeldete Benutzer, kann aber auf allen Hosts verwendet werden.
Standardspeicherort:
C:\Users\<Username>\Documents\WindowsPowerShell\profile.ps1
4. CurrentUserCurrentHost
Dieses Profil gilt nur für Benutzer, die derzeit auf einem bestimmten Host angemeldet sind.
Standardspeicherort:
C:\Users\<Username>\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
Schritte zum Ändern der Profilkonfiguration:
- Überprüfen Sie, ob die Profildatei bereits am Standardspeicherort vorhanden ist. Wenn Sie noch keine haben, können Sie manuell eine erstellen.
- Verwenden Sie einen Text-Editor wie Editor oder Visual Studio Code, um die Profildatei nach Bedarf zu bearbeiten.
- Fügen Sie Konfigurationen, wie z. B. das automatische Laden von Modulen oder Variableneinstellungen, in der Datei hinzu.
Einfache Syntax zum Überprüfen des Speicherorts von Profildateien mit $Profile
PowerShell verfügt über eine integrierte Variable mit dem Namen $Profile, in der der Speicherort der einzelnen Profildateitypen gespeichert wird. Mit dem folgenden Befehl können Sie den Speicherort Ihrer Profildatei überprüfen:
$Profile | Format-ListDie Ergebnisse zeigen den vollständigen Speicherort jeder Profildatei an. Wenn die Profildatei noch nicht vorhanden ist, können Sie mit dem folgenden Befehl eine erstellen:
New-Item -Path $Profile.CurrentUserAllHosts -ItemType File -ForceHinzufügen und Verwalten von PowerShell-Modulen
Ein PowerShell-Modul ist eine Sammlung von Befehlen (Cmdlets), Funktionen und Skripts, die in einer einzigen Einheit organisiert sind. Dieses Modul wurde entwickelt, um die Fähigkeit von PowerShell zu verbessern, bestimmte Aufgaben auszuführen, z. B. Systemverwaltung, Sicherheitseinstellungen und Automatisierung administrativer Prozesse.
Zu den Hauptfunktionen des PowerShell-Moduls gehören:
- Bietet zusätzliche Befehle für eine Vielzahl von speziellen Anforderungen.
- Vereinfachen Sie die Systemverwaltung durch Automatisierung.
- Integrierte PowerShell-Funktionen wurden hinzugefügt, um die Integration mit Apps oder Diensten von Drittanbietern zu unterstützen.
Zugreifen auf den PowerShell-Katalog zum Herunterladen von Modulen
Der PowerShell-Katalog ist ein Onlinerepository, in dem Tausende von Modulen gespeichert sind, die von Microsoft und der Community erstellt wurden. Sie können Module aus dieser Galerie einfach suchen, herunterladen und installieren.
Schritte zum Zugreifen auf den PowerShell-Katalog:
- Rufen Sie die offizielle PowerShell Gallery-Website unter https://www.powershellgallery.com auf.
- Verwenden Sie die Suchfunktion auf der Website, um die benötigten Module zu finden.
- Installieren Sie das Modul direkt über PowerShell mit dem Befehl Install-Module.
Install-Module -Name ModuleName -Scope CurrentUserErsetzen Sie ModuleName durch den Namen des Moduls, das Sie installieren möchten.
Schritte zum Aktualisieren von PowerShellGet
Um die neuesten Features des PowerShell-Katalogs nutzen zu können, stellen Sie sicher, dass das PowerShellGet Modul auf die neueste Version aktualisiert wird. Hier sind die Schritte:
1. Überprüfen Sie die aktuelle Version von PowerShellGet:
Get-Module -Name PowerShellGet -ListAvailable2. Wenn die vorhandene Version alt ist, aktualisieren Sie sie mit dem folgenden Befehl:
Install-Module -Name PowerShellGet -Force -Scope CurrentUser3. Stellen Sie sicher, dass das Modul aktualisiert ist, indem Sie die Version erneut überprüfen.
Grundlegende Befehle zum Suchen und Hinzufügen von Modulen
Im Folgenden finden Sie einige grundlegende Befehle zum Verwalten von Modulen in PowerShell:
1. Suchen des Moduls in der PowerShell-Galerie:
Find-Module -Name ModulName2. Installation des Moduls:
Install-Module -Name ModulName -Scope PenggunaSaatIni3. Zeigen Sie die Module an, die bereits auf dem System installiert sind:
Get-InstalledModule4. Löschen von Modulen:
Uninstall-Module -Name ModulName5. Aktualisieren des Moduls:
Update-Module -Name ModulNameImplementieren von Gruppenrichtlinien für PowerShell
Group Policy ist eine wichtige Funktion in Windows, mit der Administratoren Einstellungen und Richtlinien für Computer in einem Active Directory-basierten Netzwerk festlegen können. Mit Gruppenrichtlinien können Sie verschiedene Aspekte des Betriebssystems steuern, einschließlich PowerShell Konfiguration, wodurch Sie mehr Kontrolle über Sicherheit, Protokollierung und Standardverhalten erhalten.
Im Kontext von PowerShell ermöglicht die Gruppenrichtlinie Folgendes:
- Anwenden von Sicherheitsrichtlinien auf Skripts.
- PowerShell-Aktivitätsprotokollierungsverwaltung für Audits.
- Bereitstellung einer einheitlichen Arbeitsumgebung auf allen Rechnern in der Organisation.
Konfigurierbare Richtlinien über Gruppenrichtlinien für PowerShell
1. Richtlinie zur Ausführung
Diese Richtlinie gibt Berechtigungen zum Ausführen von PowerShell-Skripts an. Sie können die Sicherheitsstufe konfigurieren, indem Sie eine der folgenden Richtlinien auswählen:
- Restricted: Die Ausführung von Skripts ist nicht zulässig.
- RemoteSigned: Skripte von einer Remote-Instanz müssen über eine gültige digitale Signatur verfügen.
- Unrestricted: Alle Skripte können ohne Einschränkungen ausgeführt werden.
Schritte zum Festlegen der Ausführungsrichtlinie in der Gruppenrichtlinie:
- Öffnen Sie Group Policy Management Console (GPMC).
- Navigieren Sie zu Computer Configuration > Administrative Templates > Windows Components > Windows PowerShell.
- Legen Sie die Richtlinie Turn on Script Execution fest und wählen Sie die gewünschte Richtlinie aus.
Beispiel für einen manuellen Befehl:
Wenn Sie keine Gruppenrichtlinie verwenden, können Sie die Richtlinie direkt in PowerShell festlegen:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned2. Modul-Aufzeichnung
Diese Richtlinie ermöglicht die Protokollierung von Aktivitäten aus bestimmten Modulen, die in PowerShell verwendet werden. Dies ist besonders nützlich für Sicherheitsüberprüfungen oder die Fehlerbehebung.
So legen Sie die Modulprotokollierung in der Gruppenrichtlinie fest:
- Öffnen Sie Windows PowerShell > Turn on Module Logging.
- Fügen Sie das Modul hinzu, für das Sie die Protokollierung aktivieren möchten, z. B. NTFSSecurity oder ActiveDirectory.
3. Protokollierung von Skriptblöcken
Diese Richtlinie protokolliert jeden Block von Skripts, die in PowerShell ausgeführt werden, einschließlich komplexerer Befehle und Skripts. Diese Funktion hilft bei der Erkennung verdächtiger Aktivitäten oder skriptbasierter Angriffe.
So richten Sie die Protokollierung von Skriptblöcken ein:
- Zugriffsrichtlinien Turn on PowerShell Script Block Logging.
- Aktivieren Sie die Richtlinie, um alle Skriptblockausführungen zu protokollieren.
4. Transkription
Diese Richtlinie zeichnet alle PowerShell-Sitzungen in Protokolldateien auf, einschließlich Ein- und Ausgaben. Es ist sehr effektiv für Auditing und Debugging.
So richten Sie die Transkription ein:
- Navigieren Sie in der Gruppenrichtlinie zu Turn on PowerShell Transcription.
- Geben Sie den Speicherort an, an dem die Protokolle gespeichert werden, z. B.: C:\Transcripts\.
- In den Protokollergebnissen wird jede Sitzung aufgezeichnet, die vom Benutzer ausgeführt wird.
So aktualisieren Sie die lokale Hilfe mit update-help
PowerShell verfügt über ein Update-Help-Feature, mit dem die Hilfedokumentation der bereits installierten Module aktualisiert werden kann. Sie können Gruppenrichtlinien verwenden, um ein lokales Repository als Quelle für Updates einzurichten, sodass Sie keine Updates aus dem Internet herunterladen müssen.
Manuelle Schritte mit Update-Help:
1. Erstellen Sie ein lokales Repository für die Hilfedatei.
2. Definieren Sie das lokale Repository mit dem folgenden Befehl:
Save-Help -DestinationPath “C:\HelpRepo”3. Aktualisieren Sie die Hilfe mit lokalen Repositories:
Update-Help -SourcePath “C:\HelpRepo”Empfehlungen für häufig verwendete Module und Skripte
Um die Produktivität zu steigern und administrative Aufgaben zu automatisieren, finden Sie hier einige empfohlene Module von PowerShell:
1. NTFSSecurity
Funktion: Einfache Verwaltung von ACLs (Access Control Lists) auf Dateien und Ordnern.
Beispiel-Befehl:
Get-NTFSAccess -Path “C:\ContohFolder”2. PSWindowsUpdate
Seine Funktion: Verwalten von Windows-Updates über PowerShell.
Installation:
Install-Module -Name PSWindowsUpdate3. ActiveDirectory
Funktion: Verwalten Sie Active Directory wie Benutzer, Gruppen und Richtlinien.
Beispiel-Befehl:
Get-ADUser -Filter * -Properties DisplayName4. Pester
Funktion: Testen von PowerShell-Skripten und -Modulen, um die Codequalität sicherzustellen.
Installation:
Install-Module -Name Pester5. ImportExcel
Funktion: Verwalten Sie Excel-Daten, ohne die Excel-Anwendung öffnen zu müssen.
Beispiel-Befehl:
Import-Excel -Path “C:\Data.xlsx” | Select-Object Name, Age