ja-JP/about_Remote_Requirements.help.txt

TOPIC
    about_Remote_Requirements

簡単な説明
    PowerShell でリモートコマンドを実行するためのシステム要件と構成要件に
    ついて説明します。

詳細な説明
    このトピックでは、PowerShell でリモート接続を確立してリモートコマンドを
    実行するためのシステム要件、ユーザー要件、およびリソース要件について
    説明します。また、リモート操作を構成する手順についても説明します。

    注: 一部のコマンドレットは、RPC 接続またはリモート接続用の WMI セッション
    を使用してリモートコンピューターからオブジェクトを取得します。これらは
    PowerShell リモート処理インフラストラクチャを使用しません。このドキュメント
    の要件は、これらのコマンドレットには適用されません。

    ComputerName パラメーターを持ちながら PowerShell リモート処理を使用しない
    コマンドレットを見つけるには、コマンドレットの ComputerName パラメーターの
    説明を読んでください。

  システム要件

    Windows では、PowerShell リモート処理は、Windows Management Framework
    (WMF) によって提供される Windows リモート管理 (WinRM) を使用します。
    PowerShell でリモートセッションを実行するには、ローカルコンピューターと
    リモートコンピューターに次のものが必要です。

    - Windows PowerShell 3.0 以降
    - Microsoft .NET Framework 4 以降
    - Windows リモート管理 3.0 以降

    Windows PowerShell 2.0 でリモートセッションを実行するには、ローカル
    コンピューターとリモートコンピューターに次のものが必要です。

    - Windows PowerShell 2.0 以降
    - Microsoft .NET Framework 2.0 以降
    - Windows リモート管理 2.0

    完全にサポートされるには、WMF 5.1 を使用する必要があります。WMF の
    サポートの詳細については、「Windows Management Framework (WMF)」を
    参照してください。

    Windows PowerShell 2.0 を実行しているコンピューターと、新しいバージョンの
    PowerShell を実行しているコンピューターとの間にリモートセッションを作成
    できます。ただし、セッションからの切断と再接続の機能など、新しいバージョン
    の PowerShell でのみ実行される機能は、両方のコンピューターが Windows
    PowerShell 3.0 以降を実行している場合にのみ利用できます。

    インストールされている PowerShell のバージョン番号を確認するには、
    $PSVersionTable 自動変数を使用します。

    PowerShell 7 以降は、SSH を介した PowerShell リモート処理もサポートして
    います。SSH を介した PowerShell リモート処理を使用すると、SSH を実行して
    いる任意の Windows、macOS、または Linux ホストに接続できます。詳細に
    ついては、「PowerShell Remoting Over SSH」を参照してください。

  ユーザーアクセス許可

    リモートセッションを作成してリモートコマンドを実行するには、リモート
    コンピューター上の Administrators グループまたは Remote Management Users
    グループのメンバーであるユーザーアカウントで接続します。

    リモートコンピューターでセッションを作成してコマンドを実行するために必要な
    アクセス許可は、セッション構成によって確立されます。セッション構成は、
    リモートコンピューター上の接続エンドポイントの構成オプションを定義します。
    具体的には、セッション構成のセキュリティ記述子が、誰がそのセッション構成に
    アクセスし、誰がそれを使用して接続できるかを決定します。

    既定のセッション構成 Microsoft.PowerShell および Microsoft.PowerShell32
    のセキュリティ記述子は、Administrators グループのメンバーにのみアクセスを
    許可します。

    コンピューター上の Administrators グループのメンバーは、既定のセッション
    構成のセキュリティ記述子を変更したり、異なるセキュリティ記述子を持つ新しい
    セッション構成を作成したりすることで、誰がそのコンピューターにリモートで
    接続するアクセス許可を持つかを決定できます。ユーザーは、*-PSSession
    コマンドレットの ConfigurationName パラメーターを使用して、異なる
    エンドポイントに接続できます。

    セッション構成の詳細については、about_Session_Configurations を参照して
    ください。

  Windows ネットワークの場所

    Windows PowerShell 3.0 以降では、Enable-PSRemoting コマンドレットは、
    Windows のクライアント版とサーバー版の両方でリモート処理を有効にできます。

    プライベートネットワークおよびドメインネットワーク上の Windows サーバー版
    では、Enable-PSRemoting コマンドレットは、制限のないリモートアクセスを
    許可するファイアウォール規則を作成します。また、同じローカルサブネット内の
    コンピューターからのみリモートアクセスを許可するパブリックネットワーク用の
    ファイアウォール規則も作成します。このローカルサブネットのファイアウォール
    規則は、パブリックネットワーク上の Windows サーバー版では既定で有効ですが、
    Enable-PSRemoting は規則が変更または削除された場合に備えて規則を再適用
    します。

    プライベートネットワークおよびドメインネットワーク上の Windows クライアント
    版では、Enable-PSRemoting は制限のないリモートアクセスを許可する
    ファイアウォール規則を作成します。

    パブリックネットワーク上の Windows クライアント版でリモート処理を有効に
    するには、Enable-PSRemoting コマンドレットの SkipNetworkProfileCheck
    パラメーターを使用します。このオプションは、同じローカルサブネット内の
    コンピューターからのみリモートアクセスを許可するファイアウォール規則を
    作成します。

    パブリックネットワークでのローカルサブネット制限を解除し、Windows の
    クライアント版とサーバー版のすべての場所からのリモートアクセスを許可
    するには、NetSecurity モジュールの Set-NetFirewallRule コマンドレットを
    使用します。次のコマンドを実行します。

        Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP-PUBLIC" -RemoteAddress Any

    注: ファイアウォール規則の名前は、Windows のバージョンによって異なる場合が
    あります。Get-NetFirewallRule を使用して規則の一覧を表示してください。
    ファイアウォール規則を有効にする前に、規則のセキュリティ設定を確認し、
    構成が環境に適切であることを確認してください。

    Windows PowerShell 2.0 では、Windows サーバー版で Enable-PSRemoting は
    すべてのネットワークでリモートアクセスを許可するファイアウォール規則を
    作成します。

    Windows PowerShell 2.0 では、Windows クライアント版で Enable-PSRemoting
    はプライベートネットワークとドメインネットワークでのみファイアウォール
    規則を作成します。ネットワークの場所がパブリックの場合、Enable-PSRemoting
    は失敗します。

  管理者として実行する

    次のリモート処理操作には、管理者特権が必要です。

    - ローカルコンピューターへのリモート接続の確立。これは一般に "ループ
      バック" シナリオとして知られています。
    - ローカルコンピューターでのセッション構成の管理。
    - ローカルコンピューターでの WS-Management 設定の表示と変更。これらは
      WSMan: ドライブの LocalHost ノードにある設定です。

    ローカルコンピューターの Administrators グループのメンバーであっても、
    管理者として実行 オプションを使用して PowerShell を開始する必要があります。

    cmd.exe などの別のプログラムから Windows PowerShell を開始する場合は、
    管理者として実行 オプションを使用してそのプログラムを開始します。

  リモート処理用にコンピューターを構成する方法

    サポートされている任意のバージョンの Windows を実行しているコンピューター
    は、構成なしで PowerShell でリモート接続を確立してリモートコマンドを実行
    できます。ただし、リモート接続を受信するには、コンピューターで PowerShell
    リモート処理を有効にする必要があります。

    Windows Server 2012 以降の Windows Server リリースでは、PowerShell
    リモート処理が既定で有効になっています。設定が変更された場合は、
    Enable-PSRemoting コマンドレットを実行することで既定の設定を復元できます。

    既定では、PowerShell のリモート処理機能は WinRM サービスによってサポート
    されます。これは、Web Services for Management (WS-Management) プロトコルの
    Microsoft 実装です。PowerShell リモート処理を有効にすると、WS-Management
    の既定の構成を変更し、ユーザーが WS-Management に接続できるようにする
    システム構成を追加します。

    リモートコマンドを受信するように PowerShell を構成するには:

    1. 管理者として実行 オプションを使用して PowerShell を開始します。
    2. コマンドプロンプトで「Enable-PSRemoting」と入力します。

    リモート処理が正しく構成されていることを確認するには、次のコマンドのような
    テストコマンドを実行します。これはローカルコンピューターにリモート
    セッションを作成します。

        New-PSSession

    リモート処理が正しく構成されている場合、コマンドはローカルコンピューターに
    セッションを作成し、そのセッションを表すオブジェクトを返します。

        Id Name ComputerName State ConfigurationName
        -- ---- ------------ ----- -----
        1 Session1 localhost Opened Microsoft.PowerShell

    コマンドが失敗した場合は、about_Remote_Troubleshooting を参照してください。

    PowerShell リモート処理プロトコル (PSRP) は、安全なデータ転送のために
    安全なトランスポート層を必要とします。詳細については、「PowerShell
    security features」の "Secure data transfer in PowerShell remoting"
    セクションを参照してください。

  ポリシーを理解する

    リモートで作業する場合、ローカルコンピューター上の PowerShell と
    リモートコンピューター上の PowerShell の 2 つのインスタンスを使用します。
    その結果、作業はローカルコンピューターとリモートコンピューターの両方の
    Windows および PowerShell ポリシーの影響を受けます。

    接続前および接続確立中は、ローカルコンピューター上のポリシーが有効です。
    接続を使用しているときは、リモートコンピューター上のポリシーが有効です。

関連項目
    about_Remote
    about_Remote_Variables
    about_PSSessions
    Invoke-Command
    Enter-PSSession
    New-PSSession

----
原文: PowerShell-Docs (CC BY 4.0) の翻訳 / PSHelpJaJP