仮想環境にADをインストールすれば、自由にActive Directoryドメイン・ネットワークを構築して実験できる。
前回は、Virtual PC 2007やVirtual Server 2005、Hyper-V仮想環境などにおける仮想ネットワークの種類について解説した。今回は、仮想環境上にActive Directoryドメインを構築する方法を解説する。
Windows 2000で初めてActive Directoryディレクトリ・サービスが導入されてから、今年で10年になる。ユーザーやグループ・アカウントなどを階層化して管理したり、クライアントを集中管理したりできるActive Directoryは、特に企業向けWindowsネットワークには必須の機能である。Exchange ServerやSharePoint Server、グループ・ポリシー機能など、Active Directoryが必須の製品やサービスなども少なくないので、Windowsシステム管理のためにはActive Directoryに対する理解が欠かせない。
サーバ・ソフトウェアやクライアント管理のテストなどのために、Active Directory環境を利用して評価や実験などを行いたいことがある。だが現在運用中のActive Directoryドメイン環境を利用するわけにはいかないだろう。実環境のActive Directoryを使ってクライアントやサービスなどをテストすると、Active DirectoryのデータベースやDNSなどに変更が加えられ、テスト用のエントリが登録されたり、データベースのスキーマが拡張されたりするほか、既存のサービスが利用できなくなってテスト用サーバに振り向けられたりするなど、さまざまな影響が発生する可能性があるからだ。
このような場合は、仮想マシン上に独立したネットワークを用意して、その上でActive Directoryドメインを導入して実験すればよい。これならば既存のActive Directory環境に影響を与えず、また(管理者による)制約なども受けずに、Active Directoryドメインを利用できる。また仮想環境ならば、自由に多数のクライアントを追加できるので、さまざまな実験が可能になる。今回は、最も基本的な構成のActive Directoryドメインを構築してみる。
Active Directoryドメインを構築する場合、作成するドメインやネットワークの構成などをあらかじめ慎重に立案しておく必要がある。特に階層構造のドメインを構築する場合は、そのインストール順序やDNSドメイン階層などをきちんと設計しておかないと、後で追加や変更などができなくなるからだ。具体的な注意点や設計ガイドについては以下の記事を参照していただきたい。
とはいえ、実験用として仮想環境上にActive Directoryドメインを構築するなら、あまり難しく考える必要はない。まずはドメイン・コントローラ(DC)が1台しかない、シングル・フォレスト/シングル・ドメインのActive Directory環境を構築してみよう。これならば仮想マシンが1台だけで済むので、インストールも簡単だし、環境の保存や復旧などもすぐ行える。Active Directoryを利用するアプリケーションをテストする場合は、このドメイン・コントローラ上にそのまま直接インストールして利用すればよい。復元ディスク(Virtual PC/Virtual Server)やスナップショット(Hyper-V)の機能を利用すれば、1つのインストール・イメージをベースにして、さまざまなActive Directoryサービスのテストができるはずだ。
シングル・ドメインのActive Directory環境を構築する場合に決めなければいけない項目としては以下のようなものがある。
項目 | 内容 |
---|---|
ネットワークの形態 | 完全に閉じたActive Directoryドメイン・ネットワークにするか、インターネットにもアクセスできるようにするかの選択 |
コンピュータ名 | Active Directoryのドメイン・コントローラ名。同時に複数のActive Directoryテスト環境を構築した場合に衝突しないようにするため、末尾に「1」「2」「3」……などいった番号を付加して区別するとよい |
DNSドメイン名(Active Directoryドメイン名) | example.jpやexample.co.jp、example.com、test.localなど、自由に使ってよいドメイン名を使用すること(独立したDNSサーバを使うなら、これはほかのActive Directoryドメインと重複していてもよい) |
NetBIOSドメイン名 | 従来のNTドメイン/ワークグループ・ネットワークと互換性を取るためのNetBIOSによるネットワーク識別名(英数字で最大15文字まで)。WINSサービスなどで利用される。DNSドメイン名の先頭部分に基づく名前を利用することが多い。可能ならば「EXMPALE2」「EXAMPLE3」……のように、ユニークな名前にしておくとよい。そうすれば複数のActive Directoryドメインが有効な場合でも、お互いのネットワークを区別できる |
IPアドレス | できる限り固定的なIPアドレスを割り当てておくのが望ましいが、DHCPによる自動取得でもよい。ただし後で別のコンピュータ(別のドメイン・コントローラやActive Directoryクライアント)をActive Directoryドメインに参加させるためには、相互に参照できるようにしておく必要がある |
サブネット・マスク | 「IPアドレス」を手動で設定した場合は、これも適切な値に設定しておくこと |
デフォルト・ゲートウェイ | 「IPアドレス」を手動で設定した場合は、これも適切な値に設定しておくこと |
DNSサーバ・アドレス | これは自動取得してはいけない。必ず上記の「IPアドレス」と同じものか、ローカル・ループバック・アドレスの「127.0.0.1」を手動で設定しておくこと(DHCPを利用する場合でも、DNS項目だけは上書きしておく) |
WINSサーバ・アドレス | DHCPを使ってWINSサーバのIPアドレスも配布している場合は、そのWINSサーバにこのドメイン・コントローラの持つNetBIOS名などの情報が書き込まれる可能性がある。そのためテスト用WINSサーバが用意できないなら、WINSサーバ・アドレスの欄はすべて手動で空欄にしておくこと |
Active Directory構築のための設定項目 |
以下、いくつか重要な項目について補足しておく。
■閉じたネットワークか開かれたネットワークか
テスト用Active Directoryドメインを、完全に閉じたネットワーク内に構築するか、それとも外部(インターネットなど)へアクセス可能なネットワーク上に構築するのかは、後々の運用にもかかわってくる重要な選択肢である。Active DirectoryはDNSと密接に結び付いているため、間違って現在運用中のDNSサーバ(例:社内DNSサーバやプロバイダのDNSサーバ)などに接続したりすると、テスト用Active DirectoryドメインのためのDNSエントリがそのDNSサーバ上に作成される可能性がある。実際にはDNSエントリの作成の権限がないためにエラーになるだろうが、Active Directoryの導入が失敗するだけでなく、既存のDNSサーバに対する不正なアクセスになってしまう可能性もある。
このような間違いを犯さないためには、外部と完全に閉じたネットワークの上に(仮想マシン作成時に「内部ネットワーク」を選ぶ)、Active Directoryドメインを構築するのがよい。だがこれでは、例えばマイクロソフトのサイトで配布されている最新のセキュリティ・パッチなどを適用することもできないし、インターネットをアクセスするようなテストも不可能である。
そのため可能ならば、インターネット・アクセスが可能なネットワーク上にActive Directoryを構築するのがよいだろう。ただし間違って既存のDNSサーバにアクセスしないように、慎重に作業を行おう(後述の「■DNSサーバは自己参照するように設定する」参照)。
■ドメイン名について
Active Directoryのドメイン名はDNSのドメイン名と同じなので、分かりやすいものを付ければよいのだが、一般的には例示用の「example.com」や「example.co.jp」、「example.jp」「example.local」などでよいだろう。自分の会社名と同じものなど(例えば「mycompany.co.jp」)、現実の社内DNSドメインと同じものは利用しない方がよい。DNSによる名前解決で面倒なことになる可能性があるからだ(実験環境と実環境のどちらのDNSドメインを利用するかで衝突や混乱が生じる可能性がある)。
■IPアドレスは固定かDHCPによる動的アドレスか
仮想コンピュータにIPアドレスを割り当てる場合、一般的にはDHCPによる自動割り当てを利用することが多いだろう。インストール直後のWindows OSは、デフォルトではDHCPによる自動割り当てを利用するようになっているので、仮想環境でそのまま起動するなら、DHCPを利用するのが一番手間がかからないからだ。
だがActive Directoryサービスを利用する場合は固定IPアドレスを利用している方が望ましい。Active Directoryドメインにクライアントを追加する場合にDHCPによる動的IPアドレスが利用されていると、ドメイン・コントローラを指定するのが難しくなるからだ。正確に言うと、クライアントPCのTCP/IPのプロパティにおいて、DNSサーバを指定する必要があるのだが、そのDNSサーバのIPアドレスが動的に変化すると、まずドメイン・コントローラのIPアドレスを手動で調査してから、その値をクライアントに設定するという二度手間が必要になる。
これを避けるためには、Active Directoryのドメイン・コントローラには固定IPアドレスを与えておくとよい。DNSの設定を間違えて、Active Directoryへアクセスできなくなるといったトラブルを避けることができる。
なお、Active Directoryのドメイン・コントローラ自体は動的IPアドレスであっても問題なく動作する。そのため、Active Directoryを導入するけれども、たった1台だけで利用するなら(クライアントを参加させるつもりがなければ)、DHCPによる動的IPアドレスを利用してもよいだろう(DHCPならばほかの仮想環境へ移動させてもそのまま利用できる)。
■DNSサーバは自己参照するように設定する
Active Directoryを利用する場合、必ずDNSサーバも必要になる。Active Directory用の特別なレコードの登録やセキュリティ設定が行われるので、通常はWindows Serverに付属のDNSサーバを利用すればよい。DNSサーバには複数のゾーン(DNSのドメイン)が登録できるので、マルチドメインであっても、DNSサーバはどこかに1台だけあればよい。今回はActive Directoryサービスと同時にインストールされるDNSサーバをそのまま利用する。
そして、このDNSサーバが必ず利用されるように、TCP/IPのプロパティでDNSサーバが自分自身を指すように設定しておく。「127.0.0.1」というローカル・ループバック・アドレスでもよいし、割り当てられているIPアドレスを調べて手動で設定してもよい。なお、このDNSサーバはデフォルトではいわゆる「フルサービス・リゾルバ」になっているので(Master of IP Network「ネームサーバの3つの働きとは」参照)、インターネットへのアクセスが許可されていれば、自分自身でインターネットに対する名前解決をすべて行うことが可能である。また社内ネットワークなどのDNSと連携させたければ(社内のDNSドメイン名の名前解決を行いたければ)、TIPS「DNSサーバでゾーンごとに異なるフォワーダを使う」のようにして、フォワーダを設定すればよい。
以上のような点を考慮し、今回は次のようなテスト用Active Directoryドメインを構築することにする。1台の仮想マシンを利用し、その上にActive DirectoryサービスとDNSサービスの両方をインストールして、単独でActive Directoryドメインのテストができる環境とする。これだけでActive Directoryの実験もできるし、例えばExchange Serverのテストがしたければ、この仮想マシン上にそのままインストールするなどすればよいだろう。
項目 | 設定例 |
---|---|
Windows Server OS | Windows Server 2008 Enterprise Edition x86 SP2 |
メモリ | Windows Server 2003なら512Mbytes、Windows Server 2008以降なら1Gbytes程度あると望ましい |
インストールするサービス | Active Directoryサービス、DNSサーバ |
ドメイン/フォレストの機能レベル | 「Windows Server 2008」レベル。機能レベルについてはTIPS「Active Directoryドメイン/フォレストの機能レベルとは?」参照 |
ネットワークの形態 | インターネットにもアクセス可能なネットワーク。「NATネットワーク」か「外部ネットワーク」を利用。ただしNATネットワークはほかの仮想マシンから隔離されているため、将来ほかの仮想マシンをActive Directoryドメインに参加させることはできない |
コンピュータ名 | Win2008EntDc01 |
DNSドメイン名(Active Directoryドメイン名) | example.co.jp |
NetBIOSドメイン名 | EXAMPLE |
IPアドレス | DHCPによる自動取得のまま |
サブネット・マスク | DHCPによる自動取得のまま |
デフォルト・ゲートウェイ | DHCPによる自動取得のまま |
DNSサーバ・アドレス | 127.0.0.1(ローカル・ループバック・アドレス) |
今回構築するActive Directoryドメイン環境 |
今回は、Windows Server 2008 Enterprise Edition x86のSP2が適用された仮想マシンを用意し、その上にActive Directoryドメインを構築してみる。Windows Server 2008 R2でもよいのだが、これはx64版しかないため、Virtual PC 2007 SP1やVirtual Server 2005 R2 SP1、Windows Virtual PC(Windows 7向けの仮想実行環境)では利用できない。そのため、x86版が利用できる最新のServer OSとして、Windows Server 2008を利用する。このOSにはStandardとEnterpriseの2つのエディションがあるが、機能制限のあるStandardエディションを利用する積極的な理由も特にないので、(今後の利用なども考えて)Enterpriseエディションを利用する。Windows Server 2008 R2の場合でも違いはないので、x64のゲストOSをサポートしているHyper-Vなどのユーザーなら、Windows Server 2008 R2 Enterprise Edition x64を利用するとよいだろう。Server OSのバージョンごとにActive Directoryの機能や「機能レベル」などが異なるが(TIPS「Active Directoryドメイン/フォレストの機能レベルとは?」、マイクロソフト「Active Directory (AD) TechCenter」などを参照)、インストール方法はほぼ同じである。
RTM版の日本語版Windows Server 2008(SP1適用済み)には、Active Directoryに関する不具合があり、Active Directoryの導入前にService Pack 2を適用しておく必要がある。詳細は次のリンク先を参照していただきたい。Windows Server 2003やWindows Server 2008 R2にはこの問題はない。
(評価版の)OSの入手やゲストOSのインストール方法などについては、連載 第1回の「2.ゲストOSのインストール」を参照していただきたい。なお、低速なコンピュータやハードウェア仮想支援機能のないCPUを利用している場合は、Windows Server 2003の方が軽くて快適にインストール/利用できるので、(手許にある場合は)Windows Server 2003を利用してもよいだろう。Windows Server 2003における構築方法については、TIPS「Active Directoryドメインを構築する(基本編)」も参照していただきたい。
Copyright© Digital Advantage Corp. All Rights Reserved.