🦔

【振り返り】Active Directory の基本を再確認する

2024/08/16に公開

はじめに

Active Directory は、認証やセキュリティ、ガバナンス等において企業ネットワークの基盤であり、クラウド全盛の今日でもMicrosoft Entra IDとID同期をを行いハイブリット環境で運用している企業が多いことと思います。
また、システム更改のタイミングで、Azure仮想マシンにActive DirecotryをデプロイしてAzure上でドメインコントローラーを運用するケースも多いでしょう。
Active Direcotoryは古くからインフラ周りを扱ってきたエンジニアにとってはなじみのある技術ではありますが、AZ800 Administering Windows Server Hybrid Core Infrastructureの学習を進めていて、改めて振り返る機会がありましたので、基本的なところを記事にしてみたいと思います。

ドメイン

ドメインとは、Active Directoryの「オブジェクトを管理する単位」です。オブジェクトとは、Active Directoryに登録されるアカウント (ユーザー、コンピューター、グループなど) やリソースの総称です。ドメインはサブドメインを構成することができ、ドメインツリーと呼ばれます。

ドメイントイメージ

フォレスト

フォレストとは、簡単に言うと「ドメインの集合」です。
下記は複数のドメイン(マルチドメイン)の構成ですが、シングルドメインでもフォレストの概念は存在します。

フォレストイメージ

サイト

サイトとは、物理ネットワークに合わせた、Active Directoryの論理的に分割した単位をいいます。
サイト分割するメリットは主に2つあります。
・レプリケーショントラフィックの削減
・同じサイトのドメインコントローラーとの認証

レプリケーション

各ドメインコントローラーは相互にデータの複製(レプリケーション)を行っています。これをマルチマスターレプリケーションと呼ばれます。レプリケーションの間隔は、サイト内のドメインコントローラー間のレプリケーション間隔は15秒、サイトを超えたドメコン間のレプリケーション間隔は3時間です。
レプリケーション方式は、DFS-R(Distributed File System Replication) という方式が採用されています。Windows Server 2012 R2まではFRS(File Replication System)という方式がサポートされていました。
レプリケーションの状態は、repadmin /showreps コマンドで確認できます。

信頼関係

単一ドメインでは、すべてのユーザーとリソース (ファイル共有、プリンター、アプリケーションなど) が同じドメインを共有するため、アクセス管理はシンプルで、すぐに利用できます。 複数のドメインまたはフォレストがある場合は、あるドメインのユーザーが別のドメイン内のリソースに安全にアクセスできるようにするための信頼関係を結ぶことが必要です。

信頼関係イメージ

信頼の方向とアクセス

信頼関係は矢印によって表現されます。信頼の方向とアクセスは逆になっているのですが、よく鍵を渡わすことに例えられます。以下の例では、AさんはBさんを信頼して鍵を渡します。(信頼の方向)
BさんはAさんから預かった鍵を使用してAさん宅に入ることができます。(アクセスの方向)

操作マスター(FSMO)

ドメインコントローラーは、ドメインコントローラー間でデータが相互にコピーされるマルチマスターモデルが採用されています。ただし、フォレストまたはドメインに一台だけが特別に受け持っている機能があり、操作マスター(FSMO)と呼ばれます。
ドメインコントローラーは、通常2台構成で冗長化しますが、操作マスター(FSMO)の機能を有するドメインコントローラーに障害が発生した場合は、サービス影響が発生しますので、操作マスター(FSOM)を転送する対応が必要になります。

操作マスター 役割 障害時の影響
スキーママスター すべてのスキーマ変更を行う。 スキーマを変更することができなくなる。
ドメイン名前付けマスター ドメインの追加や削除、またはドメインの変更を行う。 ドメインをフォレストに追加することができなくなる。
インフラストラクチャマスター あるドメイン内のグループに別のドメインのメンバーが含まれる場合などに、ドメイン間オブジェクト参照を保持する。 グローバル カタログではないドメイン コントローラーでは、SID セキュリティ プリンシパル名の変換を実行できなくなる。
RIDマスター オブジェクトに "セキュリティ ID (SID)" と呼ばれる一意の ID 番号を割り当てる。 新しいオブジェクトが作成できなくなる。
PDCエミュレーター ドメインのタイム ソースとして機能する。また緊急のパスワード変更を受信する。 ドメイン内の時刻の正常性を保てなくなる。また、パスワードの変更がすべてのドメイン コントローラーにレプリケートされるまで、ユーザーのサインインに問題が発生する可能性がある。

