【AD基礎】ドメイン参加とは?基本の仕組みを解説!

  • 2023年5月17日
  • 2023年6月8日
  • AD DS

Active Directory ドメイン サービス(AD DS)とは、システム管理者が組織内のユーザーやリソースを管理するためのサービスです。

AD DS で構築したドメイン環境は、ドメイン コントローラーと呼ばれるサーバーでドメインを管理しています。保有しているコンピューター端末などのリソースをドメインで管理したい場合、対象のコンピューター端末をドメイン参加させる必要があります。

今回は、ドメイン参加に関する基本知識や関連設定について紹介します。

ドメイン参加とは

ドメイン参加(Domain Join)とは、コンピューター端末をドメインに所属させる作業のことを意味します。ドメイン参加すると、そのコンピューター端末はドメインの管理下に置かれた状態となります。コンピューター端末をドメイン参加させた後は、そのコンピューター端末にドメイン ユーザーがログオンできたり、設定を自動的に配布したりできるようになります。

Active Directory のドメイン環境で管理できることについては、以下の記事でも詳細を紹介しています。

関連記事

Active Directory ドメイン サービスとは、組織でシステム管理者が、組織内のユーザーやリソースを管理するためのサービスです。 Active Directory は Windows 2000 Server から標準で導入されてお[…]

最近では、オンプレの Active Directory ドメインだけではなく、Azure Active Directory(AAD) のクラウドで構成されているドメイン環境に参加させることもあります。そのため、”Active Directory Domain Service(AD DS)” のサービスで構築したドメイン コントローラーで構成されたドメイン環境に参加させることを “Local Domain Join” と区別して表現することもあります。

ドメイン参加のフロー

Windows OS のコンピューター端末をドメイン参加させるために必要な作業や、内部動作について紹介します。コンピューター端末をドメイン参加させるときの大まかなフローは以下の通りです。

  1. DNS サーバーの設定
  2. 参加するドメイン名の指定
  3. ドメイン ユーザーの資格情報を入力
  4. コンピューター アカウントとパスワードの保存
  5. OS 再起動

DNS サーバーの設定

コンピューター端末が参照する DNS サーバーの設定において、ドメインを利用するために必要なレコードを管理している DNS サーバーを参照する設定にします。

ドメイン コントローラーを構築する時に、DNS サーバーの役割を兼任させる構成が一般的です。ドメイン コントローラー上に構築された DNS サーバーには、自動でドメインを利用するために必要なレコードが管理されます。ドメインを利用するために必要なレコードとは、コンピューター端末がドメイン名やドメイン コントローラーの名前解決ができたり、ドメイン コントローラー間の複製に必要な名前解決ができるために必要なレコードとなります。

各ドメイン コントローラーが DNS サーバーの役割を兼任している構成のドメイン環境であれば、コンピューター端末の参照 DNS サーバーの設定としてドメイン コントローラーの IP アドレスを設定します。

一般的には、ドメイン コントローラー上に DNS サーバーの役割を兼任させる構成が多いですが、技術的にはドメイン コントローラーと DNS サーバーを別々の端末に構成することもできます。ドメイン コントローラーは Windows Server OS の端末上に構築し、DNS サーバーは Bind のような DNS 製品を利用して構成することもできます。Bind で構成した DNS サーバーにおいても、ドメインを利用するために必要なレコードを管理していれば問題ありません。

参加するドメイン名の指定

コンピューター端末にて、[システムのプロパティ] から参加するドメイン名を指定して、ドメイン参加の処理を開始します。

例えば、コンピューター端末を nekomaru.com というドメインに参加したい場合、1) [ファイル名を指定して実行] を開き、ncpa.cpl と入力して [OK] をクリック、2) [システムのプロパティ] の [コンピューター名] タブにて、[コンピューター名を変更したりドメインに参加したりするには [変更] をクリックしてください。] の項目にて、[変更] をクリック、3) [所属するグループ] にて [ドメイン] を選択しドメイン名を入力して [OK] をクリックします。ドメイン参加は [システムのプロパティ] の画面以外から参加する方法も用意されています。

コンピューター端末にてドメイン参加の処理を開始すると、まずドメイン内に構築されているドメイン コントローラーを探します。コンピューター端末は DNS サーバーに問い合わせをして、利用可能なドメイン コントローラーを探します。

