Enable-PSRemoting

Bilgisayarı uzak komutları alacak şekilde yapılandırılır.

Syntax

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

Description

cmdlet'i Enable-PSRemoting , bilgisayarı WS-Management teknolojisi kullanılarak gönderilen PowerShell uzak komutlarını alacak şekilde yapılandırıyor.

PowerShell uzaktan iletişim, Windows Server 2012'de varsayılan olarak etkindir. Windows'un desteklenen diğer sürümlerinde PowerShell uzaktan iletişimini etkinleştirmek ve devre dışı bırakılırsa Windows Server 2012'de uzaktan iletişimi yeniden etkinleştirmek için kullanabilirsiniz Enable-PSRemoting .

Komut alacak her bilgisayarda bu komutu yalnızca bir kez çalıştırmanız gerekir. Yalnızca komut gönderen bilgisayarlarda çalıştırmanız gerekmez. Yapılandırma dinleyicileri başlattığından, yalnızca gerektiğinde çalıştırmak akıllıca olur.

PowerShell 3.0'dan başlayarak, Enable-PSRemoting cmdlet bilgisayar bir ortak ağda olduğunda Windows'un istemci sürümlerinde PowerShell uzaktan iletişimini etkinleştirebilir. Daha fazla bilgi için SkipNetworkProfileCheck parametresinin açıklamasına bakın.

Enable-PSRemoting Cmdlet aşağıdaki işlemleri gerçekleştirir:

  • Aşağıdaki görevleri gerçekleştiren Set-WSManQuickConfig cmdlet'ini çalıştırır:
    • WinRM hizmetini başlatır.
    • WinRM hizmetindeki başlangıç türünü Otomatik olarak ayarlar.
    • Herhangi bir IP adresinde istekleri kabul etmek için bir dinleyici oluşturur.
    • WS-Management iletişimleri için güvenlik duvarı özel durumunu etkinleştirir.
    • Microsoft.PowerShell ve Microsoft.PowerShell.Workflow oturum yapılandırmalarını henüz kayıtlı değilse kaydeder.
    • Microsoft.PowerShell32 oturum yapılandırmasını henüz kayıtlı değilse 64 bit bilgisayarlara kaydeder.
    • Tüm oturum yapılandırmalarını etkinleştirir.
    • Uzaktan erişime izin vermek için tüm oturum yapılandırmalarının güvenlik tanımlayıcısını değiştirir.
  • Önceki değişiklikleri etkili hale getirmek için WinRM hizmetini yeniden başlatır.

Bu cmdlet'i Windows platformunda çalıştırmak için Yönetici olarak çalıştır seçeneğini kullanarak PowerShell'i başlatın. Bu, PowerShell'in Linux veya MacOS sürümleri için geçerli değildir.

Dikkat

Hem PowerShell 3.0 hem de PowerShell 2.0 bulunan sistemlerde ve Disable-PSRemoting cmdlet'lerini çalıştırmak Enable-PSRemoting için PowerShell 2.0'ı kullanmayın. Komutlar başarılı gibi görünebilir, ancak uzaktan iletişim doğru yapılandırılmamış. Uzaktan iletişimi etkinleştirmeye ve devre dışı bırakmaya yönelik uzak komutlar ve daha sonraki girişimler büyük olasılıkla başarısız olacaktır.

Örnekler

Örnek 1: Bir bilgisayarı uzak komutları alacak şekilde yapılandırma

Bu komut, bilgisayarı uzak komutları alacak şekilde yapılandırıyor.

Enable-PSRemoting

Örnek 2: Bir bilgisayarı, bir onay istemi olmadan uzak komutları alacak şekilde yapılandırma

Bu komut, bilgisayarı uzak komutları alacak şekilde yapılandırıyor. Force parametresi kullanıcı istemlerini gizler.

Enable-PSRemoting -Force

Örnek 3: İstemcilerde uzaktan erişime izin verme

Bu örnekte, Windows işletim sisteminin istemci sürümlerinde ortak ağlardan uzaktan erişime nasıl izin ver iletişiminin olduğu gösterilmektedir. Farklı Windows sürümleri için güvenlik duvarı kuralının adı farklı olabilir. Kuralların listesini görmek için kullanın Get-NetFirewallRule . Güvenlik duvarı kuralını etkinleştirmeden önce, yapılandırmanın ortamınıza uygun olduğunu doğrulamak için kuraldaki güvenlik ayarlarını görüntüleyin.

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

Varsayılan olarak, Enable-PSRemoting özel ve etki alanı ağlarından uzaktan erişime izin veren ağ kuralları oluşturur. Komutu, aynı yerel alt ağının ortak ağlarından uzaktan erişime izin vermek için SkipNetworkProfileCheck parametresini kullanır. komutu, onay iletilerini gizlemeye zorla parametresini belirtir.

SkipNetworkProfileCheck parametresi, varsayılan olarak aynı yerel alt ağının ortak ağlarından uzaktan erişime izin veren Windows işletim sisteminin sunucu sürümlerini etkilemez.

