Enable-PSRemoting

Úgy konfigurálja a számítógépet, hogy távoli parancsokat fogadjon.

Syntax

Enable-PSRemoting
      [-Force]
      [-SkipNetworkProfileCheck]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

Ez a parancsmag csak a Windows platformon érhető el.

A Enable-PSRemoting parancsmag úgy konfigurálja a számítógépet, hogy fogadja a WS-Management technológiával küldött PowerShell távoli parancsokat. A WS-Management-alapú PowerShell-remoting jelenleg csak Windows-platformon támogatott.

A PowerShell-újraformálás alapértelmezés szerint engedélyezve van a Windows Server-platformokon. Enable-PSRemoting Engedélyezheti a PowerShell-újramotálást a Windows más támogatott verzióin, és újra engedélyezheti az újraegyezést, ha az le van tiltva.

Ezt a parancsot csak egyszer kell futtatnia minden olyan számítógépen, amely parancsokat fog kapni. Nem kell futtatnia olyan számítógépeken, amelyek csak parancsokat küldenek. Mivel a konfiguráció elindítja a figyelőket a távoli kapcsolatok elfogadásához, célszerű csak ott futtatni, ahol szükség van rá.

Ha a számítógép nyilvános hálózaton van, a PowerShell újratelepítésének engedélyezése a Windows ügyfélverzióiban általában nem engedélyezett, de ezt a korlátozást kihagyhatja a SkipNetworkProfileCheck paraméterrel. További információt a SkipNetworkProfileCheck paraméter leírásában talál.

Egyetlen számítógépen több PowerShell-telepítés is létezhet egymás mellett. A futtatás Enable-PSRemoting konfigurál egy újratelepítési végpontot a parancsmagot futtató adott telepítési verzióhoz. Így ha a PowerShell 6.2 futtatása közben fut Enable-PSRemoting , a rendszer konfigurál egy újraegyeztetési végpontot, amely a PowerShell 6.2-t futtatja. Ha a PowerShell 7 előzetes verziójának futtatása közben fut Enable-PSRemoting , a rendszer konfigurál egy újraegyeztetési végpontot, amely a PowerShell 7 előzetes verzióját futtatja.

Enable-PSRemoting szükség szerint két újraalakítási végpontkonfigurációt hoz létre. Ha a végpontkonfigurációk már léteznek, akkor egyszerűen engedélyezve vannak. A létrehozott konfigurációk azonosak, de eltérő nevük van. Az egyiknek egy egyszerű neve lesz, amely a munkamenetet üzemeltető PowerShell-verziónak felel meg. A másik konfigurációnév részletesebb információkat tartalmaz a munkamenetet üzemeltető PowerShell-verzióról. Ha például a PowerShell 6.2-ben futEnable-PSRemoting, két konfigurált végpontot fog kapni PowerShell.6, PowerShell.6.2.2 néven. Ez lehetővé teszi, hogy a PowerShell.6 egyszerű névvel kapcsolatot hozzon létre a PowerShell 6 legújabb gazdagépverzióval. Vagy csatlakozhat egy adott PowerShell-gazdagépverzióhoz a PowerShell.6.2.2 hosszabb nevével.

Az újonnan engedélyezett újrakapcsolódási végpontok használatához a ConfigurationName paraméterrel név szerint kell megadnia őket, amikor távoli kapcsolatot hoz létre a Invoke-Command,New-PSSession,Enter-PSSession parancsmagok használatával. További információ: 4. példa.

A Enable-PSRemoting parancsmag a következő műveleteket hajtja végre:

  • Futtatja a Set-WSManQuickConfig parancsmagot, amely a következő feladatokat hajtja végre:
    • Elindítja a WinRM szolgáltatást.
    • A WinRM szolgáltatás indítási típusát automatikusra állítja.
    • Létrehoz egy figyelőt, amely bármilyen IP-címen fogadja a kéréseket.
    • Engedélyezi a WS-Management kommunikáció tűzfalkivételét.
    • Szükség esetén létrehozza az egyszerű és hosszú nevű munkamenetvégpont-konfigurációkat.
    • Engedélyezi az összes munkamenet-konfigurációt.
    • Módosítja az összes munkamenet-konfiguráció biztonsági leíróját a távelérés engedélyezéséhez.
  • Újraindítja a WinRM szolgáltatást, hogy az előző módosításokat érvényessé tegye.

A parancsmag Windows-platformon való futtatásához indítsa el a PowerShellt a Futtatás rendszergazdaként lehetőséggel. Ez a parancsmag nem érhető el a PowerShell Linux- vagy MacOS-verzióiban.

Figyelemfelhívás

