こんにちは。技術1課の多田です。
最近、インフルエンザに罹患している人が周りに増えてきました。
私も手洗い、うがいを徹底して健康には気をつけていきたいです。
さて、今回は「AWS Directory Service Microsoft AD(以下、MS AD)」について書いていきます。
AWS Directory Serviceの詳細は、こちら(※英語のドキュメントになります)をご覧下さい。
以下、記事の目次です。
- MS ADの構築
- 他ドメインとの信頼関係
- EC2 でADを構成した場合との比較
- まとめ
1.MS ADの構築
まずは、MS ADの特徴についてまとめます。
- フルマネージドのWindows Server 2012 R2で構成されたActive Directoryサービス
- ドメイン情報を使ってマネジメントコンソールにシングルサインオン(SSO)できる
- MS ADをデプロイすると、VPC内に冗長化構成で配置してくれる
上記の特徴があるMS ADを構築し、作ったドメインにEC2インスタンスを参加させてみます。
今回のMS ADの構成情報について書きます。
ドメイン名 | 管理者ユーザー | VPC | サブネット | |
msadtest.local | Admin | 10.0.0.0/16 | 10.0.5.0/24 10.0.6.0/24 |
マネージメントコンソールから「Directory Service」を選択して、「Get Started」をクリックします。
「Create Microsoft AD」を選択します。
アスタリスクが付いている項目が入力必須の項目ですが、今回は全て入力しました。
入力完了したら、「Next Step」をクリックします。
確認画面です。
問題なければ、「Create Microsoft AD」をクリックします。
おぉ、もう作成のプロセスに入りました。早いし、簡単です。
作成におよそ25~30分くらいかかるため、無事に作成されることを念じて待ちます。
Statusが「Active」になったので無事にADが作成されました。
この後、EC2インスタンスをドメイン参加させるため、DNS Addressの値を控えておきます。
ADの作成が完了しましたら、MS ADと同じサブネットにデプロイした、EC2をドメインに参加させます。
予め、ネットワーク設定で優先MS ADのDNSアドレスを入力します。
ドメイン名を入力して、OKをクリックします。
認証画面が表示されます。
MS ADを作成する時に設定した、Adminユーザーとパスワードを入力します。
ドメイン参加できました。
2.他ドメインとの信頼関係
続いて、他ドメインの信頼関係の追加を行ってみます。
先ほど、作成したMS ADドメインと同じサブネット内にEC2のADを配置します。
以下が構成イメージです。
■ MS AD
- ドメイン名:msadtest.local
- IP:10.0.5.80,10.0.6.80
- ユーザー(動作確認用):msadtest-user
■ EC2 on AD
- ドメイン名:testdomain.local
- IP:10.0.5.101,10.0.6.139
- ユーザー(動作確認用):testdomain-user
詳細な作業内容については、こちら(※英語のドキュメントになります)をご覧下さい。
信頼関係を作る上でポイントとなるのは、以下の3点です。
①Kerberosの事前認証を無効化していること
②Firewallの必要なポートを解放すること
③双方のドメイン名の名前解決ができること
①については、ADの管理者権限を持つユーザーにて以下のチェックが外れていることを確認してください。
②については、次のポートをセキュリティグループで解放してください。
プロトコル | ポート番号 | サービス |
TCP/UDP | 53 | DNS |
TCP/UDP | 88 | Kerveros |
TCP/UDP | 389 | LDAP |
TCP | 445 | SMB |
その他の要件で必要な場合、適宜他のポートも開放してください。
③については、双方のDNSの「条件付きフォワーダ」を設定します。
設定するのは、(1)ドメイン名、(2)名前解決する時に利用するDNSです。
設定後、ドメイン名を名前解決できるかを確認してみます。
まずは、EC2側です。
MS ADのドメイン名の名前解決ができています。
次に、MS AD側です。
先ほど、ドメインに参加したメンバーサーバーから確認します。
EC2のADドメイン名の名前解決ができています。
準備ができたので、実際に信頼関係を作っていきます。
最初にEC2側から作成します。
サーバーマネージャー > Active Directory ドメインと信頼関係 > 対象ドメインのプロパティを開きます。
信頼タブで「新しい信頼」をクリックするとウィザードが起動しますので、次へ。
MS ADのドメイン名を入力して、次へ。
MS ADはフォレスト間信頼をサポートしているため、「フォレストの信頼」を選択して、次へ。
双方のドメイン間で信頼関係を作りたいの、「双方向」を選択して、次へ。
「このドメインのみ」を選択して、次へ。
「フォレスト全体の認証」を選択して、次へ。
もう一方のドメインから信頼関係を作るときに必要なパスワードを入力します。
MS ADでの作業の時に使用するのでパスワードを控えておいてください。
確認画面で内容を確認後、次へ。
信頼関係の作成が完了しました。
次へ。
出力方向の信頼の確認です。
何もせず次へ。
入力方向の信頼の確認です。
こちらも何もせず次へ。
信頼作成のウィザードの完了画面が表示されるので、完了をクリックしてください。
作業前に存在しなかったMS ADのドメイン名が表示されているのが確認できます。
続いて、MS AD側です。こちらはマネジメントコンソールでの作業になります。
Trust Relationshipsタブから「Add Trust Relationship」をクリックします。
すると、次のダイアログが表示されるので他ドメインの情報を記入して「Create」をクリックします。
ドメイン名と認証のパスワードに誤りがなければ、Statusが「Verified」になります。
双方のドメイン間で信頼関係を作ることができたため、動作確認用ユーザーを検索できるかどうかを確認します。
まずは、EC2側からMS ADの動作確認用ユーザーを検索します。
MS ADの動作確認用ユーザーを検索できました。
次に、MS AD側からEC2の動作確認用ユーザーを検索します。
EC2の動作確認用ユーザーを検索できました。
以上で、双方のドメイン間の信頼関係を作ることができました。
3.EC2でADを構成した場合との比較
最後に、EC2でADを構成した場合とMS ADを利用した場合とで機能面、コスト面の観点で比較してみます。
3-1 機能面での比較
EC2のADで構成した場合と比較すると、MS ADの機能としては以下のものがあります。
- 標準で複数AZにActive Directory配置できるため、冗長性を確保できる
- モニタリングによって障害の発生したドメインコントローラーを自動的に検出して置換することが可能
- データレプリケーションと自動化された日次のスナップショットが設定されている
- AWS がすべてのパッチ適用、およびソフトウェアの更新を処理する
マネージドサービスのため、自前でADを構築・運用時にかかっていた作業負担を省いてくれます。
3-2 コスト面での比較
次に、コスト面ですが、以下ではそれぞれの課金対象を記しています。
MS AD | EC2 on AD | |
費用 | MS ADの料金 |
EC2インスタンスの料金 EBS利用料金
|
MS ADでの課金対象は、ADを利用した時間当たりの利用料金のみです。
詳しくは、こちらをご覧下さい。
4.まとめ
Directry ServiceのMicrosoft ADについて書いてみましたが、いかがでしたでしょうか?
自前で構築・運用するコストを考慮した時、負担が大きい場合MS ADを選択することは有効ですし、何よりフルマネージドなのは素敵ですね。