69

Server2008R2でPSRemotingを正常に有効にしました。ホスト名をターゲットとして使用して、同じネットワーク内からリモートセッションを実行できます。

任意のコンピューター(ネットワーク内または別のネットワーク(VPN経由など))からIPアドレスをターゲットとして使用しようとすると失敗します。ホスト名を解決できないため、IPアドレスを使用する必要があるVPN接続を介してリモート処理を使用できるようにしたい。

クライアントに同じdns-nameを持つ他のサーバーがいくつかあり、name-ip-address-associationを削除して再度挿入したくないため、hosts-fileに名前を追加したくありません。そしてまた。

誰かがpsremoting-targetをIP経由で呼び出すことを許可する方法を教えてくれることを願っています。

編集:より具体的には、これを実行できるようにしたい:

Enter-PSSession -Computername 192.168.123.123 -credentials $cred 

-Computernameただし、ホスト名を「 」に渡した場合にのみ、そのコマンドを実行できます。

Edit2 :(
内部ネットワークから)ホスト名の代わりにIPを使用してログインしようとすると、次のエラーメッセージが表示されます。

Enter-PSSession : Connecting to remote server failed with the following error message : The WinRM client cannot process
 the request. Default authentication may be used with an IP address under the following conditions: the transport is HT
TPS or the destination is in the TrustedHosts list, and explicit credentials are provided. Use winrm.cmd to configure T
rustedHosts. Note that computers in the TrustedHosts list might not be authenticated. For more information on how to se
t TrustedHosts run the following command: winrm help config. For more information, see the about_Remote_Troubleshooting
 Help topic.

Edit3:
WSManのtrusted-hosts設定については知っていますが、それは問題ではないようです。すでに「*」に設定されていますが(リモーティングを有効にした直後に行いました)、ipをtarget-computernameとして使用してそのサーバーに接続することはできませんが、hostnameをtarget-computernameとして使用して接続することはできます。 。ホスト名ではなくIP番号をターゲットとする要求をリスナーがリッスンできないようにするIISのバインディングのようなものがあるようです。ただし、IISはインストールされていません。そのような設定をどこで探すべきかわかりません。

更新2011-07-12:
わかりました。DCからホスト名を介して接続できるため、trustedhosts-settingは問題ではないと思いますが、computer-paramに宛先のIPアドレスを使用する場合は問題ありません。
問題はリスナーにあるに違いないと思います。たぶん、リスナーは、destination-hostnameではなくdestination-ipをターゲットにしたリクエストを受け取らないでしょう。しかし、それを変更する方法がわかりません。

4

8 に答える 8

56

エラーメッセージは、必要なもののほとんどを提供します。これはTrustedHostsリストだけではありません。デフォルトの認証スキームでIPアドレスを使用するには、HTTPS(デフォルトでは構成されていない)も使用し、明示的な資格情報を提供する必要があるということです。-UseSSLスイッチを使用しなかったため、少なくともSSLを使用していないことがわかります。

SSL / HTTPSはデフォルトで構成されていないことに注意してください。これは、追加の手順を実行する必要があります。-UseSSLだけを追加することはできません。

デフォルトの認証メカニズムはKerberosであり、ADに表示される実際のホスト名を確認する必要があります。IPアドレスではなく、DNSCNAMEのニックネームでもありません。一部の人々は基本認証を有効にしますが、これはそれほど厄介ではありませんが、クリアテキストでクレデンシャルを渡すため、HTTPSも設定する必要があります。Enable-PSRemotingはHTTPのみを設定します。

ホストファイルに名前を追加しても機能しません。これは名前解決の問題ではありません。それは、コンピュータ間の相互認証がどのように実行されるかについてです。

さらに、この接続に関係する2台のコンピューターが同じADドメインにない場合、デフォルトの認証メカニズムは機能しません。非ドメインおよびクロスドメイン認証の構成については、「helpabout_remote_troubleshooting」を参照してください。

http://technet.microsoft.com/en-us/library/dd347642.aspxのドキュメントから

