2025年2月16日日曜日

Windows Admin Center 2410のHTTPS証明書を入れ替える

Windows Admin CenterをWACと略して、以降の内容を記します。

WAC 2311までは、設定からWACを選択して、変更を進めるとインストールウィザードをre-runできました。インストール時のパラメーターはこの操作で変更できたわけです。インストール時のパラメーターには、HTTPS証明書の指定(拇印, Thumbprint)が含まれました。

それでは、WAC 2410ではどうでしょうか。まず、設定からWACを選択しても変更は選べず、アンインストールになるだけです。(画面キャプチャでは、WAC V2表記です)

以上のことからWAC 2410では、WAC 2311までのようにインストール時のパラメーターを変更できません。

ではどうするのか。ここでWAC 2410から大量に増えたPowerShellコマンドレットの出番ということになりそうです。

WAC 2410からの証明書入れ替えについて関連するPowerShellコマンドレットを探してみました。まずWAC 2410のPowerShellモジュールは、下記のものがあります。

  • Microsoft.WindowsAdminCenter.Configuration
  • Microsoft.WindowsAdminCenter.ConnectionTools
  • Microsoft.WindowsAdminCenter.ExtensionTools
  • Microsoft.WindowsAdminCenter.ManagementTools
  • Microsoft.WindowsAdminCenter.Migration
  • Microsoft.WindowsAdminCenter.PowerShellTools

上記のPowerShellモジュールを一つ一つインポートして、関連しそうなPowerShellコマンドレットがあるかを調べました。結果として、関連するものは、Microsoft.WindowsAdminCenter.Configurationにある下記です。
  • Add-WACCertificates
  • Get-WACCertificateSubjectName
  • Set-WACCertificateAcl
  • Set-WACCertificateSubjectName
Get-WACCertificateSubjectNameは、WAC 2410で使用されているHTTPS証明書を表示するものだと想像がつきましたし、実際そうでした。そうすると、Setの接頭子ついた二つやAddの一つを使って入れ替えると仮定しました。

まずWACが作成した自己署名証明書で、WACが開いていること(アクセスできていること)を確認していました。

Set-WACCertificateSubjectNameにより、WACが作成した自己署名証明書から、AD CSにて発行した証明書へ入れ替えてみました。
※なおAD CSのルートCA証明書は、グループポリシーにて事前配布済みです。

証明書が入れ替わったはずですが、WACは開かず。。。

証明書の作成方法を誤ったかと思い作り直したり、指定方法を誤ったかと思い指定方法を変えてみましたが、効果なし。Add-WACCertificatesを使うのも違うようでした。一度、Set-WACCertificateSubjectNameにより自己署名証明書へ戻しました。

WAC 2311で使っていた証明書の拇印を指定する方法を念のため採用してみました(結果としてこれは指定方法の変更に過ぎず、入れ替えを完全に行うという観点ではなかったです)。なお拇印を指定する場合は、"で囲んではダメです、念のため。

色々調べていたところ、Windows Admin Center v2.4 will not use SAN Cert にあたりました。その中にパーミッションが云々とあったため、

Set-WACCertificateAclを実行してみたらどうだろうと、実行してみました。そこまでの画面が下記です。
まだ自己署名証明書を使ってることになっており、
念のためWACのサービスを再起動してみました。
証明書の警告も消えて、指定した証明書に変わりました。

その後、アンインストールののち再インストール、別サーバーにWAC 2410へのインストールを通して、下記のやり方で証明書の入れ替えが可能であることを確認しました。

  • Set-WACCertificateAcl
    試行した限りでは、サーバー毎に一度実行すれば良さそう。また実行は、Set-WACCertificateSubjectNameの前でも後でも構わないようです。
  • Set-WACCertificateSubjectName
    により、証明書を入れ替えます。
  • 万が一、証明書が入れ替わらなかった場合のみ、WACのサービスを再起動します。

0 件のコメント:

コメントを投稿