ドメイン コントローラーの探索には、「DC ロケーター」という機能を利用しています。DC ロケーターについては、以下の記事で詳細を解説していますので参考にしてください。

関連記事

Active Directory ドメイン サービスで構築されたドメイン環境では、ドメイン コントローラーがユーザーやコンピューターの管理をしています。Active Directory の仕組みを利用して認証や設定の配布するためには、ドメイ[…]

クライアント端末が「DCロケーター」の仕組みを利用して、DNS サーバーから利用可能なドメイン コントローラーを探し、ドメイン参加の要求を行います。

ドメイン ユーザーの資格情報を入力

コンピューター端末をドメイン参加させようとすると、資格情報の入力が求められます。コンピューター端末をドメインに参加させることができるのは、ドメインにて許可されたユーザーのみです。既定では、ドメイン ユーザーであればドメイン参加させることができます。ドメイン名を知っていれば誰でもドメイン参加できるわけではなく、ドメインで許可されたユーザーのみがコンピューター端末をドメイン参加させることができます。資格情報を求められたら、ドメイン ユーザーの資格情報(ユーザー名とパスワード)を入力します。

ドメインの管理者権限を持たない一般ユーザーでも、コンピューター端末をドメイン参加させることができます。ただし、一般ユーザーの場合は、ドメイン参加させることができるコンピューター端末の数は 10 台まで(既定値)いう制限があります。ドメインの管理者権限をもつユーザーには台数の制限はありません。

コンピューター アカウントとパスワードの保存

コンピューター端末にて資格情報を入力したら、コンピューター端末とドメイン コントローラー間でドメイン参加した状態となるために必要な処理が開始されます。

コンピューター端末にはドメイン参加した状態になるために必要な各種データがローカルで保持され、ドメイン コントローラーには AD データベース上にその端末の「コンピューター アカウント」の AD オブジェクトが作成されます。

コンピューター端末がドメイン参加した状態となるために必要な各種データの中で、重要なデータの1つが「コンピューター アカウント パスワード」です。ドメイン参加時に作成されたコンピューター アカウントにはパスワードがあり、「コンピューター アカウント パスワード」と呼ばれます。コンピューター アカウント パスワードは、ドメイン参加しているコンピューター端末とドメイン コントローラーの間でセキュアチャネルを確立する時に利用されます。そのため、コンピューター アカウント パスワードは、コンピューター端末とドメイン コントローラーの双方で管理されている必要があります。コンピューター端末においては以下のレジストリに保存されます。

HKEY_LOCAL_MACHINE\SECURITY\Policy\Secrets\$MACHINE.ACC
ドメイン コントローラー上には、AD データベース上にコンピューター アカウントが作成されます。コンピューター アカウント パスワードは、コンピューター アカウントの unicodePwd 属性と呼ばれる格納場所に記憶されます。
ドメイン参加しているコンピューター端末とドメイン コントローラーの双方が同じ「コンピューター アカウント パスワード」をもつことでセキュアチャネルが確立でき、ドメインにて管理ができるようになります。セキュアチャネルについては、以下の記事で詳細を解説していますので参考にしてください。
関連記事

ドメインに参加しているコンピューターと、ドメイン コントローラーは「セキュアチャネル」と呼ばれる、保護された安全な通信を確立しています。セキュアチャネルが正常に確立できないと、コンピューターにログオンできない等のトラブルが発生する可能性があ[…]

 

OS 再起動

コンピューター端末とドメイン コントローラー間でドメイン参加した状態となるために必要な処理が完了したら、コンピューター端末には OS の再起動が求められます。OS が再起動したら、コンピューター端末のドメイン参加の処理は完了です。

ユーザーのドメイン参加端末の上限値

ドメイン ユーザーがコンピューター端末をドメインに参加させる場合には、基本的には、コンピューター アカウントが作成されるコンテナ/OU に対して、[コンピュータ オブジェクト作成] の権限を持っている必要があります。ドメイン参加すると、既定では Computers コンテナにコンピューター アカウントが作成されます。Computers コンテナには、既定で Enterprise Admins と Domain Admins に [コンピュータ オブジェクト作成] の権限が与えられるため、Enterprise Admins、 Domain Admins のいずれかに所属しているユーザーは、制限なくコンピューター端末をドメイン参加させることができます。

コンピューター アカウントが作成されるコンテナ/OU に対して、[コンピュータ オブジェクト作成] の権限がないユーザーでも、[ドメインにワークステーションを追加] のポリシーに設定されているユーザーは、既定で 10 台までコンピューター アカウントをドメインに参加させることができます

