解説 Windows Server 2012

Active Directory移行の指南書

国井傑(ソフィアネットワーク) 2013年04月23日 18時54分

  • このエントリーをはてなブックマークに追加

 これまでに使用してきた古いWindows Serverから新たにWindows Server 2012へと移行する場合、必ずといっていいほどActive Directoryの移行も伴う。Windows Server 2012の最新のActive Directoryが提供するさまざまなメリットをフルに活用するためにも、移行での失敗は避けたい。

 本稿では、以前のActive Directoryを最新のWindows Server 2012環境へ移行するためのポイントと具体的な方法を解説する。

Active Directoryの移行方法は3つ--どの方法を選択するか

 前版のWindows ServerからWindows Server 2012のActive Directoryへ移行する場合、大きく分けて3つの方法がある。

その1 既存のドメインコントローラをWindows Server 2012にアップグレード

 この方法は、既存のOS、ドメインコントローラを丸ごとWindows Server 2012にアップグレードする方法だ。ただし、失敗した場合には、既存のドメインコントローラが壊れてしまうリスクがある。加えて、Windows Server 2003などの32ビットOSからはWindows Server 2012(64ビットOS環境)にはアップグレードインストールできない。あまりお勧めできる方法ではない。

その2 既存のドメインに新しくWindows Server 2012のドメインコントローラを追加

 この方法は既存のドメイン環境をそのままに、ドメインコントローラだけを新しく入れ替える方法だ。既存のドメインに登録したユーザーなどの情報がそのまま引き継げるので、移行にかかるコストを抑えられるメリットがある。

その3 既存のドメインとは別に新しいドメインを作成し、ユーザー情報などを移行する

 これは「だれも知らないユーザーが作成されている」「意味もなくドメインがたくさんある」など、既存のドメイン環境に問題があるため、まったく新しいドメインを作成したい場合に採用する方法だ。

 異なるドメイン間でユーザー情報などを移行する場合には、専用のツールである「Active Directory移行ツール(Active Directory Migration Tool:ADMT)」がこれまでは使われてきた。残念ながら、本稿執筆時点ではWindows Server 2012用のADMTはまだ提供されていない。そのため、ユーザーやグループなどの情報は手動で移行しなければならない。

 以上のように、それぞれの方法にメリット、デメリットがあるが、現実的な選択肢となると移行方法のその2、またはその3になるといえる。そこで今回は、この移行方法2と3について、具体的なステップを解説する。

既存のドメインに新しくWindows Server 2012のドメインコントローラを追加する場合の移行

 既存のドメインに、新たにWindows Server 2012サーバをドメインコントローラとして追加する場合は、ドメインコントローラを追加した後、既存のドメインコントローラとの間でデータベースのレプリケーションを行い、ユーザー情報などの移行が完了した段階で、既存のドメインコントローラを削除する。

 ドメインコントローラを追加するときは、まず「サーバマネジャ」から「Active Directoryドメインサービス」の役割を追加する。その後、「Active Directoryドメインサービス構成ウィザード」を使い、既存のドメインにドメインコントローラを追加する(画面1)。なお、ウィザード内では、グローバルカタログの役割を割り当てることができるので、必ず役割を割り当てておく。

 ドメインコントローラを追加すると、ドメインコントローラ間のレプリケーションは自動的に行われるので、特別な操作や設定は不要だ。

 最終段階では既存のドメインコントローラを削除しなければならないが、削除する前に既存のドメインコントローラが持つ「単一マスタ」と呼ばれる役割をWindows Server 2012ドメインコントローラに移行しておかなければならない。「単一マスタ」の役割を移行するには、コマンドプロンプトから次のコマンドを実行すればよい。

ntdsutil
activate instance ntds
roles
connections
connect to server localhost
quit
transfer PDC
transfer RID master
transfer infrastructure master
transfer naming master
transfer schema master

 ここまでの操作が完了したら、あとは既存のドメインコントローラを削除するだけだ。既存のドメインコントローラ上で「dcpromo」コマンドを実行して、起動するウィザードの指示に従って削除すれば、移行は完了する。

 既存のドメインコントローラを削除したあと、フォレスト機能レベルを「Windows Server 2012」にすると、すべてのWindows Server 2012が持つActive Directoryの新機能が利用できるようになるので、併せて設定しておきたい。機能レベルの変更は「Active Directoryドメインと信頼関係」を利用して行う(画面2)。

既存のドメインとは別に新しいドメインを作成し、ユーザー情報などを移行する場合の移行

 既存のドメインを捨てて、Windows Server 2012で新しいドメインを構成する場合、一般的に既存のドメイン環境から次の情報を移行する。

  • ユーザーアカウント
  • グループアカウント
  • コンピュータアカウント

 このほかにもExchange ServerのようにサーバアプリケーションがActive Directoryに保存している情報などもあるが、これは取り出すことが難しい。そこで、今回は上記の3つのアカウントに絞って取り出す方法を紹介する。

ユーザーアカウントの移行

 ここでは、Active Directoryのユーザーアカウント情報をエクスポートする「csvde」コマンドを利用する方法を紹介する。「csvde」コマンドを利用すると、Active ディレクトリのユーザーアカウント情報をCSV(Comma Separated Values:カンマ区切り)形式でエクスポート/インポートできるので、ドメイン間で簡単にユーザーアカウント情報を移行できるほか、会社の人事情報をCSVファイルで持っていれば、その情報を基にユーザーを登録できるなどのメリットがある。

 実際にユーザーアカウントを移行する場合は、既存のドメインから「csvde」コマンドでユーザーアカウント情報をCSV形式にエクスポートして取り出しておこう。「csvde」コマンドの実行方法は、次のとおりだ。