Set-NetFirewallRule NetSecurity modülündeki cmdlet, herhangi bir uzak konumdan genel ağlardan uzaktan erişime izin veren bir güvenlik duvarı kuralı ekler. Bu, farklı alt ağlardaki konumları içerir.

Not

Windows sürümüne bağlı olarak güvenlik duvarı kuralının adı farklı olabilir. Sisteminizdeki kuralların Get-NetFirewallRule adlarını listelemek için cmdlet'ini kullanın.

Parametreler

-Confirm

Cmdlet'i çalıştırmadan önce sizden onay ister.

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

-Force

Komutu, kullanıcı onayı istemeden çalışmaya zorlar.

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

-SkipNetworkProfileCheck

Bu cmdlet'in, bilgisayar bir genel ağdayken Windows işletim sisteminin istemci sürümlerinde uzaktan iletişimin etkinleştirildiğini gösterir. Bu parametre, ortak ağlar için yalnızca aynı yerel alt ağının bilgisayarlarından uzaktan erişime izin veren bir güvenlik duvarı kuralı sağlar.

Bu parametre, varsayılan olarak genel ağlar için yerel bir alt ağ güvenlik duvarı kuralına sahip olan Windows işletim sisteminin sunucu sürümlerini etkilemez. Bir sunucu sürümünde yerel alt ağ güvenlik duvarı kuralı devre dışı bırakılırsa, Enable-PSRemoting bu parametrenin değerinden bağımsız olarak yeniden etkinleştirir.

Yerel alt ağ kısıtlamasını kaldırmak ve ortak ağlardaki tüm konumlardan uzaktan erişimi etkinleştirmek için NetSecurity modülündeki cmdlet'ini kullanınSet-NetFirewallRule.

Bu parametre PowerShell 3.0'da kullanıma sunulmuştur.

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

-WhatIf

Cmdlet çalıştırılıyorsa ne olacağını gösterir. Cmdlet çalıştırılmaz.

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

Girişler

None

Nesneleri bu cmdlet'e yöneltemezsiniz.

Çıkışlar

String

Bu cmdlet, sonuçlarını açıklayan dizeleri döndürür.

Notlar

PowerShell 3.0'da WS-Management Enable-PSRemoting iletişimleri için aşağıdaki güvenlik duvarı özel durumlarını oluşturur.

Windows işletim sisteminin sunucu sürümlerinde, Enable-PSRemoting uzaktan erişime izin veren özel ve etki alanı ağları için güvenlik duvarı kuralları oluşturur ve ortak ağlar için yalnızca aynı yerel alt ağının bilgisayarlarından uzaktan erişime izin veren bir güvenlik duvarı kuralı oluşturur.

Windows işletim sisteminin istemci sürümlerinde, Enable-PSRemoting PowerShell 3.0'da kısıtlanmamış uzaktan erişime izin veren özel ve etki alanı ağları için güvenlik duvarı kuralları oluşturur. Aynı yerel alt ağdan uzaktan erişime izin veren ortak ağlara yönelik bir güvenlik duvarı kuralı oluşturmak için SkipNetworkProfileCheck parametresini kullanın.

Windows işletim sisteminin istemci veya sunucu sürümlerinde, yerel alt ağ kısıtlamasını kaldıran ve uzaktan erişime izin veren ortak ağlar için bir güvenlik duvarı kuralı oluşturmak üzere, aşağıdaki komutu çalıştırmak için NetSecurity modülündeki cmdlet'ini kullanın Set-NetFirewallRule : Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any

PowerShell 2.0'da WS-Management Enable-PSRemoting iletişimleri için aşağıdaki güvenlik duvarı özel durumlarını oluşturur.

Windows işletim sisteminin sunucu sürümlerinde, uzaktan erişime izin veren tüm ağlar için güvenlik duvarı kuralları oluşturur.

Windows işletim sisteminin istemci sürümlerinde, Enable-PSRemoting PowerShell 2.0'da yalnızca etki alanı ve özel ağ konumları için bir güvenlik duvarı özel durumu oluşturur. Güvenlik risklerini en aza indirmek için Windows'un Enable-PSRemoting istemci sürümlerinde genel ağlar için bir güvenlik duvarı kuralı oluşturmaz. Geçerli ağ konumu genel olduğunda şu Enable-PSRemoting iletiyi döndürür: Güvenlik duvarının durumu denetlenemiyor.

PowerShell 3.0'dan başlayarak, Enable-PSRemoting tüm oturum yapılandırmalarının Enabled özelliğinin değerini olarak $Trueayarlayarak tüm oturum yapılandırmalarını etkinleştirir.

PowerShell 2.0'da oturum Enable-PSRemoting yapılandırmalarının güvenlik tanımlayıcısından Deny_All ayarını kaldırır. PowerShell 3.0'da Deny_All Enable-PSRemoting ve Network_Deny_All ayarlarını kaldırır. Bu, yerel kullanım için ayrılmış oturum yapılandırmalarına uzaktan erişim sağlar.