【vSphere7】Active Directory over LDAPSでvCenter Single Sign-On ID ソースを構成する

どうも、Tです。

vSphere7において、外部の認証情報を使ってvSphere Clientへのログイン認証などを行えるAD Over LDAPSのSSO IDソースを試してみました。

スポンサーリンク
アドセンス1

やりたいこと

概要

外部ソース(今回は、ADドメインのユーザーアカウント)を利用してvSphere Clientへのログインを行えるようにします。この構成として、Active Directory Over LDAPS(vSphere Clientの表示では、LDAPを介したActive Directory)を行います。

なぜAD over LDAPSなのか

今ままで、vcsaとADドメインアカウントの認証は、統合Windows認証を使っているのがほとんどだと思います。すごく簡単に設定できたので、ADでこれ以外を使う意図がありませんでしたが、この統合Windows認証がvSphere7で下記のように廃止予定のメッセージを出力するようになりました。

KBでは、廃止までの機能的影響がないアナウンスですが、今後のアップデートなどを考慮すると統合Windows認証は避けたいところです。

https://kb.vmware.com/s/article/78506

なぜ廃止なのかは下記のブログに記載されています。MicorosoftさんのLDAPの動作の変更によるものなんですが、もう1つ大切なことがあります。今回使うのはLDAPS(LDAP over SSL/TLS)ですが、ただのLDAPではだめなのか?というところです。

元々Microsoftの動作変更によって、統合Windows認証が廃止になりますが、LDAPの場合でも同様の影響を受けるため、LDAPSを使用する必要があります。

https://blogs.vmware.com/vsphere/2020/01/microsoft-ldap-vsphere-channel-binding-signing-adv190023.html

