2

リモートマシンがデフォルト以外のポート番号を使用しているPowerShellを使用してリモートサーバーに接続する際に問題が発生しました。セットアップは次のとおりです。複数の仮想マシンを備えた仮想ホストサーバーがあります。これらの仮想マシンはすべて同じIPアドレスを持っていますが、異なるポートでアクセスされます。次に例を示します。

a.b.c.d:3000
a.b.c.d:3001
etc

したがって、これまでに使用したPowerShellスクリプトは次のとおりです。

$password = ConvertTo-SecureString "<MyPassword>" -AsPlainText -Force
$cred= New-Object System.Management.Automation.PSCredential ("<Domain\UserName>", $password)
Enter-PSSession -ComputerName <IPAddress> -Port <PortNumber> -Credential $cred

「<>」内のビットは、個々のマシンに固有です。このスクリプトを実行すると、次のエラーが発生します。

Enter-PSSession:リモートサーバーへの接続が次のエラーメッセージで失敗しました:クライアントはリクエストで指定された宛先に接続できません。宛先のサービスが実行されており、要求を受け入れていることを確認します。宛先(最も一般的にはIISまたはWinRM)で実行されているWS-Managementサービスのログとドキュメントを参照してください。宛先がWinRMサービスの場合は、宛先で次のコマンドを実行して、WinRMサービスを分析および構成します:"winrmquickconfig"。詳細については、about_Remote_TroubleshootingHelpトピックを参照してください。C:\ PowerShell \ Test7.ps1:25 char:16 + Enter-PSSession <<<< -ComputerName -Port -Credential $ cred + CategoryInfo:InvalidArgument:(:String)[Enter-PSSession]、

私が試した別のバリアントは次のとおりです。

$password = ConvertTo-SecureString "<MyPassword>" -AsPlainText -Force
$cred= New-Object System.Management.Automation.PSCredential ("<Domain\UserName>", $password)
$powershell_uri = "http://<IPAddress>:<PortNumber>"
Enter-PSSession -ConnectionUri $powershell_uri -Credential $cred

しかし、これにより次のエラーが発生しました。

Enter-PSSession:リモートサーバーへの接続が次のエラーメッセージで失敗しました:クライアントはリクエストで指定された宛先に接続できません。宛先のサービスが実行されており、要求を受け入れていることを確認します。宛先(最も一般的にはIISまたはWinRM)で実行されているWS-Managementサービスのログとドキュメントを参照してください。宛先がWinRMサービスの場合は、宛先で次のコマンドを実行して、WinRMサービスを分析および構成します:"winrmquickconfig"。詳細については、about_Remote_TroubleshootingHelpトピックを参照してください。C:\ PowerShell \ Test7.ps1:21 char:16 + Enter-PSSession <<<< -ConnectionUri $ powershell_uri -Credential $ cred#-ComputerName -Port -Credential $ cred + CategoryInfo:InvalidArgument:(http://: /:

ローカルマシン(winrm set winrm / config / client @ {TrustedHosts = ""})にTrustedHostsを設定し、リモートマシンで「winrmquickconfig」コマンドを実行しました。リモートマシンで、「winrm create winrm / config / listener?Address = * + Transport = HTTP @ {Port=""}」コマンドも実行しました。

PowerShell内でこれらのマシンへの接続を確立する方法についての支援をいただければ幸いです。

4

1 に答える 1

4

リモート コンピューターで次の操作を行います。

  1. 場所:コントロール パネル\ネットワークとインターネット\ネットワークと共有センター
    リモート コンピューターが公共の場所にないことを確認し、仕事用またはプライベートに設定します。

  2. PowerShell を管理者モードで起動し、次のコマンドを入力します:
    Enable-PSRemoting
    exit

  3. [コントロール パネル] -> [システムとセキュリティ] -> [Windows ファイアウォール] に移動し、[詳細設定] をクリックします。プライベートおよびドメインインバウンド ルールの
    両方で、管理コンピューターの IP 範囲を Windows リモート管理 (http-In) に追加します。

管理コンピュータで:

  1. PowerShell を管理者モードで起動し、次のコマンドを入力します:

    Set-Item WSMan:\localhost\Client\TrustedHosts -Concatenate remotecomputer.domain.suffix -Forceリモート

    コンピューターの完全なネットワーク パスを使用します。これにより、リモート コンピューターのネットワーク名が信頼できるホストに追加されます。

これでうまくいくはずです。

于 2016-08-11T22:13:18.500 に答える