WinRM 接続の有効化の方法

Ksocket にて Windows 機の詳細情報を取得するためには WinRM 接続を許可する必要があります。

必要な手順について、PowerShell 用のスクリプトを用意しておりますので、ご活用ください。

スクリプトの使い方

ファイルのダウンロード

Releasesページ より最新のファイルをダウンロードし、Ksocket からの WinRM アクセスを有効にしたい Windows に配置してください。

スクリプトの実行

Setup-WinRMConfiguration.bat

 を管理者権限で実行してください。

実行するとコンソールが開き、アカウント名の入力が求められます。
コンピュータに登録されたアカウント名を入力してください。

WinRM接続のための設定を開始します。よろしいですか (y/n)?y
アカウント名を入力してください。
アカウント名は「コンピュータ名\アカウント名」または「ドメイン名\アカウント名」で指定できます。
>

アカウント名を入力すると、そのアカウントでのWinRMアクセスに必要な設定が自動で行われます。

WinRM サービスは、既にこのコンピューターで実行されています。
このコンピューター上でのリモート管理には、WinRM が既に設定されています。
Auth
    Basic = true
    Kerberos = true
    Negotiate = true
    Certificate = false
    CredSSP = false
    CbtHardeningLevel = Relaxed

Service
    RootSDDL = O:NSG:BAD:P(A;;GR;;;IU)(A;;GA;;;BA)(A;;GXGR;;;S-1-5-21-1561492669-3598970178-1692085620-1001)(A;;GXGR;;;S-1-5-21-1561492669-3598970178-1692085620-1002)S:P(AU;FA;GA;;;WD)(AU;SA;GXGW;;;WD)
    MaxConcurrentOperations = 4294967295
    MaxConcurrentOperationsPerUser = 1500
    EnumerationTimeoutms = 240000
    MaxConnections = 300
    MaxPacketRetrievalTimeSeconds = 120
    AllowUnencrypted = true
    Auth
        Basic = true
        Kerberos = true
        Negotiate = true
        Certificate = false
        CredSSP = false
        CbtHardeningLevel = Relaxed
    DefaultPorts
        HTTP = 5985
        HTTPS = 5986
    IPv4Filter = *
    IPv6Filter = *
    EnableCompatibilityHttpListener = false
    EnableCompatibilityHttpsListener = false
    CertificateThumbprint
    AllowRemoteAccess = true

WinRMサービスを有効化しました
WinRM RootSDDLセキュリティ設定を更新しました
WMIセキュリティ設定を更新しました
WinRM接続の設定が完了しました。セットアップを終了します。
続行するには何かキーを押してください . . .

上記のようなメッセージが出力された場合、設定作業は完了となります。
設定完了後、OS の再起動が必要となりますので、再起動を行ってください。

再起動後数分空けてから、Ksocket に WinRM のアカウント設定を行い、スキャンをしてみましょう。

ドメインアカウントを使用してアクセスする場合の注意

ドメインアカウントを使用する場合、Basic認証によるアクセスは行うことができません。
この場合はNTLM認証でアクセスするようにKsocketのcredentialファイルを設定してください。

手動で設定する場合

手動で WinRM 接続を有効化するには以下の手順を対象の Windows PowerShell コンソール(管理者権限)で実行してください。
設定完了後、OS の再起動が必要となりますので再起動を行ってください。

再起動後数分空けてから、Ksocket に WinRM のアカウント設定を行い、スキャンをしてみましょう。

# ExecutionPolicyがRestrictedだった場合、RemoteSignedに変更する
> Get-ExecutionPolicy
Restricted
> Set-ExecutionPolicy RemoteSigned
> Get-ExecutionPolicy
RemoteSigned

# WinRMサービスを実行できるようにする
> winrm qc

# Basic認証で接続する場合は、Basic認証での接続を許可する
> winrm set winrm/config/service/auth '@{Basic="true"}'
> winrm set winrm/config/service '@{AllowUnencrypted="true"}'

# ユーザに対して読み取り権限を付与する
# 以下コマンド実行によって表示されたウィンドウで、
# 該当するユーザに読み取り権限と実行権限を許可して適用
> winrm configSDDL default

# WMIリソースのアクセス権限設定
# 以下コマンド実行によって表示されたウィンドウで、
# [操作]>[プロパティ]>[セキュリティ] を選択
# - Root\CIMV2 から[セキュリティ]を選択し、
# 該当するユーザにメソッドの実行とリモートの有効化を許可して適用
# - Root\StandardCimv2 から[セキュリティ]を選択し、
# 該当するユーザにメソッドの実行とリモートの有効化を許可して適用
> wmimgmt.msc

 

TOP