SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

Windows リモート管理で使用するリスナーを特定の IP で作成

leave a comment

Windows リモート管理 (WinRM) では、TCP 5985 が使用されていますが、デフォルトではすべての IP アドレスでリスニングされています。 (Address="*" で作成されているため)

複数の NIC や IP を設定しており、特定の IP だけで WinRM をリスニングしたい方法をまとめてみたいと思います。
詳細については Enabling PowerShell remoting for only a specified set of IP addresses で詳しく解説されています。

Enable-PSRemoting や Set-WSManQuickConfig を実行した場合、以下のようなコマンド等価な形で WinRM 用の設定が作成されるかと思います。

New-WSManInstance winrm/config/listener -SelectorSet @{Address="*";Transport="HTTP"}

 

Address="*"  で作成されているため、すべての IP アドレスで WinRM の要求がリスニングされます。

複数の NIC を使用している場合、管理用の NIC のみで WinRM の要求を受け付けたい場合などがあるかと思います。

その場合は、管理用の NIC で使用しいている IP アドレスでリスニングをするリスナーを作成すると要求を満たすことができそうです。

以下はデフォルトで作成されているすべての IP を使用するリスナーを一度作成し、ループバックアドレスと自身に割り当てられている IP でリスナーを作成、結果を出力したものになります。

# 一つのコマンドで複数の IP を持つリスナーを作成する方法がわからなかったのでこのような書き方にしています。

Remove-WSManInstance winrm/config/listener -SelectorSet @{Address="*";Transport="HTTP"}
New-WSManInstance winrm/config/listener -SelectorSet @{Address="IP:127.0.0.1";Transport="HTTP"}
New-WSManInstance winrm/config/listener -SelectorSet @{Address="IP:10.200.0.7";Transport="HTTP"}
Get-Item WSMan:localhostListener* | fl
Share

Written by Masayuki.Ozawa

11月 23rd, 2014 at 10:22 am

Posted in PowerShell

Tagged with

Leave a Reply