Mit PowerShell Remoting können Sie PowerShell-Befehle ausführen oder auf vollständige PowerShell-Sitzungen auf Remote-Windows-Systemen zugreifen. Es ähnelt SSH für den Zugriff auf Remote-Terminals unter anderen Betriebssystemen.

PowerShell ist standardmäßig gesperrt, daher müssen Sie PowerShell Remoting vor der Verwendung aktivieren. Dieser Einrichtungsprozess ist etwas komplexer, wenn Sie eine Arbeitsgruppe anstelle einer Domäne verwenden (z. B. in einem Heimnetzwerk), aber wir führen Sie durch.

Aktivieren Sie PowerShell-Remoting auf dem PC, auf den Sie remote zugreifen möchten

Zunächst müssen Sie PowerShell Remoting auf dem PC aktivieren, zu dem Sie Remoteverbindungen herstellen möchten. Auf diesem PC müssen Sie PowerShell mit Administratorrechten öffnen.

Drücken Sie in Windows 10 Windows + X und wählen Sie dann PowerShell (Admin) aus dem Power User-Menü.

Klicken Sie in Windows 7 oder 8 auf Start und geben Sie "Powershell" ein. Klicken Sie mit der rechten Maustaste auf das Ergebnis und wählen Sie "Als Administrator ausführen".

Geben Sie im PowerShell-Fenster das folgende Cmdlet (PowerShell-Name für einen Befehl) ein und drücken Sie die Eingabetaste:

Enable-PSRemoting -Force

Dieser Befehl startet den WinRM-Dienst, legt fest, dass er automatisch mit Ihrem System gestartet wird, und erstellt eine Firewall-Regel, die eingehende Verbindungen zulässt. Das-Force Ein Teil des Cmdlets weist PowerShell an, diese Aktionen auszuführen, ohne dass Sie für jeden Schritt aufgefordert werden.

Wenn Ihre PCs Teil einer Domäne sind, müssen Sie nur noch die Einrichtung vornehmen. Sie können mit dem Testen Ihrer Verbindung fortfahren. Wenn Ihre Computer Teil einer Arbeitsgruppe sind, in der sie sich wahrscheinlich in einem Heimnetzwerk oder in einem Netzwerk für kleine Unternehmen befinden, müssen Sie etwas mehr Setup-Aufgaben erledigen.

Hinweis: Ihr Erfolg beim Einrichten von Remoting in einer Domänenumgebung hängt vollständig von den Einstellungen Ihres Netzwerks ab. Remoting ist möglicherweise deaktiviert oder sogar automatisch aktiviert. Dies geschieht automatisch durch Gruppenrichtlinien, die von einem Administrator konfiguriert werden. Möglicherweise verfügen Sie auch nicht über die Berechtigungen, die Sie zum Ausführen von PowerShell als Administrator benötigen. Wenden Sie sich wie immer an Ihre Admins, bevor Sie so etwas versuchen. Sie haben möglicherweise gute Gründe, die Praxis nicht zuzulassen, oder sie sind bereit, sie für Sie einzurichten.

Richten Sie Ihre Arbeitsgruppe ein

Wenn sich Ihre Computer nicht in einer Domäne befinden, müssen Sie einige weitere Schritte ausführen, um die Einstellungen vorzunehmen. Sie sollten Remoting bereits auf dem PC aktiviert haben, zu dem Sie eine Verbindung herstellen möchten, wie im vorherigen Abschnitt beschrieben.

Hinweis: Damit PowerShell Remoting in einer Arbeitsgruppenumgebung funktioniert, müssen Sie Ihr Netzwerk als privates und nicht als öffentliches Netzwerk konfigurieren. Weitere Informationen zu den Unterschieden und zum Wechsel in ein privates Netzwerk, wenn Sie bereits ein öffentliches Netzwerk eingerichtet haben, finden Sie in unserem Leitfaden zu privaten und öffentlichen Netzwerken.

Als nächstes müssen Sie die TrustedHosts-Einstellung auf dem PC konfigurieren, zu dem Sie eine Verbindung herstellen möchtenund der PC (oder die PCs), von dem aus Sie eine Verbindung herstellen möchten, damit sich die Computer gegenseitig vertrauen. Sie können dies auf zwei Arten tun.

