Active Directory

Active Directoryでできること

  1. 認証/承認の管理
  2. SSO
  3. デスクトップ環境の統一 (グループポリシーの利用)
  4. セキュリティ更新プログラムの配布 (WSUS)
  5. 監査記録 (監査機能の利用)
    • ファイルサーバー上のファイルに対するアクセス記録を取得できる
  6. AD BAによるライセンス管理

最近の注目の機能

  1. Workplace Join
    • 割と注目されている機能の1つ
    • ドメインに参加できないiOSなどのデバイスに対して、デバイス認証に基づいてリソースへのアクセスを提供する
      • Windows 7/8のProより下のエディションなども”参加”はできない
      • Windows 8は、”参加”できないが、Workplace Joinによって、”登録”はできる
    • AD FSに加え、DRS(Device Registration Service)が必要
  2. 多要素認証
    • AD FSで多要素認証が使えるようになった
  3. Dynamic Access Control
    • ユーザーなどのプロパティを元にアクセス権を自動設定する
  4. Direct Accessオフラインドメイン参加
    • Direct Access 環境がセットアップされていると、インターネット経由でドメインに参加できる

Active Directory のサービス

  • AD DS
    • Active Directory ドメインサービス
    • IDの集約・認証
  • AD LDS
    • LDAP機能を担当
  • AD CS
    • Active Directory 証明書サービス
    • 証明書の発行・管理
  • AD FS
    • Active Directory フェデレーションサービス
    • 異なる認証基盤での連携を行う
    • Azureとの連携を行うなど
  • AD RMS
    • Active Directory Rights Managementサービス
    • コンテンツの保護を行うサービス
    • Microsoft Officeの文書を暗号化できる
    • 利用には、RMS CAL ライセンスが必要
  • AD BA
    • Active Directory-Based Activation
    • Windows Server 2012以降と、Windows 8以降のライセンス認証をADで行う

Active Directoryの概念

基本概念

  • ディレクトリデータベース
    • スキーマ情報、構成情報、ドメイン情報を保持しているもの
    • ドメイン情報はドメインごとに異なるが、そのほかは、フォレスト単位
  • 信頼関係
    • 信頼関係にあるドメイン(もしくは、フォレスト)は、お互いの共有フォルダや、共有プリンタなどのリソースにアクセスできる
    • フォレスト内に複数のドメインがある場合に、認証を高速に行う必要がある場合、ショートカットの信頼関係を結ぶ
  • グローバルカタログ
    • フォレスト全体のディレクトリ全体における、目次のようなデータ
    • フォレスト内のドメインにあるすべてのオブジェクト名と、一部の属性を保持
    • グローバルカタログを保持するサーバーをグローバルカタログサーバーという。複数作成しておく
  • フォレスト
    • ADの最も大きな操作単位
    • グローバルカタログを共有する範囲
    • 複数のドメインツリーを含み、その中の各々のドメインは互いに信頼関係が成立
    • 管理者が異なる場合、スキーマを分ける場合などに分割される
  • ドメインツリー
    • ドメインの親子関係を表現した木構造
    • 子ドメイン名は親ドメイン名を継承する
    • ドメインツリーに参加するドメインは互いに信頼関係が成立
  • ドメイン
    • 同じディレクトリデータベースを共有する範囲
    • アカウント, ポリシーなどを管理する基本的な単位
    • ドメイン名には、DNS名やNetBIOS名を利用可能
    • 拠点が離れている場合や、異なる言語のドメインコントローラを利用する場合、アカウントが組織ごとに個別に管理されている場合に分割する
  • ドメインコントローラ
    • ディレクトリデータベースを持つサーバー
    • 各ドメインに必ず1台以上必要
    • RODC(Read Only Domain Controller)と呼ばれるものも作成できる

機能レベル

機能レベルは、OSのバージョンによって表現され、
機能レベルを利用するには、すべてのドメインコントローラをその機能が利用できるバージョンのOSに更新する必要がある。
機能レベルには、フォレストの機能レベルと、ドメインの機能レベルの2種類が存在する。

ディレクトリデータベースの複製

ドメイン内の複製では、スキーマ/構成/ドメイン情報をそのまま複製するが、
マルチドメインでの複製では、スキーマ/構成は複製し、ドメインについては、次ドメインのものを格納していくことになる。

データベース構成

種類 格納されている情報 複製範囲
スキーマ AD内のクラスやオブジェクトのスキーマ フォレスト
構成情報 フォレスト、ドメインの構成情報 フォレスト
ドメイン ドメイン内のオブジェクト情報 ドメイン
アプリケーション アプリケーションごとのADに格納したい情報 色々

サイト

サイトを分割しておくと、遅延の大きい拠点との通信を減らしたり良い感じにしてくれる(サイトリンク)。

