about_Remote_Requirements

Letzte Aktualisierung: Mai 2014

Betrifft: Windows PowerShell 2.0, Windows PowerShell 3.0, Windows PowerShell 4.0, Windows PowerShell 5.0

THEMA

about_Remote_Requirements

KURZE BESCHREIBUNG

Beschreibt die System- und Konfigurationsanforderungen für das Ausführen von Remote-Befehlen in Windows PowerShell®.

LANGE BESCHREIBUNG

In diesem Thema wird beschrieben, welche Systemanforderungen, Benutzeranforderungen und Ressourcenanforderungen es für die Herstellung von Remote-Verbindungen und das Ausführen von Remote-Befehlen Windows PowerShell gibt. Darüber hinaus werden Informationen zum Konfigurieren von Remote-Vorgängen bereitgestellt.

Hinweis: Viele Cmdlets (einschließlich der Get-Service-, Get-Process-, Get-WMIObject-, Get-EventLog- und Get-WinEvent-Cmdlets) rufen Objekte von Remote-Computern ab und verwenden dazu Microsoft .NET Framework-Methoden. Sie verwenden nicht die Windows PowerShell-Remoting-Infrastruktur. Die in diesem Dokument erläuterten Anforderungen gelten für diese Cmdlets nicht. Um herauszufinden, welche Cmdlets zwar über einen ComputerName-Parameter verfügen aber nicht das Windows PowerShell-Remoting verwenden, lesen Sie die Beschreibung des ComputerName-Parameters der Cmdlets.

SYSTEMANFORDERUNGEN

Zum Ausführen von Remote-Sitzungen in Windows PowerShell 3.0 müssen der lokale und der Remote-Computer über Folgendes verfügen:

  • -- Windows PowerShell 3.0 oder höher

  • – Microsoft .NET Framework 4.0 oder höher

  • – Windows-Remoteverwaltung 3.0

Zum Ausführen von Remote-Sitzungen in Windows PowerShell 2.0 müssen der lokale und der Remote-Computer über Folgendes verfügen:

  • -- Windows PowerShell 2.0 oder höher

  • – Microsoft .NET Framework 2.0 oder höher

  • – Windows-Remoteverwaltung 2.0

Sie können Remote-Sitzungen zwischen Computern erstellen, auf denen Windows PowerShell 2.0 und Windows PowerShell 3.0 ausgeführt wird. Allerdings stehen Funktionen, die nur in Windows PowerShell 3.0 ausgeführt werden können, z. B. die Möglichkeit zum Trennen und erneutes Verbinden mit Sitzungen, nur dann zur Verfügung, wenn auf beiden Computern Windows PowerShell 3.0 ausgeführt wird.

Um die Versionsnummer der installierten Version von Windows PowerShell herauszufinden, verwenden Sie die automatische Variable „$PSVersionTable“.

Windows-Remoteverwaltung (WinRM) 3.0 und Microsoft .NET Framework 4.0 sind in Windows 8, Windows Server 2012 und neueren Versionen des Windows-Betriebssystems enthalten. WinRM 3.0 ist in Windows Management Framework 3.0 für ältere Betriebssysteme enthalten. Wenn der Computer nicht über die erforderliche Version von WinRM oder Microsoft .NET Framework verfügt, schlägt die Installation fehl.

BENUTZERBERECHTIGUNGEN

Um standardmäßig Remote-Sitzungen erstellen und Remote-Befehlen ausführen zu können, muss der aktuelle Benutzer Mitglied der Gruppe „Administratoren“ auf dem Remote-Computer sein oder die Anmeldeinformationen eines Administrators angeben können. Andernfalls führt der Befehl zu einem Fehler.