Default Domain Controllers Policy の [ドメインにワークステーションを追加] ポリシーには、既定で “Authenticated Users” が設定されています。そのため、ドメインで認証されるアカウントであれば、10 台までドメイン参加させることができる設定となっています。

「10 台」という制限値は、Active Directory のドメインのオブジェクトの ms-DS-MachineAccountQuota 
属性値に格納されており、属性値を変更すれば上限値を変更することができます。

ms-DS-MachineAccountQuota の属性値を変更すると、[ドメインにワークステーションを追加] ポリシーに設定されている全てのユーザーに対して上限値が変更されます。

特定のユーザーにドメイン参加端末の権限を付与

Enterprise Admins や Domain Admins の権限を持っているユーザーは無制限にコンピューター端末をドメイン参加させることができますが、一般ユーザーは既定では 10 台までという制限があります。

一般ユーザーにコンピューター端末をドメイン参加させる作業を委託したいシナリオにおいても、10 台までの上限値の影響を受けてしまいます。ms-DS-MachineAccountQuota の属性値を変更して上限値を変更することはできますが、全ての一般ユーザーに対して上限値の変更が反映されてしまいます。特定の一般ユーザーに対してのみ、10 台の上限値の影響を受けることなく、ドメイン参加の作業を行う方法として以下の2通りの方法が有効です。

コンピューター アカウントを事前に作成し、アクセス権を設定

コンピューター端末をドメインに参加させる前に、事前にコンピューター アカウントを作成しておくことにより、10 台の上限値の影響を受けることなく、特定の一般ユーザーの権限でコンピューター端末をドメインに参加させることができます。

作業の流れとしては、[1]コンピューター アカウントを手動作成、[2]作成したコンピューター アカウントのアクセス権を設定という流れとなります。

[1]コンピューター アカウントを手動作成

ドメインに参加するコンピューター端末のコンピューター アカウントを事前に作成しておきます。

1) 任意のドメイン コントローラーに管理者権限をもつユーザーでログオンします。
2) [Windows 管理ツール] より [Active Directory ユーザーとコンピューター] を開きます。
3) 左ペインのツリーを展開し、コンピューター アカウントを配置したいコンテナー/OU を表示します。
4) 左ペインに表示されている対象のコンテナー/OU を右クリックし、[新規作成] – [コンピューター] をクリックします。
5) [コンピューター名] に対象のコンピューターの名前を入力します。
6) [変更] をクリックします。
7) [選択するオブジェクト名を入力してください] にドメイン参加時に用いるユーザー カウントを入力し、[OK] をクリックします。
8) [OK] をクリックします。

[2]作成したコンピューター アカウントのアクセス権

[1] にて新規作成したコンピューター アカウントに対して、対象の一般ユーザーがドメイン参加できるように必要なアクセス権を付与します。

1) 引き続き [Active Directory ユーザーとコンピューター] にて作業します。
2) [表示] メニューの [拡張機能] をオンにします。
3) 左ペインのツリーを展開し、作成したコンピューター アカウントを表示します。
4) 対象のコンピューター アカウントを右クリックし、[プロパティ] をクリックします。
5) [セキュリティ] タブの [詳細設定] をクリックします。
6) [アクセス許可] タブの [追加] をクリックします。
7) [プリンシパルの選択] をクリックします。
8) [選択するオブジェクト名を入力してください] に対象の一般ユーザーの名前を入力し、[OK] をクリックします。
9) [適用先] から [このオブジェクトのみ] を選択します。
10) 右下の [すべてクリア] をクリックします。
11) Windows Server 2008 以前のコンピューターをドメインに参加させる場合は、[アクセス許可] の欄から [DNS ホスト名への検証された書き込み] および [サービス プリンシパル名への検証された書き込み]、[パスワードのリセット] をオンにします。Windows 7/Windows Server 2008 R2 以降のコンピューターをドメインに参加させる場合は、[アクセス許可] の欄から [パスワードのリセット] をオンにします。
12) [プロパティ] の欄から [アカウントの制限 の書き込み] をオンにします。
13) [OK] を 3 回クリックします。

ドメイン参加させるコンピューター端末の OS のバージョンによって、必要なアクセス権が異なります。
 

コンピューター アカウントが作成されるコンテナ/OUにアクセス権を設定