その他のActive Directoryのコンポーネント

  • グローバルカタログサーバー

    • 複数のグローバルカタログサーバーを作成し、冗長性を確保する
  • 操作マスター (FSMO ロール)

    • デフォルトでは1台目のドメインコントローラが5つのロールを全て持つ

    • マルチドメイン構成では、インフラストラクチャマスターとグローバルカタログサーバーを共存できない

      役割 単位 機能
      スキーママスター フォレストに1つ スキーマを管理するマスター
      ドメイン名前付けマスター フォレストに1つ ドメインの追加・削除を行う際のマスター
      PDC エミュレータ ドメインに1つ Windows NT時代のOSのために必要。後述するNTPの時刻合わせでも重要
      RIDマスター ドメインに1つ RID(Relative ID)プールをドメインコントローラに割り当てる
      インフラストラクチャマスター ドメインに1つ ドメインのオブジェクトインスタンスの整合性を保証。自ドメインのオブジェクトから他ドメインのオブジェクトへの参照の更新など
  • DNSサーバー

    • Active DirectoryのDNSサーバーを利用することで、DNSサーバーのデータをディレクトリ複製に含められる
    • レコードのアクセス権の設定
    • SRVレコードの動的更新
  • NTPサーバー

    • PDCエミュレータの機能を持つドメインコントローラがNTPサーバーとして動作
    • 各ドメインコントローラは、PDCエミュレータの機能を持つドメインコントローラの時刻に同期
    • ドメインに参加したドメインコントローラの時刻に同期
    • つまり、特にPDCエミュレータとなるWindows Serverの時刻設定には注意しよう

Active Directory の運用

バックアップについて

バックアップの取得は、1日に1回など短い間隔で取得することが望ましい。
間隔を長くしたい場合に気をつけることとして、以下の2つがある
  1. Tombstoneに設定されている有効期間
    • Active DirectoryはこのTombstoneに設定されている有効期限より以前のバックアップデータからの復元を禁止している
    • デフォルトは180日
  2. コンピュータアカウントのパスワード更新期間
    • ドメインコントローラとドメインに参加しているメンバーはセキュアチャネルと呼ばれる通信チャネルを使っている。このセキュアチャネルを確立するためのパスワードは定期的に更新される。
    • ドメインコントローラ側では、常に最新のメンバーのパスワードのみを保持し、クライアント側では、1世代前までのパスワードも保持される
    • つまり、クライアント側が保持しているパスワードを利用するには、1世代前までのバックアップにしか戻せない(それより以前に戻してしまうと、ドメインに参加できなくなり、再参加するしかなくなる)
    • デフォルトでは、30日

オブジェクトの削除とTombstoneについて

ごみ箱機能が有効かどうかによって削除時の処理が異なる。
(ごみ箱機能は**一度有効にすると、無効にできない**)
  1. オブジェクトの削除処理を実行
  2. オブジェクトのisDeleted属性がTrueに変更
  3. Deleted Objectというコンテナに移動
  4. (ごみ箱機能が有効な場合) 属性情報は削除されないまま、所定日数(Deleted Object Lifetime)経過まで保持
    • デフォルトは Deleted Object Lifetime=180日
  5. オブジェクトの属性情報が削除。所定日数(Tombstone Lifetime/Recycled Object Lifetime)経過まで待機 (Tombstone状態)
    • デフォルトは 180日
  6. データベースから完全に削除される

復元について

復元に際して、対象のドメインコントローラをディレクトリサービス復元モードで起動する必要がある。
実際の復元は2つの方法があり、名前がややこしいが、使いわけを把握しておけば良い。
  1. 権限のない復元
    • USNを変更せずにそのまま復元する
    • 主にActive Directoryのデータベースを復元するために利用する
  2. 権限のある復元
    • USN += 100,000として復元する
    • 誤って削除したオブジェクトを復元する場合に利用する

USNについて

USNとは、オブジェクトのタイムスタンプのようなもの。
ドメインコントローラは、複製に際して、USNを比較し、相手のUSNが大きい場合に複製を行う。
例えば、削除時にもtombstone状態になる時に、USNが更新される。そのため、権限の”ない”復元を実行しても、削除状態のほうが最新という扱いをされてしまうので、意味がない。

ドメインコントローラのクローン/スナップショットについて

この部分については、Active Directory ドメイン サービス (AD DS) の仮想化 (レベル 100) の概要を参照すると良い。

VM-GeneratedIDをサポートしているやつだと、USNに不具合などは起きないらしい。
ただ、AD関係でも以下のものはクローン/スナップショットをサポートしていない。
  • DHCP サーバー
  • Active Directory証明書サービス
  • Active Directoryライトウェイトディレクトリサービス

他にも条件や設定があるため、あまりこの機能は頼らないほうが良い。