Wenn Sie sich in einem Heimnetzwerk befinden, von dem aus Sie eine Fernverbindung mit einem PC herstellen möchten, können Sie das folgende Cmdlet in PowerShell eingeben (erneut müssen Sie es als Administrator ausführen).

Set-Item wsman:localhostclient rustedhosts *

Das Sternchen ist ein Platzhaltersymbol für alle PCs. Wenn Sie stattdessen Computer einschränken möchten, die eine Verbindung herstellen können, können Sie das Sternchen durch eine durch Kommas getrennte Liste von IP-Adressen oder Computernamen für genehmigte PCs ersetzen.

Nachdem Sie diesen Befehl ausgeführt haben, müssen Sie den WinRM-Dienst neu starten, damit Ihre neuen Einstellungen wirksam werden. Geben Sie das folgende Cmdlet ein und drücken Sie die Eingabetaste:

Restart-Service WinRM

Denken Sie daran, dass Sie diese beiden Cmdlets auf dem PC ausführen müssen, zu dem Sie eine Verbindung herstellen möchten, sowie auf allen PCs, von denen Sie eine Verbindung herstellen möchten.

Testen Sie die Verbindung

Nachdem Sie Ihre PCs für PowerShell Remoting eingerichtet haben, ist es an der Zeit, die Verbindung zu testen. Geben Sie auf dem PC, von dem Sie auf das Remote-System zugreifen möchten, das folgende Cmdlet in PowerShell ein (wobei „COMPUTER“ durch den Namen oder die IP-Adresse des Remote-PCs ersetzt wird), und drücken Sie die Eingabetaste:

Test-WsMan COMPUTER

Dieser einfache Befehl testet, ob der WinRM-Dienst auf dem Remote-PC ausgeführt wird. Wenn der Vorgang erfolgreich abgeschlossen wurde, werden im Fenster Informationen zum WinRM-Dienst des Remote-Computers angezeigt. Dies bedeutet, dass WinRM aktiviert ist und Ihr PC kommunizieren kann. Wenn der Befehl fehlschlägt, wird stattdessen eine Fehlermeldung angezeigt.

Führen Sie einen einzelnen Remote-Befehl aus

Um einen Befehl auf dem Remote-System auszuführen, verwenden Sie dieInvoke-Command Cmdlet mit der folgenden Syntax:

Invoke-Command -ComputerName COMPUTER -ScriptBlock { COMMAND } -credential USERNAME

„COMPUTER“ steht für den Namen oder die IP-Adresse des Remote-PCs. "BEFEHL" ist der Befehl, den Sie ausführen möchten. "USERNAME" ist der Benutzername, den Sie auf dem Remote-Computer ausführen möchten. Sie werden aufgefordert, ein Kennwort für den Benutzernamen einzugeben.

Hier ist ein Beispiel. Ich möchte den Inhalt des Verzeichnisses C: auf einem Remote-Computer mit der IP-Adresse 10.0.0.22 anzeigen. Ich möchte den Benutzernamen "wjgle" verwenden, also würde ich den folgenden Befehl verwenden:

Invoke-Command -ComputerName 10.0.0.22 -ScriptBlock { Get-ChildItem C: } -credential wjgle

Starten Sie eine Remote-Sitzung

Wenn Sie mehrere Cmdlets auf dem Remote-PC ausführen möchten, müssen Sie das Cmdlet Invoke-Command und die Remote-IP-Adresse nicht wiederholt eingeben, sondern Sie können stattdessen eine Remote-Sitzung starten. Geben Sie einfach das folgende Cmdlet ein und drücken Sie die Eingabetaste:

Enter-PSSession -ComputerName COMPUTER -Credential USER

Ersetzen Sie erneut "COMPUTER" durch den Namen oder die IP-Adresse des Remote-PCs und ersetzen Sie "USER" durch den Namen des Benutzerkontos, das Sie aufrufen möchten.

Ihre Aufforderung ändert sich, um den Remote-Computer anzugeben, mit dem Sie verbunden sind, und Sie können beliebig viele PowerShell-Cmdlets direkt auf dem Remote-System ausführen.

Top-Tipps:
Kommentare: