Slik kjører du PowerShell-kommandoer på eksterne datamaskiner

Innholdsfortegnelse:

Slik kjører du PowerShell-kommandoer på eksterne datamaskiner
Slik kjører du PowerShell-kommandoer på eksterne datamaskiner

Video: Slik kjører du PowerShell-kommandoer på eksterne datamaskiner

Video: Slik kjører du PowerShell-kommandoer på eksterne datamaskiner
Video: How to Fix Windows Modules Installer Worker High CPU - YouTube 2024, April
Anonim
Med PowerShell Remoting kan du kjøre PowerShell-kommandoer eller få tilgang til full PowerShell-økter på eksterne Windows-systemer. Det ligner på SSH for å få tilgang til eksterne terminaler på andre operativsystemer.
Med PowerShell Remoting kan du kjøre PowerShell-kommandoer eller få tilgang til full PowerShell-økter på eksterne Windows-systemer. Det ligner på SSH for å få tilgang til eksterne terminaler på andre operativsystemer.

PowerShell er låst ned som standard, så du må aktivere PowerShell Remoting før du bruker den. Denne oppsettprosessen er litt mer kompleks hvis du bruker en arbeidsgruppe i stedet for et domene, for eksempel på et hjemmenettverk, men vi vil gå gjennom det.

Aktiver PowerShell Remoting på PCen du vil få tilgang til eksternt

Ditt første skritt er å aktivere PowerShell Remoting på PCen som du vil gjøre eksterne tilkoblinger til. På den PCen må du åpne PowerShell med administrative rettigheter.

I Windows 10, trykk Windows + X og velg PowerShell (Admin) fra Power User-menyen.

I Windows 7 eller 8, klikk Start, og skriv deretter "powershell." Høyreklikk resultatet og velg "Kjør som administrator."
I Windows 7 eller 8, klikk Start, og skriv deretter "powershell." Høyreklikk resultatet og velg "Kjør som administrator."
I PowerShell-vinduet skriver du inn følgende cmdlet (PowerShells navn for en kommando), og deretter trykker du på Enter:
I PowerShell-vinduet skriver du inn følgende cmdlet (PowerShells navn for en kommando), og deretter trykker du på Enter:

Enable-PSRemoting -Force

Denne kommandoen starter WinRM-tjenesten, setter den i gang automatisk med systemet, og oppretter en brannmurregel som tillater innkommende tilkoblinger. De
Denne kommandoen starter WinRM-tjenesten, setter den i gang automatisk med systemet, og oppretter en brannmurregel som tillater innkommende tilkoblinger. De

-Force

En del av cmdlet forteller PowerShell å utføre disse handlingene uten å be deg om hvert trinn.

Hvis PCene er en del av et domene, er det alt oppsettet du må gjøre. Du kan hoppe over på forhånd for å teste forbindelsen din. Hvis datamaskiner er en del av en arbeidsgruppe, som de sannsynligvis er på et hjem- eller småbedriftsnettverk, har du litt mer oppsettarbeid å gjøre.

Merk: Din suksess når du konfigurerer fjernelse i et domenemiljø, avhenger helt av nettverksoppsettet. Fjernelse kan være deaktivert - eller aktivert automatisk - etter gruppepolicy konfigurert av en administrator. Du har kanskje ikke de tillatelsene du trenger for å kjøre PowerShell som administrator. Som alltid, sjekk med dine admins før du prøver noe slikt. De kan ha gode grunner til ikke å tillate øvelsen, eller de kan være villige til å sette opp det for deg.

Sett opp arbeidsgruppen din

Hvis datamaskinene dine ikke er på et domene, må du utføre noen få trinn for å få ting opprettet. Du bør allerede ha aktivert Remoting på PCen du vil koble til, som beskrevet i forrige avsnitt.

Merk: Hvis du vil fjerne PowerShell Remoting for å arbeide i et arbeidsgruppemiljø, må du konfigurere nettverket ditt som et privat, ikke offentlig nettverk. For mer om forskjellen - og hvordan å bytte til et privat nettverk hvis du allerede har et offentlig nettverk satt opp - sjekk ut vår guide på private vs offentlige nettverk.

Deretter må du konfigurere TrustedHosts-innstillingen på både PCen du vil koble tilog PCen (eller PCene) du vil koble fra, slik at datamaskinene vil stole på hverandre. Du kan gjøre dette på en av to måter.

Hvis du er i et hjemmenettverk der du vil fortsette og stoler på hvilken som helst PC som skal kobles eksternt, kan du skrive følgende cmdlet i PowerShell (igjen må du kjøre den som administrator).

Set-Item wsman:localhostclient rustedhosts *

Stjernen er et jokertegn for alle PCer. Hvis du i stedet vil begrense datamaskiner som kan koble til, kan du erstatte stjernen med en kommaseparert liste over IP-adresser eller datamaskinnavn for godkjente PCer.

Etter at du har kjørt den kommandoen, må du starte WinRM-tjenesten på nytt slik at de nye innstillingene får virkning. Skriv inn følgende cmdlet og trykk deretter Enter:

Restart-Service WinRM

Og husk, du må løpe de to cmdlets på PCen du vil koble til, samt på alle PCer du vil koble fra.
Og husk, du må løpe de to cmdlets på PCen du vil koble til, samt på alle PCer du vil koble fra.

Test tilkoblingen

Nå som du har satt opp PCene dine for PowerShell Remoting, er det på tide å teste forbindelsen. På PC-en du ønsker å få tilgang til fjernsystemet, skriv inn følgende cmdlet i PowerShell (erstatt "COMPUTER" med navnet eller IP-adressen til den eksterne PCen), og trykk deretter på Enter:

Test-WsMan COMPUTER

Denne enkle kommandoen tester om WinRM-tjenesten kjører på den eksterne PCen. Hvis det er fullført, ser du informasjon om den eksterne datamaskinens WinRM-tjeneste i vinduet som betyr at WinRM er aktivert og datamaskinen din kan kommunisere. Hvis kommandoen mislykkes, vil du se en feilmelding i stedet.

Image
Image

Utfør en enkelt fjernkommando

For å kjøre en kommando på fjernsystemet, bruk

Invoke-Command

cmdlet ved hjelp av følgende syntaks:

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

"COMPUTER" representerer den eksterne PC-navnet eller IP-adressen. "COMMAND" er kommandoen du vil kjøre. "USERNAME" er brukernavnet du vil kjøre kommandoen som på den eksterne datamaskinen. Du blir bedt om å angi et passord for brukernavnet.

Her er et eksempel. Jeg vil se innholdet i katalogen C: på en ekstern datamaskin med IP-adressen 10.0.0.22. Jeg vil bruke brukernavnet "wjgle", så jeg vil bruke følgende kommando:

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

Image
Image

Start en ekstern sesjon

Hvis du har flere cmdlets du vil kjøre på den eksterne PCen, i stedet for å gjenta CMDlet og den eksterne IP-adressen gjentatte ganger, kan du starte en ekstern økt i stedet. Skriv bare følgende cmdlet og trykk deretter Enter:

Enter-PSSession -ComputerName COMPUTER -Credential USER

Igjen, erstatt "COMPUTER" med navnet eller IP-adressen til den eksterne PC-en, og erstatt "USER" med navnet på brukerkontoen du vil påkalle.

Anbefalt: