ネットワーク環境が動的DNS更新プロトコルをサポートしていて、コンピュータが自動的にサービスをエクスポートできるようになっている場合は、KMSホストを展開するのにほとんど労力がかからないでしょう。組織に複数のKMSホストがある場合、またはネットワークが動的更新をサポートしていない場合は、追加の構成作業が必要になることがあります。
Windows 10、Windows 8.1、Windows Server 2012 R2、Windows Server 2016用のKMSライセンス認証の展開
このセクションの一部の手順では、レジストリを変更する必要があります。レジストリエディタまたはその他の方法を使用してレジストリを誤って変更すると、問題が発生する可能性があります。その場合は、オペレーティングシステムの再インストールが必要になることがあります。マイクロソフトでは、レジストリの変更に潜在的なリスクがあるため、これらの問題を解決できることを保証できません。
このセクションの残りの部分では、次の主な作業について説明します。
- KMSホストを構成する
- DNSを設定する
- KMSホストをインストールする
- KMSクライアントを構成する
KMSホストを構成する
SL Manager(Slmgr.vbs)とも呼ばれるSoftware License Managerは、ボリュームアクティベーション情報を構成および取得するために使用されるスクリプトです。このスクリプトは、インストール先のコンピューターでローカルに実行することも、別のコンピューターを使用してリモートで実行することもできますが、コマンドプロンプトから実行されます。基本ユーザーがSlmgr.vbsを実行すると、一部のライセンスデータが欠落しているか正しくない可能性があり、多くの操作が禁止されます。
Slmgr.vbsはWscript.exeまたはCscript.exeを使用できるため、管理者は使用するスクリプトツールを指定できます。スクリプトツールが指定されていない場合、Slmgr.vbsはデフォルトのスクリプトツールwscript.exeを使用して実行されます。
注:KMSでは、KMSサーバー上のファイアウォールを削除する必要があります。既定のTCPポートを使用している場合は、WindowsファイアウォールでKMSトラフィック例外を有効にします。別のファイアウォールを使用している場合は、TCPポート1688を開きます。デフォルトポートを使用しない場合は、ファイアウォールでカスタムTCPポートを開きます。
変更を有効にするには、ソフトウェアライセンスサービスを再起動する必要があります。 Software Licensing Serviceを再起動するには、Microsoft管理コンソール(MMC)サービスを使用するか、コマンドプロンプトで次のコマンドを実行します。
net stop sppsvc && net start sppsvc
Slmgr.vbsには少なくとも1つのパラメータが必要です。スクリプトをパラメータなしで実行した場合、スクリプトはヘルプ情報を表示します。表1にSlmgr.vbsのコマンドラインオプションと各オプションの説明を示します。表1のほとんどのパラメーターは、KMSホストの構成に役立ちます。ただし、パラメータ/ errorsおよび/ sriは、サーバーと通信した後でKMSクライアントに渡されます。 Slmgr.vbsの一般的な構文は次のとおりです。
slmgr.vbs /parameter
表1 - Slmgr.vbsのパラメータ
パラメーター | 説明する |
---|---|
/スポーツポート番号 | KMSホストにTCP通信ポートを設定します。 PortNumberを使用するTCPポート番号に置き換えます。デフォルト設定は1688です。 |
/ cdns | KMSホストによってDNSエクスポート機能を自動的に無効にします。 |
/ sdns | KMSホストによる自動DNSエクスポートを許可します。 |
/ CPRI | KMSホストプロセスの優先順位を下げます。 |
stop | KMSホストプロセスの優先順位を[通常]に設定します。 |
/ sai ActivationInterval | KMSホストが見つからない場合は、KMSクライアントのライセンス認証の頻度を変更してください。 ActivationIntervalを分数に置き換えます。デフォルト設定は120です。 |
/ sri RenewalInterval | KMSホストに連絡して、ライセンス認証の更新を試みるKMSクライアントの頻度を変更します。 RenewalIntervalを分数に置き換えます。デフォルト設定は10080(7日)です。この設定は、ローカルのKMSクライアント設定を上書きします。 |
/ dli | KMSホストから現在のKMSライセンス認証番号を取得します。 |
Slmgr.vbsをリモートで実行します。
Slmgr.vbsをリモートで実行するには、管理者が追加のパラメータを指定する必要があります。宛先コンピュータの名前、および宛先コンピュータのローカル管理者アカウントのユーザー名とパスワードを含める必要があります。ユーザー名とパスワードを指定せずにリモートで実行している場合、スクリプトはスクリプトを実行しているユーザーのログイン情報を使用します。
次の構文は、Slmgr.vbsをリモートで実行するために必要な追加パラメータを示しています。
slmgr.vbs TargetComputerName [username] [password] /parameter [options]
Software License Managerのリモート操作用にWindowsファイアウォールを構成する
Slmgr.vbsはWindows Management Instrumentation(WMI)を使用するため、管理者はWMIトラフィックを許可するようにWindowsファイアウォールを構成する必要があります。
- サブネットの場合は、WindowsファイアウォールでWMI(Windows Management Instrumentation)例外を許可します。
- 複数のサブネットでWMIトラフィックを有効にするには、Windows Management Instrumentation(AS同期入力)、Windows Management Instrumentation(DCOM入力)、およびWindows Management Instrumentation(WMI入力)への接続を許可します。また、範囲内のリモートアクセスを許可してください。 [管理ツール]フォルダの[Windowsファイアウォール]と[高度なセキュリティ]を使用してこれらの設定を構成します。
注:デフォルトでは、プライベートプロファイルとパブリックプロファイルのWindowsファイアウォールの例外は、ローカルサブネットから発信されたトラフィックにのみ例外を適用します。例外を拡張して複数のサブネットに適用するには、Windowsファイアウォールと高度なセキュリティの設定を変更するか、AD DSドメインに参加している場合は[ドメインプロファイル]を選択します。
移行先コンピュータの操作をリモートで制御する
管理者はSlmgr.vbsをチームのコンピュータとリモートで実行することを許可できます。そのためには、DWORD値を作成します。
LocalAccountTokenFilterPolicy
強力なレジストリサブキー
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem
KMSクライアントで。この値を0x01に設定してください。
DNSを設定する
次のセクションでは、ボリュームアクティベーションと連携するようにDNSを構成するための概念について説明します。
複数のKMSホストが使用されている場合は、「SRVレコードの既定のDNSアクセス許可の変更」を参照してください。
KMSクライアントが異なるDNSサーバーを使用してKMSホストを見つけることができるようにするには、「複数のDNSドメインへのエクスポート」を参照してください。
手動でSRVリソースレコードをKMSホストに追加するには、「DNSでのSRVレコードの手動作成」、「BIND DNSサーバー8.2以降でのSRVレコードの手動作成」、および「DNSへのKMS SRVレコードのエクスポート機能の無効化」を参照してください。
注:DNSの変更は、すべてのDNSサーバーがコピーされるまで反映されない可能性があります。
SRVレコードの既定のDNSアクセス許可を変更する
KMSホストを1つだけ使用している場合は、DNSでアクセス許可を構成する必要はありません。デフォルトの動作では、コンピュータはSRVリソースレコードを作成してそれを更新できます。ただし、複数のKMSホストがある場合(通常)、他のKMSホストは既定のSRVアクセス許可が変更されない限り、SRVリソースレコードを更新できません。
次の高度なプロセスは、Microsoft環境の例です。詳細な手順は提供されていません。これは組織の違いと多少異なる場合があります。また、望ましい結果を得るための唯一の方法ではありません。
Active Directoryにグローバルセキュリティグループを作成すると、KMSホストに使用されます。例はキー管理サービスグループです。このグループにKMSホストを追加します。それらはすべて同じドメインを持っていなければなりません。
最初のKMSホストが作成されると、元のSRVレコードが作成されます。 KMSの最初のホストがSRVリソースレコードを作成できない場合、組織は既定のアクセス許可を変更した可能性があります。この場合は、「DNSでのSRVレコードの手動作成」のように手動でSRVリソースレコードを作成します。
グローバルセキュリティグループのメンバーが更新できるように、SRVグループの権限を設定します。
注:ドメイン管理者は、組織内の管理者に対して前の手順を実行する権限を付与できます。そのためには、Active Directoryにセキュリティグループを作成し、そのグループでSRVレコードを変更してからメンバーを追加できるようにします。
複数のDNSドメインにエクスポートする
既定では、KMSホストはそのホストを含むDNSドメインにのみ登録されます。ネットワーク環境にDNSドメインが1つしかない場合は、これ以上対処する必要はありません。
複数のDNSドメイン名がある場合は、SRV RRをエクスポートするときにKMSホストが使用するDNSドメインの一覧を作成できます。このレジストリ値を設定すると、プライマリDNSサフィックスとして指定されたドメインにエクスポートするためのKMSホストの既定の動作が停止します。 KMSのDnsDomainPublishListレジストリ値に優先順位と重みのパラメータを追加できます。この機能により、管理者はKMSホストの優先順位グループと各グループの重みを設定して、どのKMSホストが最初にアクセスし、複数のKMSホスト間でバランスをとるかを決定できます。
注:DNSの変更は、すべてのDNSサーバーがコピーされるまで反映されない可能性があります。まだコピーされていないサーバーで変更が行われた場合、頻繁に行われた変更によって古いレコードが残ることがあります。
複数のDNSドメインのKMSを自動的にエクスポートするには、各DNSドメインサフィックスを任意のKMSに追加すると、複数文字列のレジストリ値がエクスポートされます。
DnsDomainPublishList trong HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionSoftwareProtectionPlatform
値を変更したら、ソフトウェアライセンスサービスを再起動してSRV RRを作成します。
注:このキーはWindows VistaからHKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionSLに場所を変更しました。
複数のドメインにエクスポートするようにKMSホストを構成した後、レジストリキーをエクスポートしてから、追加のKMSホストのレジストリにインポートします。この手順が成功したことを確認するために、各KMSホストのアプリケーションイベントログを確認します。イベントID 12294は、KMSホストがSRV RRを正常に作成したことを示します。イベントID 12293は、SRV RRを作成する試みが失敗したことを示します。
DNSに手動でSRVレコードを作成する
環境が動的更新をサポートしていない場合は、KMSホストをエクスポートするためにSRV RRを手動で作成する必要があります。動的更新をサポートしていない環境では、DNSログの収集に失敗しないように、すべてのKMSホストでエクスポートを無効にする必要があります。自動エクスポートを無効にするには、Slmgr.vbsスクリプトにコマンドラインオプション/ cdnsを付けて使用します。 Slmgr.vbsスクリプトの詳細については、「KMSの設定」を参照してください。
注:手動で作成されたSRV RRは、競合を防ぐためにすべてのレコードが保持されている限り、KMSホストが他のドメインで自動的にエクスポートするSRV RRと共存できます。
DNSマネージャを使用して、適切な前方参照ゾーンで、その場所の適切な情報を使用して新しいSRV RRを作成します。既定では、KMSはTCPポート1688で待機し、サービスは_VLMCSです。表2にRR SRVの設定例を示します。
サービス | _VLMCS |
プロトコル | _TCP |
ポート番号 | 1688 |
ホストがサービスを提供 | KMSホストのFQDN |
BIND DNS Server 8.2以降でSRVレコードを手動で作成します。
組織がマイクロソフト以外のDNSホストを使用している場合は、DNSホストがBerkeley Internet Name Domain(BIND)8.2以上に準拠していれば、必要なSRV RRを作成できます。レコードを作成するときは、表3に示す情報を含めます。表3に示す優先順位と重要な設定は、Windows 7とWindows Server 2008 R2でのみ使用されます。
Name | _vlmcs._tcp |
種 | SRV |
優先度 | |
クリティカルレベル | |
ゲート | 1688 |
ホスト名 | KMSホストのFQDN |
BIND DNSサーバー8.2以降を構成するには、KMS自動エクスポートをサポートし、KMSホストからRRを更新できるようにBINDサーバーを構成します。たとえば、named.conf内のゾーン定義に次の行を追加します。 ;
注:このサーバーに保管されているすべての領域の動的更新を有効にするために、更新許可コマンドをnamed.confオプションに追加することもできます。
DNSへのKMS SRV記録のエクスポートを無効にする
DNSにSRV RRを作成することにより、KMSホストが自動的にエクスポートされます。 KMSホストによるDNSの自動エクスポートを無効にするには、Slmgr.vbsスクリプトにコマンドラインオプション/ cdnsを付けて使用します。
Slmgr.vbsスクリプトを使用して自動DNSエクスポートを無効にすることが優先されますが、これを行うには、レジストリにDisableDnsPublishingという名前の新しいDWORD値を作成し、その値を設定します。この値は、レジストリのHKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionSoftwareProtectionPlatformにあります。 KMS SRVをDNSにエクスポートするという既定の動作を再度有効にするには、値を0に設定します。
KMSホストをインストールする
KMS機能を有効にするには、KMSキーをKMSホストにインストールします。その後、ホストはインターネットまたは電話でマイクロソフトのライセンス認証サービスを使用してライセンス認証されます。 Windows 7またはWindows Server 2008 R2コンピューターはすべてKMSホストとして機能できます。 Windows Vista、Windows Server 2003、およびWindows Server 2008もKMSホストとして機能できます。 KMSホストがライセンス認証できるKMSクライアントは、KMSホストのライセンス認証に使用されるホストキーによって異なります。
コマンドプロンプトを使用して、Windows 7またはWindows Server 2008 R2コンピューターにKMSキーをインストールしてアクティブ化してください。
- KMSキーをインストールするには、コマンドプロンプトでslmgr.vbs / ipk <KmsKey>と入力します。
- オンラインでアクティブにするには、管理者権限でコマンドプロンプトにslmgr.vbs / atoと入力します。
- 電話を使用してアクティブにするには、コマンドプロンプトでslui.exe 4と入力します。
- KMSキーをライセンス認証した後、ソフトウェア保護サービスを再起動してください。
Windows 7およびWindows Server 2008 R2では、管理者がユーザーインターフェイスを使用してKMSホストキーをインストールすると必ず警告が表示されます(Slmgr.vbsスクリプトを使用してKMSホストキーをインストールすると、この警告は表示されません)。このメッセージは、管理者がKMSホストとして使用するつもりのないコンピューターにKMSキーを誤ってインストールするのを防ぐのに役立ちます。
KMSホストが正しく構成されていることを確認するには、KMS番号が増えているかどうかを確認します。 KMSホストの[コマンドプロンプト]ウィンドウに「slmgr.vbs / dli」と入力して、現在のKMS番号を表示します。管理者は、イベントID 12290の[アプリケーションとサービスのログ]フォルダーにあるキー管理サービスのログを確認することもできます。キー管理サービスのログには、KMSクライアントからのライセンス認証要求が記録されます。各イベントには、コンピュータの名前と各ライセンス認証要求のタイムスタンプが表示されます。
KMSクライアントを構成する
このセクションでは、KMSクライアントなどのコンピューターのインストールと構成の概念について説明します。既定では、Windows Vista、Windows 7、Windows Server 2008、およびWindows Server 2008 R2のボリュームライセンスバージョンはKMSクライアントです。組織がKMSを使用してライセンス認証することを望んでいるコンピューターがこれらのオペレーティングシステムの1つを使用していて、ネットワークが自動DNS検出を許可している場合は、それ以上構成する必要はありません。
KMSクライアントがDNSを使用してKMSホストを検索するように構成されているが、DNSからSRVレコードを受信しない場合、Windows 7およびWindows Server 2008 R2はイベントログにエラーを記録します。
KMSホストを手動で指定する
管理者は、KMSホストキャッシュを使用してKMSホストをKMSクライアントに手動で割り当てることができます。 KMSホストを手動で割り当てると、KMSクライアントでの自動KMS検出が無効になります。 KMSホストは、次のコマンドを実行して手動でKMSクライアントに割り当てられます。/ skms <Name [:Port] | :port> [Activation ID] <Name>はホストのKMS_FQDN、IPv4Address、またはNetbiosNameであり、portはKMSホストのTCPポートです。
KMSホストがインターネットプロトコルバージョン6(IPv6)のみを使用している場合、アドレスは[hostname]:portの形式で指定する必要があります(角かっこを使用)。コロン(:)を含むIPv6アドレスは、Slmgr.vbsスクリプトによって誤って解析されます。
KMSクライアントの自動検出機能を有効にする
既定では、KMSクライアントは自動的にKMSホストを検出します。自動検出機能は、KMSホストをKMSクライアントに手動で割り当てることで無効にできます。この操作により、KMSクライアントキャッシュからKMSホスト名も削除されます。自動検出機能が無効になっている場合は、コマンドプロンプトでslmgr.vbs / ckmsを実行して再度有効にすることができます。
KMSクライアントにサフィックスエントリを追加する
RR SRVを含むDNSサーバーのアドレスをKMSクライアントのサフィックスエントリとして追加することで、管理者はDNSサーバー上のKMSホストに通知し、他のプライマリDNSサーバーを持つKMSクライアントに検出させることができます。
KMSクライアントを展開する
このセクションの情報は、ボリュームライセンスのお客様がWindows自動インストールキット(Windows AIK)を使用してWindowsオペレーティングシステムを展開およびアクティブ化するためのものです。システム準備ツール(Sysprep.exe)を使用してKMSクライアントを展開する準備をします。
写真を撮る前に、コマンドラインオプション/ generalizeを指定してSysprep.exeを実行し、トリガタイマー、セキュリティ識別子(SID)、およびその他の重要な設定をリセットします。アクティベーションタイマーをリセットすると、イメージを展開する前にイメージの延長が期限切れになるのを防ぐことができます。 Sysprep.exeを実行してもインストールされているソフトウェアキーは削除されず、管理者はミニセットアッププロセス中に新しいキーを入力するように求められません。 / rearmがない場合でも、Sysprep.exeの実行は完了しますが、アクティベーションタイマーは変更されず、返されたエラーによって状況がさらに詳しく説明されます。
社内で使用するためのデモ用仮想マシンを構築する場合(たとえば、組織の営業部門用の仮想マシンを構築する場合や一時的なトレーニング環境を設定する場合)、Slmgr.vbsスクリプトをオプション付きで実行します。コマンド/ rearmを選択してさらに30日間延長し、トリガータイマーをリセットします。ただし、コンピューターに他の変更は加えません。 Windows 7またはWindows Server 2008 R2を実行しているコンピューターでは、トリガータイマーを3回リセットできます。
KMSクライアントを手動でライセンス認証する
既定では、KMSクライアントは既定の間隔で自動的にライセンス認証を試みます。ユーザーに配布する前にKMSクライアントを手動でアクティブ化する(たとえば、クライアントが切断された)場合は、システム制御システムセクションを使用するか、コマンドプロンプトで管理者権限でslmgr.vbs / atoを実行します。 Slmgr.vbsは成功または失敗を報告し、結果のコードを提供します。ライセンス認証を実行するには、KMSクライアントが組織のネットワーク上のKMSホストにアクセスできる必要があります。
>>もっと見る:KMSライセンス認証を展開する(パート2)
コメント
コメントを投稿