Ez a parancsmag nem befolyásolja a Windows PowerShell által létrehozott távoli végpontkonfigurációkat. Ez csak a PowerShell 6-os és újabb verziójával létrehozott végpontokat érinti. A Windows PowerShell által üzemeltetett PowerShell-újrakapcsolódási végpontok engedélyezéséhez és letiltásához futtassa a Enable-PSRemoting parancsmagot egy Windows PowerShell-munkameneten belül.

Példák

1. példa: Számítógép konfigurálása távoli parancsok fogadásához

Ez a parancs úgy konfigurálja a számítógépet, hogy távoli parancsokat fogadjon.

Enable-PSRemoting

WARNING: PowerShell remoting has been enabled only for PowerShell Core configurations and
does not affect Windows PowerShell remoting configurations. Run this cmdlet in Windows
PowerShell to affect all PowerShell remoting configurations.

2. példa: Számítógép konfigurálása távoli parancsok fogadásához megerősítési kérés nélkül

Ez a parancs úgy konfigurálja a számítógépet, hogy távoli parancsokat fogadjon. A Kényszerítés paraméter letiltja a felhasználói kéréseket.

Enable-PSRemoting -Force

WARNING: PowerShell remoting has been enabled only for PowerShell Core configurations and
does not affect Windows PowerShell remoting configurations. Run this cmdlet in Windows
PowerShell to affect all PowerShell remoting configurations.

3. példa: Távelérés engedélyezése ügyfeleken

Ez a példa bemutatja, hogyan engedélyezheti a távoli hozzáférést a nyilvános hálózatokról a Windows operációs rendszer ügyfélverzióiban. A tűzfalszabály neve eltérő lehet a Windows különböző verzióiban. A szabályok listájának megtekintéséhez használható Get-NetFirewallRule . A tűzfalszabály engedélyezése előtt tekintse meg a szabály biztonsági beállításait annak ellenőrzéséhez, hogy a konfiguráció megfelel-e a környezetnek.

Get-NetFirewallRule -Name 'WINRM*' | Select-Object -Property Name

Name
----
WINRM-HTTP-In-TCP-NoScope
WINRM-HTTP-In-TCP
WINRM-HTTP-Compat-In-TCP-NoScope
WINRM-HTTP-Compat-In-TCP

Enable-PSRemoting -SkipNetworkProfileCheck -Force
Set-NetFirewallRule -Name 'WINRM-HTTP-In-TCP' -RemoteAddress Any

Alapértelmezés szerint olyan hálózati szabályokat hoz létre, Enable-PSRemoting amelyek lehetővé teszik a magán- és tartományi hálózatokról való távoli hozzáférést. A parancs a SkipNetworkProfileCheck paramétert használja a helyi alhálózaton lévő nyilvános hálózatokról való távelérés engedélyezéséhez. A parancs a megerősítést kérő üzenetek letiltására szolgáló Force paramétert adja meg.

A SkipNetworkProfileCheck paraméter nem befolyásolja a Windows operációs rendszer kiszolgálói verzióit, amelyek alapértelmezés szerint engedélyezik az ugyanazon helyi alhálózaton lévő nyilvános hálózatokról való távelérést.

A Set-NetFirewallRule NetSecurity modul parancsmagja hozzáad egy tűzfalszabályt, amely bármely távoli helyről lehetővé teszi a nyilvános hálózatokról való távoli hozzáférést. Ide tartoznak a különböző alhálózatok helyei.

4. példa: Távoli munkamenet létrehozása az újonnan engedélyezett végpontkonfigurációhoz

Ez a példa bemutatja, hogyan engedélyezheti a PowerShell-újramotálást a számítógépen, hogyan keresheti meg a konfigurált végpontneveket, és hogyan hozhat létre távoli munkamenetet az egyik végponton.

Az első parancs lehetővé teszi a PowerShell újramotálását a számítógépen.

A második parancs felsorolja a végpontkonfigurációkat.

A harmadik parancs létrehoz egy távoli PowerShell-munkamenetet ugyanahhoz a géphez, a PowerShell.7-végpontot név szerint megadva. A távoli munkamenet a PowerShell 7 legújabb verziójával (7.3.0) lesz üzemeltetve.

Az utolsó parancs a távoli munkamenetben hozzáfér a $PSVersionTable változóhoz a munkamenetet üzemeltető PowerShell-verzió megjelenítéséhez.

Enable-PSRemoting -Force

Get-PSSessionConfiguration

$session = New-PSSession -ComputerName localhost -ConfigurationName PowerShell.7

Invoke-Command -Session $session -ScriptBlock { $PSVersionTable }

