12

ファイアウォールの背後にあるコンピューターで powershell スクリプトを実行することに興味があります。どのポートを開く必要がありますか? 特別な構成が必要ですか、それとも Windows Server 2008 r2 の新規インストールに接続してスクリプトの実行を開始するだけで済みますか?

4

4 に答える 4

7

MichaelGGはそれを正しく理解しました-あなたがする必要があるのは、PowerShellV2で利用可能なネイティブリモーティングを使用することだけです。これにより、すべてWS-MANプロトコル(WINRMサービスによって実装される標準の管理プロトコル)を使用して、ネットワークを大幅に制御できます。

V2リモーティングが機能する方法は、リモートマシンでコマンド(単一のコマンド、パイプライン、コマンドのセット、またはスクリプト全体)を呼び出し、そのコマンドの実行方法を指定できることです。

例えば Invoke-Command {get-process} -Computername (cat servers.txt)

Invoke-Command
    (1)-ScriptBlock | -Command <ScriptBlock>
    (0)[-ComputerName | -Cn <String[]>]
       [-ApplicationName <String>]
       [-ArgumentList | -Args <Object[]>]
       [-AsJob ]
       [-Authentication <Basic | Credssp | Default | Digest | Kerberos | Negotiate | NegotiateWithImplicitCredential>]
       [-CertificateThumbprint <String>]
       [-ConfigurationName <String>]
       [-Credential <PSCredential>]
       [-HideComputerName | -HCN ]
       [-InputObject <PSObject> (ByValue)]
       [-JobName <String>]
       [-Port <1->]
       [-SessionOption <System.Management.Automation.Remoting.PSSessionOption>]
       [-ThrottleLimit <Int>]
       [-UseSSL ]

SessionOptionsを提供することもできます

New-WSManSessionOption
       [-NoEncryption ]
       [-OperationTimeout <0->]
       [-ProxyAccessType <ProxyAutoDetect | ProxyIEConfig | ProxyNoProxyServer | ProxyWinHttpConfig>]
       [-ProxyAuthentication <Basic | Digest | Negotiate>]
       [-ProxyCredential <PSCredential>]
       [-SkipCACheck ]
       [-SkipCNCheck ]
       [-SkipRevocationCheck ]
       [-SPNPort <0->]
       [-UseUTF16 ]



New-WSManSessionOption
           [-NoEncryption ]
           [-OperationTimeout <0->]
           [-ProxyAccessType <ProxyAutoDetect | ProxyIEConfig | ProxyNoProxyServer | ProxyWinHttpConfig>]
           [-ProxyAuthentication <Basic | Digest | Negotiate>]
           [-ProxyCredential <PSCredential>]
           [-SkipCACheck ]
           [-SkipCNCheck ]
           [-SkipRevocationCheck ]
           [-SPNPort <0->]
           [-UseUTF16 ]

ご覧のとおり、プロキシをトラバースする方法を指定できます。プロキシに1セットのクレデンシャルを提供し、エンドポイントに別のクレデンシャルセットを提供できます。とはいえ、単純なケースは、何も指定せず、ポート80を使用することです。

実験!楽しみ!従事!

Jeffrey Snover[MSFT]
Windows管理パートナーアーキテクト

于 2009-02-22T00:54:21.097 に答える
7

PowerShell 2 は WinRM 経由でリモート処理を行います (Windows 2003 R2、IIRC 以降、WinRM は既に利用可能です)。WinRM は単なる SOAP over HTTP[S] です。したがって、ポートはデフォルトで 80、SSL の場合はデフォルトで 443 です。

PS2 リモーティングの簡単な概要と、WinRM for 2003 の概要を次に示します。

于 2009-02-10T15:06:00.520 に答える
3

WS-Management および PowerShell リモート処理に使用される既定のポートは、HTTP および HTTPS 経由の接続用にそれぞれ 5985 および 5986 に変更されました。

詳細については、Windows 管理インフラストラクチャ ブログ ( http://blogs.msdn.com/wmi/archive/2009/07/22/new-default-ports-for-ws-management-and-powershell-remoting.aspx ) を参照してください。

于 2009-10-11T19:22:02.143 に答える
-1

どのポートを開く必要があるかは、スクリプトで何をする予定かによって完全に異なります。

于 2009-02-10T14:46:00.413 に答える