StartWindows-BetriebssystemPowerShell in Windows 11 für Admins konfigurieren

PowerShell in Windows 11 für Admins konfigurieren

Advertisement

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.

Advertisement

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.

Advertisement
PowerShell Key Configuration

Ä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.

Advertisement

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:

  1. Überprüfen Sie, ob die Profildatei bereits am Standardspeicherort vorhanden ist. Wenn Sie noch keine haben, können Sie manuell eine erstellen.
  2. Verwenden Sie einen Text-Editor wie Editor oder Visual Studio Code, um die Profildatei nach Bedarf zu bearbeiten.
  3. 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-List

Die 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 -Force

Hinzufü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:

  1. Rufen Sie die offizielle PowerShell Gallery-Website unter https://www.powershellgallery.com auf.
  2. Verwenden Sie die Suchfunktion auf der Website, um die benötigten Module zu finden.
  3. Installieren Sie das Modul direkt über PowerShell mit dem Befehl Install-Module.
Install-Module -Name ModuleName -Scope CurrentUser

Ersetzen 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 -ListAvailable

2. Wenn die vorhandene Version alt ist, aktualisieren Sie sie mit dem folgenden Befehl:

Install-Module -Name PowerShellGet -Force -Scope CurrentUser

3. 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 ModulName

2. Installation des Moduls:

Install-Module -Name ModulName -Scope PenggunaSaatIni

3. Zeigen Sie die Module an, die bereits auf dem System installiert sind:

Get-InstalledModule

4. Löschen von Modulen:

Uninstall-Module -Name ModulName

5. Aktualisieren des Moduls:

Update-Module -Name ModulName

Implementieren 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:

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 RemoteSigned

2. 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 PSWindowsUpdate

3. ActiveDirectory

Funktion: Verwalten Sie Active Directory wie Benutzer, Gruppen und Richtlinien.

Beispiel-Befehl:

Get-ADUser -Filter * -Properties  DisplayName

4. Pester

Funktion: Testen von PowerShell-Skripten und -Modulen, um die Codequalität sicherzustellen.

Installation:

Install-Module -Name Pester

5. 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

Neueste Artikel