仮想化でプリセールスしてるSEの一日

VMware から Azure まで、インフラや仮想化の最新情報をベンダー色をできるだけ抑えて綴っていきます

vSphere 6.0 の覚え書き - vCenter Server の SSL 証明書を正規版に差し替える

f:id:ogawad:20190203195705p:plain:right


以前より何回か紹介した vCenter オレオレ証明書 の差し替え手順が、vSphere 6.0 でまた大幅に方法が変わったようです。
備忘録を兼ねて残しておきます。



vSphere 5.5 はアプライアンス版であれば驚くほど簡単になったと喜んでいたのですが、vSphere 6.0 ではオレオレ証明書というか、vCenter Server 自体に「VMCA」という認証局機能が搭載されています。
つまり、オレオレCA に格上げされてしまいました。

したがって、vSphere 6.0 では単なる SSL サーバー証明書の署名というより、vCenter VMCA を中間認証局として署名する作業となります。



http://pubs.vmware.com/vsphere-60/topic/com.vmware.vsphere.security.doc/...


なお、CA になったことからも推察できるとおり、vCenter Server の管理下になった ESXi ホストは SSL 証明書が自動で置き換えられるそうです。
ですので、社内 CA など正規の SSL 証明書を使う予定の場合は vCenter Server インストール後速やかに作業する ことを強くお勧めします。

※ vCenter はアプライアンス版(VCSA)を想定しています。
※ 所要時間は 20 分弱です(証明書関連に明るい場合)。


CSR の生成

vCenter Server 6.0 は、アプライアンス版・Windows 版共に CSR を自動生成してくれる「vSphere 6.0 Certificate Manager」が付属しています。


1. ssh で VCSA に接続します。ユーザーは administrator@vsphere.local ではなく、必ず root でログインしてください。

2. 表示される画面のとおりに bash シェルを有効にします。


3. 警告が表示された後 [vcserver:~ #] のプロンプトに変われば OK です。。

4. /usr/lib/vmware-vmca/bin/certificate-manager を実行します


5. 2. Replace VMCA Root Cert... を選択します。

6. SSO のパスワードを入力し、1 Generate Certificate Sign... を選択します。

7. /tmp などの適当な場所に出力し、一旦ツールを終了します。

8. 出力された CSR をダウンロードします。

WinSCP を利用する場合は KB2107727 の方法でログインシェルを一時的に変える必要がありますが、ファイルの中身はテキストですのでターミナル上でクリップボードコピーしても構いません。


CSR による署名

私の環境(Windows Server 2012 R2 ADCS)の場合、
KB2112009 にあるような専用のテンプレートを用意しなくても、既定の「下位の証明機関」テンプレートで要件を満たしていました。



署名されたファイルは単体ではなく、チェーン (*.p7b) でダウンロードします。DER と BASE64 はどちらでも構いません。


PEM ファイルの生成

上から「VMCA」「上位CA」「ルート証明書」と BASE64 文字列が並ぶ PEM 証明書を生成します。

1. 先ほどダウンロードした *.p7b ファイルをダブルクリックで開きます。

2. スナップインにて、2つの証明書それぞれを X.509 BASE64 で出力します。

3. 以前の記事 を参考にしつつ、CA 証明書チェーン certnew.p7b をダウンロードし、こちらも X.509 BASE64 で出力します。

4.  「2 で出力した CA」→「2 で出力したもう片方」 → 「3 で出力した CA 証明書チェーン」 の順で 単一のテキストファイル に統合します (concat) 。


PEM ファイルのアップロード

1. SCP やクリップボードを通じて PEM ファイルを転送します。

2. 再び certificate-manager を実行し、22 の順に選択します。

3. PEM ファイルと KEY ファイルの場所を指定します。KEY ファイルは CSR を出力したディレクトリにあるはずです。

4. 証明書の発行先情報を埋めると、証明書の置き替えが開始され、vCenter サービスが再起動します。



上記のメッセージが出たら、置き換え正常終了です。
ブラウザを開いて証明書エラーが出ないことを確認してください。








階層構造は左のようになるはずです。



なお、執筆時点の vCenter 6.0 では、vCenter Server を中間 CA にしてから 24 時間は ESXi ホストを追加できない不具合があるようです。詳しくは こちら で。


中間 CA の証明書入手と登録(2015.8.9 追記)

利用中の PKI 構造によっては、上記手順を完了してもまだ証明書エラーになることあります。この場合は当該 PC に中間 CA 証明書のインポートが必要です。

中間 CA 証明書は https://vCenterサーバーのFQDN/「信頼されたルート CA 証明書をダウンロード」のリンクからダウンロード可能です。



ダウンロードファイル名は「download」と拡張子は付いていませんが、zip ファイルですので、.zip を付けて解凍すると、複数のファイルが格納されています。拡張子が「0」のファイルが CA 証明書ファイル、「r0, r1, ...」のファイルの CRL 失効リストです。
MMC 証明書スナップインを起動し、最も新しい「0」ファイルとそれに対応する CRL リストをコンピュータアカウントの証明書ストア 中間証明機関 に登録してください。




参考情報: