みなさん、こんにちは。今回は、ディレクトリ対応型ワークロードや AWS リソースとして、AWS 内のマネージド型 Active Directory (AD) を使用する AWS Directory Service について、説明します。

  1. AWS Directory Service とは
  2. オプションを選択しよう
  3. 前提条件
  4. トラブルシューティング
  5. クォータ

■ 1. AWS Directory Service とは

AWS Directory Service は、Microsoft Active Directory (AD) を AWS の他のマネージメントサービスと併用するための複数の方法を提供しています。
ディレクトリは “ユーザー” や “グループ” などの情報を保存します。ディレクトリの管理者は、これらのディレクトリを通じて各種リソースなどへのアクセスを管理します。
AWS Directory Service は、既存の Microsoft AD または LDAP 対応のアプリケーションをクラウド管理上で使用するユーザーに対して複数のディレクトリオプションを提供します。

■ 2. オプションを選択しよう

AWS Directory Service では、下記の複数のディレクトリオプションをご利用いただけます。

  1. AWS Managed Microsoft AD
    AWS Managed Microsoft AD は Windows ワークロードなどで使用でき、AWS クラウドで Office 365 などをサポートするスタンドアロンの Active Directory が必要な場合や Linux アプリケーションをサポートする LDAP ディレクトリでご利用いただけます。
  2. AD Connector
    AD Connector は互換性のあるディレクトリに接続するための簡単な方法を提供するプロキシサービスです。AD Connector を使用すると、ディレクトリを同期化する必要がなくなります。また、フェデレーションインフラストラクチャをホストするコストや複雑さからも解放されます。
  3. Simple AD
    Simple AD をクラウド内でスタンドアロンのディレクトリとして使用すると、基本的な AD 機能を必要とする Windows ワークロードをサポートし、互換性のある ADAWS アプリケーションを使用したり、LDAP サービスを必要とする Linux ワークロードをサポートすることができます。Simple AD は Samba4 を搭載した AWS Directory Service の Microsoft Active Directory 互換ディレクトリです。SimpleAD はユーザーアカウント、グループメンバーシップ、Linux ドメインまたは Windows ベースの EC2 インスタンスへの参加、Kerberos ベースの SSO などの基本的な ActiveDirectory 機能をサポートしています。
  4. Amazon Cognito
    カスタム登録フィールドを作成し、そのメタデータをユーザーディレクトリ内に格納する必要があるときにも Amazon Cognito を使用できます。このフルマネージドサービスは、数百万のユーザーをサポートするように拡張することができます。
    Amazon Cognito は、Amazon Cognito ユーザープールを使用してモバイルアプリまたはウェブアプリケーションにサインアップとサインインを追加するユーザーディレクトリです。

■ 3. 前提条件

1. AWS Managed Microsoft AD

・VPC の設定として、2 つ以上のサブネットに紐づける必要があります。各サブネットはそれぞれ異なるアベイラビリティーゾーンにある必要があります。
・VPC にはデフォルトのハードウェアテナンシーが必要です。
・AWS アドレス空間 “198.18.0.0/15” のアドレスを使用して、VPC 内でマネージド型の Microsoft AD を作成することはできません。

・AWS Directory Service は、Active Directory を使用したネットワークアドレス変換 (NAT) の使用はサポートしていません。NAT を使用するとレプリケーションエラーが発生する可能性があります。

2. AD Connector

・VPC の設定で、2 つ以上のサブネットに紐づける必要があります。各サブネットはそれぞれ異なるアベイラビリティーゾーンにある必要があります。
・VPC は、仮想プライベートネットワーク (VPN) 接続または AWS Direct Connect を通じて既存のネットワークに接続されている必要があります。
・VPC にはデフォルトのハードウェアテナンシーが必要です。

AD Connector で既存の Active Directory ドメインコントローラーにディレクトリリクエストをリダイレクトするには、既存のネットワークファイアウォールで VPC の両方のサブネットの CIDR に対して、下記のサブネット用のポートが開かれている必要があります。

・TCP/UDP 53 – DNS
・TCP/UDP 88 – Kerberos 認証
・TCP/UDP 389 – LDAP

これらは、AD Connector がディレクトリに接続する前に必要な最小限のポートです。固有の設定によっては、追加ポートが開かれていることが必要です。

3. Simple AD

・VPC の設定で、2 つ以上のサブネットに紐づける必要があります。
・VPC の設定で、2 つのドメインコントローラーを異なるアベイラビリティーゾーンに存在する異なるサブネットにインストールする必要があります。
・VPC にはデフォルトのハードウェアテナンシーが必要です。