csvde -f xxx.csv

 この操作によって作成される「xxx.csv」ファイルをExcelで開くと、次の画面のようになる。


※クリックすると拡大画像が見られます

 このファイルから、1行目と「objeclass」の列が「user」となっている行だけを残して不要な列も含めて、すべての行を削除する。ユーザーアカウント情報の移行に最低限必要な列だけを並べたものが、次の画面のようなファイルになる。


※クリックすると拡大画像が見られます

 最後に、「DN」列に記載されているドメイン名を新しいドメイン名に書き換える。例えば、「contoso.com」というドメイン名であれば、「dc=contoso,dc=com」のように記述する。Excelの置換機能を使えば、簡単にドメイン名を書き換えることができるだろう。

 ここまでできたら、今度は「csvde」コマンドを使って新しいドメインにインポートすればよい。実行方法は次のとおり。

csvde -i -f xxx.csv

 これでユーザーアカウントの移行は完了である。ここまでの一連の作業を行うときに注意したいのは、「Administrator」のような最初から用意されているアカウントや、実際には使われていない退職者のアカウントなども移行してしまわないように、移行するユーザーアカウント情報については細かく精査することだ。

 そのほか、ユーザーアカウントの保存先となるOU(組織単位)を新しいドメインで事前に作成しておくことも忘れないようにしたい。

グループ/コンピュータアカウントの移行

 グループアカウントやコンピュータアカウントの移行も、ユーザーアカウントの移行手順と同じように「csvde -f xxx.csv」コマンドを実行してファイルを生成し、ファイルを修正して新しいドメインにエクスポートすることで移行できる。

 しかし「既存のドメインとは別に新しいドメインを作成する」という方法を選択した時点で、グループアカウントの情報はそのまま移行して使えるような、きちんとしたルールで作られているとは考えにくい。そこで、筆者のお勧めは、現在の構成がどうであれ、新しくグループを作ってしまうという方法だ。

 一方、コンピュータアカウントもユーザーアカウントの移行手順と同様、「csvde -f xxx.csv」コマンドでアカウントの一覧をエクスポートし、エクスポートしたファイルをコンピュータ一覧だけになるように構成して、「csvde -i -f xxx.csv」コマンドでインポートすれば移行できる。

 しかし、コンピュータアカウントは単純にアカウントを作成するだけではなく、実際のクライアントコンピュータをドメイン参加させるという作業も行わなければならない。

 ここまでのところで、2つのドメインの移行方法について確認してきた。新しいドメインを用意し、既存のドメインからユーザーアカウントやグループアカウント、コンピュータアカウントを移行する方法については、現在のところ、正式な移行ツールが提供されていないため、手順は多少複雑になる。そこで発生するコストなども見越し、どちらの方法でWindows Server 2012のドメインに移行するべきか判断するとよいだろう。

コラム:ユーザーのパスワード設定

 「csvde」コマンドではパスワードの移行ができないうえ、新しく設定することもできない。そして、パスワードが設定されていないユーザーアカウントは、パスワードポリシーの制限により、アカウントを有効にすることができない。

 そのため、ユーザーを利用できるようにするためには、一時的でもいいから「csvde」コマンドによる移行後、パスワードを再設定する必要がある。

 以下のコマンドは「sale」というOUにいる「example.com」ドメインのユーザーに対し、パスワードを一律で「P@ssw0rd」に設定し、アカウントを有効に設定するものだ。

dsquery user ou=sales,dc=example,dc=com | dsmod -pwd P@ssw0rd -disabled no

 こうしてユーザーのパスワードを設定しておけば、ユーザーアカウントを使い始めることができるようになる。

ZDNet Japan 記事を毎朝メールでまとめ読み(登録無料)

  • このエントリーをはてなブックマークに追加

この記事を読んだ方に

連載

CIO
デジタル“失敗学”
IT部門の苦悩
Rethink Internet:インターネット再考
インシデントをもたらすヒューマンエラー
トランザクションの今昔物語
エリック松永のデジタルIQ道場
研究現場から見たAI
Fintechの正体
米ZDNet編集長Larryの独り言
大木豊成「仕事で使うアップルのトリセツ」
山本雅史「ハードから読み解くITトレンド放談」
田中克己「2020年のIT企業」
松岡功「一言もの申す」
松岡功「今週の明言」
内山悟志「IT部門はどこに向かうのか」
林 雅之「デジタル未来からの手紙」
谷川耕一「エンプラITならこれは知っとけ」
大河原克行「エンプラ徒然」
内製化とユーザー体験の関係
「プロジェクトマネジメント」の解き方
ITは「ひみつ道具」の夢を見る
セキュリティ
「企業セキュリティの歩き方」
「サイバーセキュリティ未来考」
「ネットワークセキュリティの要諦」
「セキュリティの論点」
スペシャル
ざっくりわかるSNSマーケティング入門
課題解決のためのUI/UX
誰もが開発者になる時代 ~業務システム開発の現場を行く~
「Windows 10」法人導入の手引き
ソフトウェア開発パラダイムの進化
エンタープライズトレンド
10の事情
座談会@ZDNet
Dr.津田のクラウドトップガン対談
Gartner Symposium
IBM World of Watson
de:code
Sapphire Now
VMworld
Microsoft WPC
Microsoft Connect()
HPE Discover
Oracle OpenWorld
Dell EMC World
AWS re:Invent
AWS Summit
PTC LiveWorx
吉田行男「より賢く活用するためのOSS最新動向」
古賀政純「Dockerがもたらすビジネス変革」
中国ビジネス四方山話
ベトナムでビジネス
米株式動向
日本株展望
企業決算
このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]