The red & green text has been added by us as an illustration. Sources using LDAP (ldap://, port 389) are likely to be affected. Sources using LDAPS (ldaps://, port 636) are likely fine if they are direct connections and not through proxies or load balancers.

下記は、MicrosoftさんのLDAPの動作変更に関する記事です。

Security Update Guide - Microsoft Security Response Center

環境

今回使う環境です。すべてESXi内の仮想マシンで構成しています。AD DSは確認だけなら1台でも大丈夫なのですが、複数ある場合のテストがしたかったのでAD DSを2台用意しました。

  • vCenterServer:7.0.2 17958471
  • vSphere ESXi: 7.0.2 17867351
  • AD DS:Windows Server2019(1台目ホスト名:testad、2台目ホスト名:testad2)
  • AD CS(エンタープライズCA&Web登録):Windows Server2019
  • 確認用クライアント:Windows Server2019

AD CSの構築方法は、下記にまとめました。

Active Directory証明書サービス(AD CS)でオレオレ認証局(エンタープライズCA)を構築する
どうも、Tです。 急遽、証明書機関が必要になったので、Active Directory証明書サービス(AD CS)を使えるようにしてみ...
Active Directory証明書サービス(AD CS)に証明機関Web登録を追加する(CAと同居構成)
どうも、Tです。 先日、AD CSをインストールしましたが、Webブラウザから証明書発行のリクエストを行えるようにWeb登録機能を追加...

AD LDAPSの設定は、下記にまとめました。

AD DS(ADドメインコントローラ)でLDAPSを使えるようにしてみる with AD CS Enterprise CA
どうも、Tです。 AD DS(Active Directory Domain Services )とLDAPS通信を行えるよう...

2021年9月17日追記

AD CSを使わずにPowerShellのコマンドから生成した自己署名証明書でもvCenterからの接続が行えました。

Power Shellを使った証明書の生成は、下記をご確認ください。

AD DS(ADドメインコントローラ)でLDAPSを使えるようにしてみる with PowerShell(自己署名証明書)
どうも、Tです。 以前AD CSを使ってAD DSでLDAPS通信する方法を行いましたが、AD CSが準備できないパターンも往...

Single Sign-On ID ソース設定

下記のKB2041378を参考にSSOのIDソースを追加していきます。

VMware Knowledge Base

AD DSの証明書取得(AD DS2台ともで実施)

この操作は、AD DSで行います。この操作は、2台のAD DSそれぞれで実施します。

vcsaからLDAPS接続するには、AD DS側のLDAPSに使用する証明書の取得が必要です。mmcから証明書(ローカルコンピューター)を開いて「個人」->「証明書」->「LDAPSで使用する証明書を右クリック」->「すべてのタスク」->「エクスポート」をクリックします。

「次へ」をクリックします。

「いいえ、秘密キーをエクスポートしません」を選択して、「次へ」をクリックします。

「Base 64 encoded X.509」を選択して、「次へ」をクリックします。

任意のファイル名をつけて「保存」をクリックします。

エクスポート先所を選択して「次へ」をクリックします。

「完了」をクリックするとエクスポートされるので、「OK」をクリックして閉じます。

1台目のAD DSとLDAPS通信を行うために必要な証明書ファイルを取得できました。

AD DSの2台目も同じ手順で証明書をエクスポートします。2つの証明書ファイルを取得できました。

AD DSが触れない場合は?

AD DSが触れない、もしくは担当違いで依頼するのが億劫な場合は、vcsaのshellから下記のコマンドを実施することにより、エクスポートした証明書の中身と同じものを取得することができます。下記コマンド結果のcertificateの部分を、コピペして.cerファイルで保存します。

$ openssl s_client -showcerts -host <AD DS の FQDN> -port 636

vcsaのADドメイン参加

ここからは、vSphere Clientが操作できる環境で行います。操作は、administrator@vsphere.localで行います。

IDソースを追加する前に、vcsaをAD参加する必要があります。

「Single Sign-On」->「設定」->「IDプロバイダ」->「Adtive Directoryドメイン」->「ACTIVE DIRECTORYに参加」をクリックします。

ADドメインの参加情報を入力して。「参加」をクリックします。組織単位(オプション)は、vcsaのコンピュータアカウントが作成される場所の指定です。デフォルトではComputersに作成されます。

「ノード「vcsaのFQDN」は、Active Directoryに正常に参加しました。変更を適用するため、ノードを再起動してください」が表示されるのでノードを再起動します。

ノードの再起動手順は、下記をご参照ください。

https://docs.vmware.com/jp/VMware-vSphere/7.0/com.vmware.vsphere.vcenter.configuration.doc/GUID-63A3FB6C-9EF5-4AF6-8120-6711799A2CAD.html

再起動しなくても認証できる

ADに参加するとComputersにvcsaのコンピュータアカウントが作成さます。また、そのまま認証も行えるような感じではありますが、下記の注意事項があるので必ず、ノード再起動をするようにしましょう。

https://docs.vmware.com/jp/VMware-vSphere/7.0/com.vmware.vsphere.vcenter.configuration.doc/GUID-08EA2F92-78A7-4EFF-880E-2B63ACC962F3.html

重要:
vCenter Server を再起動しないと、 vSphere Client を使用しているときに問題が発生する場合があります。

IDソースの追加

ADへの参加がおわったので、IDソースを追加していきます。

「Single Sign-On」->「設定」->「IDプロバイダ」->「IDソース」->「追加」をクリックします。

IDソースタイプから「LDAPを介したActive Directory」を選択します。

下記のように入力欄が表示されるので、入力して「追加」をクリックします。

といっても、わかりにくい項目があったので抜き出しました。

https://docs.vmware.com/jp/VMware-vSphere/7.0/com.vmware.vsphere.authentication.doc/GUID-98B36135-CDC1-435C-8F27-5E0D0187FF7E.html

ID ソース名

設定画面に表示される識別用の名前です。任意の名前を付けます。

ユーザーのベース・グループのベース識別名

ベースDN表記で記載します。今回は、事前に作成したOU「testUsers」「testGroups」を指定しています。

ベースDNがイメージしにくい場合は、mmcのADSIエディタを見るのがわかりやすいです。

なお、「ユーザーのベース識別名」「グループのベース識別名」に同じベースDNを指定することもできます。(ADのCN=Usersにユーザーもグループも作成できますよね。)

「ユーザー・グループベース識別名」を別々のOUで設定した場合・・・・

「ユーザー識別名」に指定した配下のセキュリティグループは、vSphere Client上で表示されません。

「グループ識別名」に指定した配下のADドメインユーザーは、vSphere Client上で表示されません。

接続先

ldapsで使うことを明示します。最後のポート番号もLDAPSを表しているのですべて入力します。

ldaps://<AD DSのホスト名、IPアドレス>:636

証明書(LDAPSの場合)

AD DSで取得した証明書を指定します。これがないとLDAPS接続が行えません。

これでIDソースが追加できました。

確認

IDソースに追加した、ユーザーアカウントでSSO認証が行えるのか確認していきます。テスト用にADアカウントを作成しました。

権限・ロール設定

ADドメインユーザーに権限付与を行います。今回は、簡素にするためグローバル権限にシステム管理者を割りてます。

「アクセスコントロール」->「グローバル権限」->「+」をクリックします。

ドメインに追加したIDソースを指定、ユーザー/グループにADドメインのものを指定、ロールにシステム管理者を設定、子へ伝達にチェックを入れて「OK」をクリックします。

グローバル権限に追加できました。

Windowsセッション認証

testuser001でWindowsにログインして、vSphere Clientに接続し拡張認証プラグインのダウンロードをクリックします。

いつからかわかりませんが、2021年8月前後のChromeでは、拡張認証プラグインをクリックしてもダウンロードできないようです。IE、Edge、Firefoxなどでダウンロードしてください。

ChromeでvSphere Client(HTML版)の「Windowsセッション認証を使用してください」がグレーアウトしている
どうも、Tです。 こんなこともあるのかなぁと思ったので忘れぬように備忘録。 問題 ADドメインアカウントでWindowsにログイン...

ダウンロードしたファイルを実行してインストールを行います。(次へ次へへインストールできるので割愛します)

ブラウザを更新して、「Windowsセッション認証を使用」にチェックを入れて「ログイン」をクリックします。

確認のポップアップが表示されるので「Allow」をクリックします。

ADドメインユーザーのtestuser001でログインが行えました。

余談ではありますが、Administraotr@vsphere.local以外のアカウントでは、システム管理者が割り当たっていても(ローカルSSOアカウントでも)vCLS仮想マシンは表示されません。※ドキュメントが見つからないため、仕様なのか不具合なのかわかりませんが・・・おそらく仕様なのでしょう。

参考

Active Directory over LDAPS の ID ソースを構成する
本記事では Active Directory over LDAPS の ID ソースを構成していきます

まとめ

統合Windows認証よりも格段に面倒な手順が増えています。LDAPS以外のもう1つの方法としてAD FSがあります(僕は未検証ですが・・・)

こちらは、さらに面倒なので特に要望がなければ、今後はLDAPS接続が一般的になるのかなぁと考えています。

vCenter Server 7.0 で Identity Federation を構成【Part 1】
本記事シリーズでは vCenter Server 7.0 の新機能である Identity Federation を構成する方法を数回に分けてご紹介します。今回は Identity Federation の紹介と、最初の vCenter Server 側での手順について見ていきます。残りの AD FS の手順、 …
スポンサーリンク
アドセンス1
アドセンス1
ブログランキング・にほんブログ村へ

シェアする

フォローする