Die zum Erstellen von Sitzungen und Ausführen von Befehlen auf einem Remote-Computer (oder in einer Remote-Sitzung auf dem lokalen Computer) erforderlichen Berechtigungen werden durch die Sitzungskonfiguration (auch bekannt als „Endpunkt") auf dem Remote-Computer erteilt, mit der die Sitzungsaufbau sich verbindet. Insbesondere der Sicherheitsdeskriptor der Sitzungskonfiguration legt fest, wer Zugriff auf die Sitzungskonfiguration hat und wer sie zum Verbindungsaufbau verwenden darf.

Die Sicherheitsdeskriptoren der Standard-Sitzungskonfigurationen (Microsoft.PowerShell, Microsoft.Powershell32 und Microsoft.PowerShell.Workflow) ermöglichen nur Mitgliedern der Gruppe „Administratoren“ den Zugriff.

Wenn der aktuelle Benutzer nicht die Berechtigung zum Verwenden der Sitzungskonfiguration besitzt, schlägt der Befehl zum Ausführen eines Befehls (der eine temporäre Sitzung verwendet) fehl, oder das Erstellen einer dauerhaften Sitzung auf dem Remote-Computer schlägt fehl. Der Benutzer kann mithilfe des ConfigurationName-Parameters von Cmdlets, die Sitzungen erstellen, eine andere Sitzungskonfiguration auswählen, sofern eine andere verfügbar ist.

Mitglieder der Gruppe „Administratoren“ auf einem Computer können bestimmen, wer berechtigt ist, Remote-Verbindungen zu dem Computer herzustellen, indem sie die Sicherheitsdeskriptoren der Standard-Sitzungskonfigurationen ändern und indem sie neue Sitzungskonfigurationen abweichenden Sicherheitsdeskriptoren erstellen.

Weitere Informationen zu Sitzungskonfigurationen finden Sie unter „about_Session_Configurations“ (https://go.microsoft.com/fwlink/?LinkID=145152).

WINDOWS-NETZWERKADRESSEN

Ab Windows PowerShell 3.0 kann das Enable-PSRemoting-Cmdlet das Remoting auf Client- und Server-Versionen von Windows in Privat-, Domänen- und öffentlichen Netzwerken aktivieren.

Auf Server-Versionen von Windows mit Privat- und Domänennetzwerken erstellt das Enable-PSRemoting-Cmdlet Firewall-Regeln, die uneingeschränkte Remote-Zugriff ermöglichen. Das Cmdlet aktiviert auch eine Firewall-Regel für öffentliche Netzwerke, die nur den Remote-Zugriff von Computern im gleichen lokalen Teilnetz zulässt. Diese Firewall-Regel für das lokale Teilnetz ist auf Server-Versionen von Windows in öffentlichen Netzwerken standardmäßig aktiviert, aber Enable-PSRemoting wendet diese Regel erneut an, falls diese geändert oder gelöscht wurde.

Auf Client-Versionen von Windows mit Privat- und Domänennetzwerken erstellt das Enable-PSRemoting-Cmdlet standardmäßig Firewall-Regeln, die den uneingeschränkten Remote-Zugriff ermöglichen.

Um das Remoting auf Client-Versionen von Windows mit öffentlichen Netzwerken zu aktivieren, verwenden Sie den SkipNetworkProfileCheck-Parameter des Enable-PSRemoting-Cmdlets. Dadurch wird eine Firewall-Regel erstellt, die den Remote-Zugriff nur von Computern im gleichen lokalen Teilnetz ermöglicht.

Um diese Beschränkung auf das lokale Teilnetz in öffentlichen Netzwerken zu entfernen und um den Remote-Zugriff von allen Standorten aus auf Client- und Server-Versionen von Windows zuzulassen, verwenden Sie das Set-NetFirewallRule-Cmdlet im NetSecurity-Modul. Führen Sie den folgenden Befehl aus:

        Set-NetFirewallRule –Name "WINRM-HTTP-In-TCP-PUBLIC" –RemoteAddress Any   

In Windows PowerShell 2.0 werden auf Server-Versionen von Windows durch Enable-PSRemoting Firewall-Regeln erstellt, die den Remote-Zugriff auf alle Netzwerke ermöglichen.

In Windows PowerShell 2.0 werden auf Client-Versionen von Windows durch Enable-PSRemoting Firewall-Regeln nur in Privat- und Domänennetzwerken erstellt. Wenn die Netzwerkadresse öffentlich ist, schlägt Enable-PSRemoting fehl.

AUSFÜHREN ALS ADMINISTRATOR

Für die folgenden Remoting-Vorgänge sind Administratorberechtigungen erforderlich:

  • – Herstellen einer Remote-Verbindung mit dem lokalen Computer. Dies wird auch als „Loopback“-Szenario bezeichnet.

  • – Verwalten von Sitzungskonfigurationen auf dem lokalen Computer.

  • – Anzeigen und Ändern von WS-Management-Einstellungen auf dem lokalen Computer. Dies sind die Einstellungen im Knoten „LocalHost“ auf dem WSMAN: Laufwerk.

Sie müssen zum Durchführen dieser Aufgaben Windows PowerShell mit der Option „Als Administrator ausführen“ – sogar, wenn Sie Mitglied der Gruppe „Administratoren“ auf dem lokalen Computer sind.

So starten Sie in Windows 7 und Windows Server 2008 R2 Windows PowerShell mit der Option „Als Administrator ausführen“:

  • 1. Klicken Sie auf „Start“, „Alle Programme“, „Zubehör“ und dann auf den Windows PowerShell-Ordner.

  • 2. Klicken Sie mit der rechten Maustaste auf Windows PowerShell, und klicken Sie dann auf „Als Administrator ausführen“.

So starten Sie Windows PowerShell mit der Option „Als Administrator ausführen“:

  • 1. Klicken Sie auf „Start“, „Alle Programme“ und dann auf den Windows PowerShell-Ordner.

  • 2. Klicken Sie mit der rechten Maustaste auf Windows PowerShell, und klicken Sie dann auf „Als Administrator ausführen“.

Die Option „Als Administrator ausführen“ steht auch in anderen Windows-Explorer-Einträgen für Windows PowerShell zur Verfügung, wozu auch Tastenkombinationen zählen. Klicken Sie einfach mit der rechten Maustaste auf das jeweilige Element, und klicken Sie dann auf „Als Administrator ausführen“.

Beim Starten von Windows PowerShell aus einem anderen Programm, z. B. Cmd.exe, verwenden Sie die Option „Als Administrator ausführen“, um das Programm zu starten.

KONFIGURIEREN IHRES COMPUTERS FÜR DAS REMOTING

Computer, auf denen alle unterstützten Versionen von Windows ausgeführt werden, können ohne jegliche Konfiguration Remote-Verbindungen zu Windows PowerShell herstellen und dort Remote-Befehle ausführen. Um allerdings Verbindungen zu empfangen und Benutzern das Erstellen von lokalen und remoten benutzerverwalteten Windows PowerShell-Sitzungen („PSSessions“) und das Ausführen von Befehlen auf dem lokalen Computer zu ermöglichen, müssen Sie das Windows PowerShell-Remoting auf dem Computer aktivieren.

Windows Server 2012 und neueren Versionen von Windows Server sind standardmäßig zum Windows PowerShell-Remoting in der Lage. Wenn die entsprechenden Einstellungen geändert wurden, können Sie die Standardeinstellungen wiederherstellen, indem Sie das Enable-PSRemoting-Cmdlet ausführen.

Auf allen anderen unterstützten Versionen von Windows müssen Sie das Enable-PSRemoting-Cmdlet ausführen, um das Windows PowerShell-Remoting zu aktivieren.

Die Remoting-Funktionen von Windows PowerShell werden vom der WinRM-Dienst unterstützt, bei dem es sich um die Microsoft-Implementierung des WS-Management-Protokolls (Web Services for Management) handelt. Wenn Sie das Windows PowerShell-Remoting aktivieren, ändern Sie die Standardkonfiguration von WS-Management und fügen eine Systemkonfiguration hinzu, die Benutzern den Verbindungsaufbau zu WS-Management ermöglicht.

So konfigurieren Sie Windows PowerShell für das Empfangen von Remote-Befehlen:

  • 1. Starten Sie Windows PowerShell mit der Option „Als Administrator ausführen“.

  • 2. Geben Sie in der Befehlszeile ein: Enable-PSRemoting

Um sicherzustellen, dass das Remoting ordnungsgemäß konfiguriert ist, führen Sie einen Testbefehl aus, z. B. den folgenden Befehl, der eine Remote-Sitzung auf dem lokalen Computer erstellt.

          New-PSSession

Wenn das Remoting ordnungsgemäß konfiguriert ist, erstellt der Befehl eine Sitzung auf dem lokalen Computer und gibt ein Objekt zurück, das die Sitzung repräsentiert. Die Ausgabe entspricht in etwa der folgenden Beispielausgabe:

          C:\PS> new-pssession

          Id Name        ComputerName    State    ConfigurationName
          -- ----        ------------    -----    -----
          1  Session1    localhost       Opened   Microsoft.PowerShell

Wenn der Befehl fehlschlägt, finden Sie Unterstützung unter „about_Remote_Troubleshooting“.

WAS SIND RICHTLINIEN?

Wenn Sie remote arbeiten, verwenden Sie zwei Instanzen von Windows PowerShell, eine auf dem lokalen Computer und eine auf dem Remote-Computer. Deshalb wird Ihre Arbeit durch die Windows-Richtlinien und die Windows PowerShell-Richtlinien auf den lokalen Computern und den Remote-Computern beeinflusst.

Im Allgemeinen gelten, bevor Sie eine Verbindung herstellen und während Sie die Verbindung herstellen, die Richtlinien auf dem lokalen Computer. Sobald Sie die Verbindung verwenden, gelten die Richtlinien auf dem Remote-Computer.

SIEHE AUCH

about_Remote

about_Remote_Variables

about_PSSessions

Invoke-Command

Enter-PSSession

New-PSSession