ドメイン参加時にコンピューター アカウントが作成されるコンテナ/OU (既定では Computers コンテナ)に対し、対象の一般ユーザーに [コンピューター オブジェクトの作成]、[コンピューター オブジェクトの削除] のアクセス許可を付与します。この方法では、ドメイン参加する前に事前にコンピューター アカウントを手動で作成しておく必要ななく、コンピューター アカウントがない状態でも上限値の影響を受けることなく、対象の一般ユーザーでドメイン参加させることができます。

1) 任意のドメイン コントローラーに管理者権限をもつユーザーでログオンします。
2) [Windows 管理ツール] より [Active Directory ユーザーとコンピューター] を開きます。
3) [表示] メニューの [拡張機能] をオンにします。
4) 左ペインのツリーを展開し、ドメイン参加時にコンピューター オブジェクトが作成されるコンテナー/OU を表示します。
5) 左ペインに表示されている対象のコンテナー/OU を右クリックし、[プロパティ] をクリックします。
6) [セキュリティ] タブの [詳細設定] をクリックします。
7) [アクセス許可] タブの [追加] をクリックします。
8) [プリンシパルの選択] をクリックします。
9) [選択するオブジェクト名を入力してください] に対象のユーザー アカウントを入力し、[OK] をクリックします。
10) 右下の [すべてクリア] をクリックします。
11) [アクセス許可] の欄から [コンピューター オブジェクトの作成] と [コンピューター オブジェクトの削除] をオンにします。
12) [OK] を 3 回クリックします。

コンピューター アカウントの所属 OU

コンピューター端末をドメインに参加させると、既定で Computers コンテナにコンピューター アカウントが作成されます。この既定の動作を変更する方法があり、[1]コンピューターアカウントの既定の所属コンテナ/OU を変更する、[2] ドメイン参加時に所属させるコンテナ/OU を指定することができます。

[1]コンピューターアカウントの既定の所属コンテナ/OU を変更する

ドメイン参加時のコンピューター アカウントが所属する既定のコンテナは Computers ですが、redircmp コマンドにて既定の所属コンテナ/OU を変更することができます。

redircmp コマンドで、既定の所属コンテナ/OU を変更する手順は以下の通りです。

1) 任意のドメイン コントローラーに管理者権限をもつユーザーでログオンします。

2) 管理者権限でコマンド プロンプトを開きます。

3) 以下のコマンドを実行して、既定の所属コンテナ/OU を変更します。

redircmp ou=mycomputers,DC=nekomaru,dc=com
※ redircmp コマンドの後には、既定の所属コンテナ/OU の DN を指定します。
redircmp コマンドを実行した後は、コンピューター端末をドメイン参加させると、作成されたコンピューター アカウントは mycomputers の OU に所属されるようになります。
 

[2] ドメイン参加時に所属させるコンテナ/OU を指定する

クライアント端末にてドメイン参加させる時に AccountOU オプションを指定することで、コンピューター アカウントが作成されるコンテナ/OU を指定することができます。

1) コンピューター端末にローカルの管理者権限をもつユーザーでログオンします。

2) 管理者権限でコマンド プロンプトを開きます。

3) 以下のコマンドを実行の上、コンピューターをドメインに参加させます。

wmic.exe ComputerSystem WHERE Name!=null CALL JoinDomainOrWorkgroup Name=”<ドメイン名>” Password=”<パスワード>” Username=”<ユーザー名>” AccountOU=”<OU>” FJoinOptions=<オプション>
実行例
wmic.exe ComputerSystem WHERE Name!=null CALL JoinDomainOrWorkgroup Name=”test.local” Password=”P@ssw0rd” Username=”test\testuser1″ AccountOU=”OU=testou;DC=test;DC=local” FJoinOptions=3
 
4) Return Value = 0 が出力されたことを確認の上、コンピューター端末の OS を再起動します。
 
AccountOU パラメータで OU を指定する場合、Distinguished Name の区切り文字に ‘,‘ (カンマ) ではなく ‘;‘ (セミコロン) を使用してください。カンマを使用すると wmic.exe がコマンド パラメータの区切り文字として認識されるため、コマンドが期待通り動作しません。
 
 
 
楽天ブックス
¥3,630 (2023/06/08 11:21時点 | 楽天市場調べ)
楽天ブックス
¥4,400 (2023/06/08 11:24時点 | 楽天市場調べ)