既定では、5 つの役割はすべて、フォレストにインストールされている最初のドメイン コントローラーによってホストされます。 ただし、追加のドメイン コントローラーを展開した後は、これらの役割を転送できます。
操作マスターの役割は、次のように配布されます。

  • 各フォレストには、1つのスキーママスターと 1つのドメイン名前付けマスター
  • 各ADDSドメインには、1つのRIDマスター、1つのインフラストラクチャマスター、1つのPDCエミュレーター

グローバルカタログ

グローバルカタログとは、フォレストやドメインに存在するすべてのオブジェクトの属性から、ユーザー名など頻繁に利用されるものを複製してカタログ化したものです。
検索などの際にいちいち各ドメインコントローラに問い合わせなくても応答できるようになります。

グローバルカタログイ複製メージ

機能レベル

Active Directoryには、機能レベルという機能があり、OSのバージョンによって使用できる機能レベルが異なります。当然最新のOSになるほど使用できる機能は豊富になります。
機能レベルにはドメインと、フォレストが2種類があります。

フォレスト機能レベル サポートされる機能
Windows Server 2022 -
Windows Server 2019 -
Windows Server 2016 ・特権アクセス管理(PAM)の追加
・ファイルレプリケーションサービス(FRS)機能の廃止
Windows Server 2012 R2 -
Windows Server 2012 -
Windows Server 2008 R2 ・削除されたオブジェクトの復元機能(ごみ箱機能)
ドメイン機能レベル サポートされる機能
Windows Server 2022 -
Windows Server 2019 -
Windows Server 2016 ・PKInit 鮮度拡張機能の KDC のサポート
・公開キーを使用して認証のドメインに参加しているデバイスのサポート等
Windows Server 2012 R2 ・Protected Usersに対するドメインコントローラー側の保護機能
認証ポリシー
・認証ポリシーサイロ等
Windows Server 2012 ・DCで信頼性情報、複合認証、およびKerberos防御
Windows Server 2008 R2 ・認証メカニズム保証

https://learn.microsoft.com/ja-jp/windows-server/get-started/whats-new-windows-server-2025

読み取り専用のドメインコントローラー(RODC)

Windows Server 2008から、読み取り専用のドメインコントローラー(Read Only Domain Controller)がサポートされています。ドメインコントローラーは双方向に複製し合っていますが、RODCは書き込みができない為、一方向で複製されます。
書き込みができないということによって、セキュリティが向上し、主に管理者が居ないようなブランチオフィスで利用されます。

データベース

Active Directoryは,ディレクトリ・データを格納するデータベース・エンジンとしてJetを使用しています。これは,ESENT(Extensible Storage Engine)と呼ばれているもので,Exchange Serverも同様のエンジンを使用しています。(このデータベースのページサイズが、Windows Server 2025では、8kから32kに拡張されるそうです。)

論理データベース

パーティション 内容
ドメインパーティション ドメイン内に作成されるオブジェクトを格納するための領域。ドメインパーティションに格納されるデータは、「Active Directoryユーザーとコンピューター」管理ツールで確認できる。
構成パーティション フォレスト内の構成情報を格納するための領域。構成パーティションに格納されるデータは、「Active Directoryサイトとサービス」管理ツールや「Active Directoryドメインと信頼関係」管理ツールで確認できる。
スキーマパーティション Active Directoryデータベースに格納可能なオブジェクトの種類とプロパティの種類などに関するデータを格納するための領域。スキーマパーティションに格納されるデータは、「Active Directoryスキーマ」管理ツールで確認できる。
アプリケーションパーティション アプリケーションで扱うデータをActive Directoryデータベースに格納できるようにするために用意された領域。一般的には、ドメインコントローラーにインストールされたDNS(Domain Name System)サーバーのデータベースが格納される。

物理データベース

ドメインコントローラーのデータベースは物理的には、NTDSというデータベースファイル(ntds.dit)になります。 「%SystemRoot%\NTDS」に配置されています。

グループポリシーオブジェクト(GPO)

略称としてグループポリシーとも呼ばれます。グループポリシーはドメインに参加するサーバー、クライアントの構成を管理できる強力なツールで、主にセキュリティ強化やガバナンスにおいて重要な機能かと思います。
グループポリシーを利用することで、ユーザーに設定させたくない機能を制限することができます。

参考:コントロールパネルの制限

スキーマ