■ 4. トラブルシューティング

AWS Managed Microsoft AD

[パスワードの回復]

ユーザーがパスワードを忘れたか、Simple AD または AWS 管理されている Microsoft AD ディレクトリでパスワードを再設定するには、下記の 3 点があります。
・Directory Service コンソールより “ユーザーパスワードのリセット” を実施する
・Windows PowerShell にて “Reset-DSUserPassword” を実施する
・AWS CLI にて “reset-user-password” を実施する

[DNSのトラブルシューティング]

AWS Managed Microsoft AD は、DNS イベントを監査できます。そのため、DNS における問題の特定とトラブルシューティングは比較的簡単です。たとえば、DNS レコードが欠落している場合は、DNS 監査イベントログを使用して、根本原因を特定し問題を修正することができます。EC2 コンソールを使用して DNS 監査イベントログを用いて、疑わしい IP アドレスからの要求を検出してブロックすることにより、セキュリティを向上させることもできます。

AD Connector

[ディレクトリのステータスが “Requested” 状態で前に進まない]

5分以上「要求済み」状態になっているディレクトリがある場合は、ディレクトリを削除して再作成することをご検討ください。

[EC2インスタンスのドメイン参加が機能しない]

EC2 インスタンスのドメイン参加にて AD Connector がアクティブな状態で停止した場合は AD Connector サービスアカウントのクレデンシャルが期限切れになっている可能性があります。クレデンシャルの有効期限が切れると AD Connector が Active Directory にコンピュータオブジェクトを作成できなくなる可能性があります。
この問題を解決するには、サービスアカウントのパスワードを下記の順序で更新して、パスワードが一致するようにします。

1) ActiveDirectory のサービスアカウントのパスワードを更新します
2) AWS DirectoryService の AD Connector でサービスアカウントのパスワードを更新します

AWS Directory Service でのみパスワードを更新しても、パスワードの変更は既存のオンプレミス Active Directory にプッシュされないため、上記の (1),(2) の順序で行うことが重要となります。

[一部のユーザーがディレクトリで認証されない]

新しいユーザーアカウントのデフォルト設定として変更せずに、ユーザーアカウントの Kerberos 事前認証を有効にしておく必要があります。

Simple AD

[パスワードの回復]

ユーザーがパスワードを忘れたか、Simple AD または AWS 管理されている Microsoft AD ディレクトリでパスワードを再設定するには、下記の 3 点があります。
・Directory Service コンソールより “ユーザーパスワードのリセット” を実施する
・Windows PowerShell にて “Reset-DSUserPassword” を実施する
・AWS CLI にて “reset-user-password” を実施する

[ドメインに参加しているインスタンスの DNS 名または IP アドレスを更新できません( DNS 動的更新)]

DNS 動的更新は、Simple AD ドメインではサポートされていません。代わりに、ドメインに参加しているインスタンスで DNS マネージャーを使用してディレクトリに接続することにより、直接変更を加えることができます。

[ディレクトリのステータスが “Requested” 状態で前に進みません]

5分以上「要求済み」状態になっているディレクトリがある場合は、ディレクトリを削除して再作成することをご検討ください。

■ 5. クォータ

各オプションのクォータは、リージョン毎に下記の Limit が設けられています。

1. AWS Managed Microsoft AD

項目制限数
AWS Managed Microsoft AD ディレクトリ10
手動スナップショットあたり AWS Managed Microsoft AD5
手動スナップショットの期間(日数)180
ディレクトリあたりのドメインコントローラーの最大数20
Standard Microsoft AD ごとの共有ドメイン数5
Enterprise Microsoft AD あたりの共有ドメイン数125
ディレクトリあたりの登録済み証明機関 (CA) 証明書の最大数5
合計の最大数AWS単一の AWS Managed Microsoft AD ディレクトリ5

2. AD Connector

項目 制限数
AD Connector ディレクトリ 10
ディレクトリあたりの登録済み証明機関 (CA) 証明書の最大数 5

3. Simple AD

項目制限数
Simple AD ディレクトリ 10
手動スナップショット (Simple ADあたり)5

■ 最後に

AWS Directory Service サービスは、オンプレミスで管理していた Active Directory を AWS 側で活用する際に有効です。
また、ディレクトリにおけるステータスが正常ではない場合は、上記のトラブルシューティング例、またはクォータの上限確認等を実施いただくことをおすすめいたします。

AWSをご利用いただくには、直接契約するより断然お得。
AWS利用料が5%割引、さらに日本円の請求書による支払いが可能です!