WARNING: PowerShell remoting has been enabled only for PowerShell Core configurations and
does not affect Windows PowerShell remoting configurations. Run this cmdlet in Windows
PowerShell to affect all PowerShell remoting configurations.

Name          : PowerShell.7
PSVersion     : 7.3
StartupScript :
RunAsUser     :
Permission    : NT AUTHORITY\INTERACTIVE AccessAllowed,
                BUILTIN\Administrators AccessAllowed,
                BUILTIN\Remote Management Users AccessAllowed

Name          : PowerShell.7.3.0
PSVersion     : 7.3
StartupScript :
RunAsUser     :
Permission    : NT AUTHORITY\INTERACTIVE AccessAllowed,
                BUILTIN\Administrators AccessAllowed,
                BUILTIN\Remote Management Users AccessAllowed

Name                           Value
----                           -----
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSEdition                      Core
PSRemotingProtocolVersion      2.3
Platform                       Win32NT
SerializationVersion           1.1.0.1
GitCommitId                    6.2.2
WSManStackVersion              3.0
PSVersion                      6.2.2
OS                             Microsoft Windows 10.0.18363

Feljegyzés

A tűzfalszabály neve a Windows verziójától függően eltérő lehet. Get-NetFirewallRule A parancsmaggal listázhatja a rendszer szabályainak nevét.

Paraméterek

-Confirm

Jóváhagyást kér a parancsmag futtatása előtt.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Kényszeríti a parancs futtatását anélkül, hogy felhasználói megerősítést kérne.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SkipNetworkProfileCheck

Azt jelzi, hogy ez a parancsmag lehetővé teszi a Windows operációs rendszer ügyfélverzióinak újrahangosítását, ha a számítógép nyilvános hálózaton van. Ez a paraméter engedélyezi a nyilvános hálózatok tűzfalszabályát, amely csak az azonos helyi alhálózatban lévő számítógépekről engedélyezi a távelérést.

Ez a paraméter nem érinti a Windows operációs rendszer kiszolgálói verzióit, amelyek alapértelmezés szerint helyi alhálózati tűzfalszabálysal rendelkeznek a nyilvános hálózatokhoz. Ha a helyi alhálózati tűzfalszabály le van tiltva egy kiszolgálóverzión, Enable-PSRemoting a paraméter értékétől függetlenül újra engedélyezi azt.

Ha el szeretné távolítani a helyi alhálózati korlátozást, és engedélyezni szeretné a távelérést a nyilvános hálózatok minden helyről, használja a Set-NetFirewallRuleNetSecurity modul parancsmagát.

Ezt a paramétert a PowerShell 3.0-ban vezettük be.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Bemutatja, mi történne a parancsmag futtatásakor. A parancsmag nem fut.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Bevitelek

None

Ehhez a parancsmaghoz nem lehet objektumokat csövezni.

Kimenetek

String

Ez a parancsmag az eredményeket leíró sztringeket adja vissza.

Jegyzetek

Ez a parancsmag csak Windows-platformokon érhető el.

A Windows operációs rendszer kiszolgálói verzióiban olyan tűzfalszabályokat hoz létre a magán- és tartományi hálózatokhoz, Enable-PSRemoting amelyek engedélyezik a távelérést, és létrehoz egy tűzfalszabályt a nyilvános hálózatokhoz, amelyek csak az azonos helyi alhálózatban lévő számítógépekről engedélyezik a távelérést.

A Windows operációs rendszer ügyfélverzióiban olyan tűzfalszabályokat hoz létre a magán- és tartományi hálózatokhoz, Enable-PSRemoting amelyek engedélyezik a korlátlan távelérést. Ha olyan tűzfalszabályt szeretne létrehozni a nyilvános hálózatokhoz, amely lehetővé teszi a távoli hozzáférést ugyanabból a helyi alhálózatból, használja a SkipNetworkProfileCheck paramétert.

A Windows operációs rendszer ügyfél- vagy kiszolgálóverzióiban hozzon létre egy tűzfalszabályt a nyilvános hálózatokhoz, amelyek eltávolítják a helyi alhálózati korlátozást, és engedélyezik a távelérést, a NetSecurity modul parancsmagja segítségével Set-NetFirewallRule futtassa a következő parancsot: Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any

Enable-PSRemoting az összes munkamenet-konfiguráció engedélyezéséhez állítsa az összes munkamenet-konfiguráció Engedélyezett tulajdonságának értékét a következőre $True: .

Enable-PSRemoting eltávolítja a Deny_All és Network_Deny_All beállításait. Ez távoli hozzáférést biztosít a helyi használatra fenntartott munkamenet-konfigurációkhoz.