HOW TO USE AN IP ADDRESS IN A REMOTE COMMAND
-----------------------------------------------------
    ERROR:  The WinRM client cannot process the request. If the
    authentication scheme is different from Kerberos, or if the client
    computer is not joined to a domain, then HTTPS transport must be used
    or the destination machine must be added to the TrustedHosts
    configuration setting.

The ComputerName parameters of the New-PSSession, Enter-PSSession and
Invoke-Command cmdlets accept an IP address as a valid value. However,
because Kerberos authentication does not support IP addresses, NTLM
authentication is used by default whenever you specify an IP address. 

When using NTLM authentication, the following procedure is required
for remoting.

1. Configure the computer for HTTPS transport or add the IP addresses
   of the remote computers to the TrustedHosts list on the local
   computer.

   For instructions, see "How to Add a Computer to the TrustedHosts
   List" below.


2. Use the Credential parameter in all remote commands.

   This is required even when you are submitting the credentials
   of the current user.
于 2011-07-12T16:49:39.417 に答える
29

これを試してみてください:

Set-Item WSMan:\localhost\Client\TrustedHosts -Value "*" -Force
于 2011-07-06T15:29:07.937 に答える
5

私は私のインフラストラクチャであなたのアサーションをテストします。IPアドレスは私にとって次の問題ではありません。

PS C:\Users\JPB> hostname
JPBCOMPUTER
PS C:\Users\JPB> Enter-PSSession -ComputerName 192.168.183.100 -Credential $cred
[192.168.183.100]: PS C:\Users\jpb\Documents>
[192.168.183.100]: PS C:\Users\jpb\Documents> hostname
WM2008R2ENT

VPNを越えて作業しようとする場合は、サーバーに向かう途中でファイアウォールの設定を確認する必要があります。Windowsリモート管理のインストールと構成が役立ちます。WinRMが待機しているTCPポートは次のとおりです。

WinRM 1.1以前:デフォルトのHTTPポートは80です。

WinRM 2.0:デフォルトのHTTPポートは5985です。


編集:あなたのエラーによると、あなたはあなたのクライアントコンピュータでこれをテストできますか:

Set-Item WSMan:\localhost\Client\TrustedHosts *
于 2011-07-06T03:29:43.217 に答える
3

みんなが簡単な解決策を与えました。それはあなたが助けを見る必要があるということです-それは良いです、一度にたくさんのように見えますが、実際にはすぐに読むことができます:

get-help about_Remote_Troubleshooting | more
于 2011-07-06T22:54:46.387 に答える
3

お使いのマシンで*実行'Set-Item WSMan:\localhost\Client\TrustedHosts -Value "$ipaddress"

*PSSessionを実行している場所からのマシン

于 2018-08-23T03:26:37.283 に答える
2

Windows 10では、コマンドを呼び出すためにWinRMサービスが実行されていることを確認することが重要です。

* Set-Item wsman:\ localhost \ Client \ TrustedHosts -value'*' -Force *

于 2019-08-07T08:38:14.217 に答える
1

Microsoftによって課せられた恣意的な制限に従うことを気にしない人は、接続しようとしているサーバーのIPにホストファイルエントリを追加するだけで、IPの代わりにそれを使用してこの制限を回避できます。

Enter-PSSession -Computername NameOfComputerIveAddedToMyHostFile -credentials $cred 
于 2021-01-21T16:46:38.803 に答える
1

クライアントで次のことを試してください。

次のコマンドを実行して、リスナー構成を復元します。

winrm invoke Restore winrm/Config

次のコマンドを実行して、Windowsリモート管理サービスとそのリスナーの既定の構成を実行します。

winrm quickconfig

winrmを再度構成した後、ホストが信頼されていることを確認してください。

Set-Item wsman:\localhost\Client\TrustedHosts -value "$ipaddress" -Force 

リモート接続を再試行してください

参照

HTTPS用にwinrmを構成する

于 2022-02-25T18:42:06.900 に答える