スキーマとは、Active Directoryの「オブジェクトに関する定義情報」となるものです。スキーマでは、どの種類のオブジェクトがどのような属性を使用するのかを関連付けて管理しており、オブジェクトの作成時などにはスキーマの情報が参照されます。
スキーマには、「クラス」と「属性」という2つの情報が存在します。このうち、「クラス」がオブジェクトの種類を表すもので、ユーザー、コンピューター、グループなどの様々なクラスが存在します。一方、「属性」は各オブジェクトのプロパティの項目を表すもので、表示名、ログオン名、電話番号、電子メール、などの様々な属性が存在します。
スキーマは、adsiedit.msc コマンドより管理ができます。
近年では M365導入時にExchange Online用のスキーマを拡張するケースが多いかと思います。

引用:Microsoft Learn

Azureにおける構築上の留意点

  • データディスクのキャッシュの無効化
    ADDSのデータベース、ログ、SysvolフォルダはOSとは別のデータディスクに保存し、データディスクのホストキャッシュは無効にします。
  • 静的IPアドレスの割り当て
    既定では仮想マシンのIPアドレスは、動的に割り当てられます。ドメインコントローラーでは静的割り当てに変更しましょう。変更はAzure Portalから行います。

こちらのサイトが大変参考になります。
https://jpwinsup.github.io/blog/2023/10/23/ActiveDirectory/Authentication/design-consideration/

運用上の留意点

  • 割り当て解除しない
    Azure上の仮想マシンとしてドメインコントローラーを構築した場合は、割り当て解除をしないようにしましょう。割り当て解除を行うとActive Directory リポジトリの VM-GenerationID と invocationID の両方がリセットされます。 これにより、AD DS の相対識別子 (RID) プールが破棄され、sysvol フォルダーが権限なしとしてマークされます。 これによってドメイン コントローラーの再構成が必要になる場合もあります。
  • 2台同時に停止しない
    冗長化しているドメインコントローラーをOS停止する場合は、2台同時に停止する事は避けましょう。

バックアップとリストア

バックアップ

Azure Backupは、ADDSのバックアップをサポートしています。また、Windows Server Backupでシステム状態のバックアップを取得も有効です。バックアップ頻度は、廃棄の有効期間 (TSL)である180日を超えないようにします。これは、TLS よりも古いオブジェクトが "廃棄済み" となり、有効と見なされなくなるためです。
よくシステム変更時のみバックアップするような運用を行うケースもありますが、ADDSについては定期的な取得を実施しましょう。

ドメイン コントローラーが Azure VM の場合は、Azure VM バックアップを使用してサーバーをバックアップできます。
https://learn.microsoft.com/ja-jp/azure/backup/active-directory-backup-restore

リストア

想定される障害によってリストアの方法は異なりますが、同一ドメイン内の1台のドメインコントローラーの障害を想定します。

ゴミ箱機能

ゴミ箱機能は、WindowsServer2008から追加された機能で、ユーザーアカウントなどのオブジェクトを削除した場合でも、すぐには削除されず、180日(有効期限)保存されます。人為的なミスにより、誤ってユーザーアカウントを消してしまった。等の場合は「ゴミ箱」機能により容易に復旧が可能です。既定では有効になっていないので有効にすることをお勧めします。

権限のない復元

「Non Authoritative Restore」とも呼ばれます。Active Direcotryは前述のとおり相互に複製しあっています。「権限のない復元」を利用すると復元したドメインコントローラーの情報が他のドメインコントローラーの情報を複製によって上書きされないように復元されます。一般的なサーバー障害から復元する場合に利用されるモードといえます。

権限のある復元

「Authoritative Restore」とも呼ばれます。「権限のない復元」とは逆に復元したドメインコントローラーの情報で、他のドメインコントローラーの情報を上書きします。その為、誤操作による変更作業などから復旧する場合に利用されるモードといえます。

最新動向

最新のWindows Server 2025でActive Directoryがどのようにアップデートされているかは、こちらの動画で詳しく解説されておりますので、興味のある方は是非見てみて頂ければと思います。
Active DirectoryはWindows Server 2025でどう変わるのか!? /HCCJP(ハイブリッドクラウド研究会) 第52回勉強会

最後に

以上、Active Directoryについての基本的な機能を記載してみました。記載してみてActive Direcotryは十分成熟した技術なだけに技術要素はかなり多く、一つ一つが奥深いと感じました。最新のWindows Server 2025でもアップデートされており、企業ネットワークの基盤として今後もまだまだ廃れることはないかと思います。本記事はさわり程度の事しか書けていませんので、公式ドキュメント等を参考に知見を深めていかれることをお勧めします。クラウド移行という流れの中では、Microsoft Entora IDMicrosoft Entra Domain Services などと合わせてしっかりおさえておきたいですね。

[参考]

ヘッドウォータース

Discussion