Amazon EC2 Linux インスタンスを共有 AWS Managed Microsoft AD にシームレスに結合する - AWS Directory Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon EC2 Linux インスタンスを共有 AWS Managed Microsoft AD にシームレスに結合する

この手順では、Amazon EC2 Linux インスタンスを共有 AWS Managed Microsoft AD にシームレスに結合します。これを行うには、EC2Linux EC2インスタンスを起動するアカウントのインスタンスロールに 読み取りポリシーを作成します AWS Secrets Manager IAM。この手順で、これは Account 2 と呼ばれます。このインスタンスは、Account 1 と呼ばれる他のアカウントから共有されている AWS Managed Microsoft AD を使用します。

前提条件

Amazon EC2 Linux インスタンスを共有 AWS Managed Microsoft AD にシームレスに結合する前に、以下を完了する必要があります。

ステップ 1. アカウント 2 で LinuxEC2DomainJoin ロールを作成する

このステップでは、 IAMコンソールを使用して、 にサインインしているときに EC2 Linux インスタンスをドメイン結合するために使用するIAMロールを作成しますAccount 2

LinuxEC2DomainJoin ロールを作成する
  1. https://console.aws.amazon.com/iam/ で IAM コンソールを開きます。

  2. 左のナビゲーションペインにある [アクセス管理] で、[ロール] を選択します。

  3. [ロール] ページで、[ロールの作成] を選択します。

  4. 信頼されたエンティティの種類を選択 の下で、AWS サービス ( ) を選択します。

  5. ユースケースで を選択しEC2次へ を選択します。

  6. [Filter policies] (フィルターポリシー) で、以下を実行します。

    1. AmazonSSMManagedInstanceCore と入力します。次に、リスト内のその項目のチェックボックスを選択します。

    2. AmazonSSMDirectoryServiceAccess と入力します。次に、リスト内のその項目のチェックボックスを選択します。

    3. これらのポリシーを追加した後、[ロールを作成] を選択します。

      注記

      AmazonSSMDirectoryServiceAccess は、インスタンスを に結合するアクセス許可を提供します。Active Directory によって管理されます AWS Directory Service。 AmazonSSMManagedInstanceCoreは、 を使用するために必要な最小限のアクセス許可を提供します AWS Systems Manager。これらのアクセス許可を持つロールの作成の詳細、およびIAMロールに割り当てることができるその他のアクセス許可とポリシーの詳細については、AWS Systems Manager 「 ユーザーガイド」の「Systems Manager に必要なインスタンスアクセス許可を設定する」を参照してください。

  7. LinuxEC2DomainJoin[Role name] (ロール名)欄 に、 適宜の別の名前など 新しいロールの名前を入力します。

  8. (選択可能) [ロールの説明] に、説明を入力します。

  9. (選択可能) [ステップ 3: タグの追加][新しいタグの追加] を選択して、タグを追加します。タグのキーと値のペアは、このロールのアクセスを整理、追跡、または制御するために使用されます。

  10. [ロールの作成] を選択します。

ステップ 2. シー AWS Secrets Manager クレットを共有するためのクロスアカウントリソースアクセスを作成する

次のセクションでは、EC2Linux インスタンスを共有 AWS Managed Microsoft AD にシームレスに結合するために満たす必要がある追加要件について説明します。これらの要件には、リソースポリシーの作成と、適切なサービスとリソースへのアタッチが含まれます。

アカウントのユーザーが別のアカウントの AWS Secrets Manager シークレットにアクセスできるようにするには、リソースポリシーと ID ポリシーの両方でアクセスを許可する必要があります。このタイプのアクセスは「クロスアカウントリソースアクセス」と呼ばれます。

このタイプのアクセスは、シークレットと同じアカウントのアイデンティティにアクセスを許可することとは異なります。また、シークレットが暗号化されている AWS Key Management Service (KMS) キーの使用を ID に許可する必要があります。このアクセス許可は、クロスアカウントアクセスに AWS マネージドキー (aws/secretsmanager) を使用できないために必要です。代わりに、作成したKMSキーでシークレットを暗号化し、キーポリシーをアタッチします。シークレットの暗号化キーを変更するには、「AWS Secrets Manager シークレットを変更する」を参照してください。

注記

使用するシークレットに応じて AWS Secrets Manager、 に関連する料金が発生します。現在の価格の詳細なリストについては、「AWS Secrets Manager 料金表」を参照してください。Secrets Manager AWS マネージドキー aws/secretsmanagerが作成する を使用して、シークレットを無料で暗号化できます。シークレットを暗号化するために独自のKMSキーを作成すると、 は現在の AWS KMSレートで AWS 課金します。詳細については、「AWS Key Management Service 料金」を参照してください。

次の手順では、リソースポリシーを作成して、ユーザーが EC2 Linux インスタンスを共有 AWS Managed Microsoft AD にシームレスに結合できるようにします。

アカウント 1 のシークレットにリソースポリシーをアタッチします。
  1. で Secrets Manager コンソールを開きますhttps://console.aws.amazon.com/secretsmanager/

  2. シークレットのリストから、前提条件 の間に作成した [シークレット] を選択します。

  3. [概要] タブの [シークレットの詳細ページ] で、[リソースアクセス許可] までスクロールダウンします。

  4. [アクセス許可を編集する] を選択します。

    1. ポリシーフィールドに次のポリシーを入力します。次のポリシーでは、 の LinuxEC2DomainJoin が のシークレットにアクセスAccount 2することを許可しますAccount 1。ARN 値をAccount 2ステップ 1 で作成した LinuxEC2DomainJoinロールARNの値に置き換えます。このポリシーを使用するには、「アクセス許可ポリシーを AWS Secrets Manager シークレットにアタッチする」を参照してください。

      { { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::Account2:role/LinuxEC2DomainJoin" }, "Action": "secretsmanager:GetSecretValue", "Resource": "*" } ] }
アカウント 1 のキーのKMSキーポリシーにステートメントを追加する
  1. で Secrets Manager コンソールを開きますhttps://console.aws.amazon.com/secretsmanager/

  2. 左のナビゲーションバーで、[カスタマーマネージドキー] を選択します。

  3. [カスタマーマネージドキー] ページで、作成したキーを選択します。

  4. [キーの詳細] ページで、[キーポリシー] に移動し、[編集] を選択します。

  5. 次のキーポリシーステートメントではAccount 2ApplicationRoleで KMSキーを使用して のシークレットを復号Account 1することを に許可しますAccount 1。このステートメントを使用するには、キーのKMSキーポリシーに追加します。詳細については、キーポリシーの変更を参照してください。

    { { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::Account2:role/ApplicationRole" }, "Action": [ "kms:Decrypt", "kms:DescribeKey" ], "Resource": "*" }
Account 2 のアイデンティティにアイデンティティポリシーを作成する
  1. https://console.aws.amazon.com/iam/ で IAM コンソールを開きます。

  2. 左のナビゲーションペインにある [アクセス管理] で、[ポリシー] を選択します。

  3. [ポリシーの作成] を選択します。ポリシーエディタJSONで を選択します。

  4. 次のポリシーにより、Account 2ApplicationRoleAccount 1 のシークレットにアクセスし、同じく Account 1 にある暗号化キーを使用してシークレットの値を復号化できるようになります。シークレットARNの は、シークレットの詳細ページの Secrets Manager ARNコンソールにあります。または、describe-secret を呼び出して、シークレットの を識別することもできますARN。Resource をシークレットの Resource ARNと ARNに置き換えARNますAccount 1。このポリシーを使用するには、「 AWS Secrets Manager シークレットにアクセス許可ポリシーをアタッチする」を参照してください。

    { { "Version" : "2012-10-17", "Statement" : [ { "Effect": "Allow", "Action": "secretsmanager:GetSecretValue", "Resource": "SecretARN" }, { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:Describekey" ], "Resource": "arn:aws:kms:Region:Account1:key/Your_Encryption_Key" } ] }
  5. [次へ] を選択し、[変更の保存] を選択します。

  6. Attach a resource policy to the secret in Account 1Account 2 で作成したロールを検索して選択します。

  7. [アクセス許可を追加する] の下で、[ポリシーを追加する] を選択します。

  8. 検索バーで、Add a statement to the key policy for the KMS key in Account 1 で作成したポリシーを検索し、チェックボックスを選択してポリシーをロールに追加します。[アクセス許可を追加する] を選択します。

ステップ 3. Linux インスタンスをシームレスに結合する

次の手順を使用して、EC2Linux インスタンスを共有 AWS Managed Microsoft AD にシームレスに結合できるようになりました。

Linux インスタンスをシームレスに結合するには
  1. にサインイン AWS Management Console し、 で Amazon EC2コンソールを開きますhttps://console.aws.amazon.com/ec2/

  2. ナビゲーションバーのリージョンセレクターから、既存のディレクトリ AWS リージョン と同じ を選択します。

  3. EC2 ダッシュボードインスタンスの起動セクションで、インスタンスの起動を選択します。

  4. インスタンスの起動ページの「名前とタグ」セクションで、Linux EC2インスタンスに使用する名前を入力します。

  5. (オプション) 追加タグを選択して、このEC2インスタンスのアクセスを整理、追跡、または制御する 1 つ以上のタグキーと値のペアを追加します。

  6. アプリケーションと OS イメージ (Amazon マシンイメージ) セクションで、起動AMIする Linux を選択します。

    注記

    AMI 使用する には AWS Systems Manager 、(SSM エージェント) バージョン 2.3.1644.0 以降が必要です。その からインスタンスを起動AMIして にインストールされている SSM エージェントのバージョンを確認するにはAMI、「現在インストールされている SSM エージェントバージョンの取得」を参照してください。SSM エージェントをアップグレードする必要がある場合は、「Linux 用 EC2インスタンスでの SSM エージェントのインストールと設定」を参照してください。

    SSM は Linux インスタンスを に結合するときにaws:domainJoinプラグインを使用します。Active Directory ドメイン。プラグインは Linux インスタンスのホスト名を EC2AMAZ- の形式に変更しますXXXXXXXaws:domainJoinの詳細については、[AWS Systems Manager ユーザーガイド]の「AWS Systems Manager コマンド・ドキュメント・プラグイン・リファレンス」を参照してください。

  7. [インスタンスタイプ] セクションで、[インスタンスタイプ] ドロップダウンリストから使用するインスタンスタイプを選択します。

  8. [キーペア (ログイン)] セクションで、新しいキーペアを作成するか、既存のキーペアから選択します。新しいキーペアを作成するには、[新しいキーペアの作成] を選択します。キーペアの名前を入力し、[キーペアタイプ] と [プライベートキーファイル形式] のオプションを選択します。Open で使用できる形式でプライベートキーを保存するにはSSH、.pem を選択します。Pu で使用できる形式でプライベートキーを保存するにはTTY、.ppk を選択します。[キーペアの作成] を選択します。ブラウザによって秘密キーファイルが自動的にダウンロードされます。ダウンロードしたプライベートキーのファイルを安全な場所に保存します。

    重要

    プライベートキーのファイルを保存できるのは、このタイミングだけです。

  9. [インスタンスを起動する] ページの [ネットワーク設定] セクションで、[編集] を選択します。ディレクトリVPCが作成された を VPC - 必須のドロップダウンリストから選択します。

  10. サブネットドロップダウンリストから、 内のパブリックサブネットのいずれかVPCを選択します。選択するサブネットで、すべての外部トラフィックがインターネットゲートウェイにルーティングされるように選択する必要があります。そうでない場合は、インスタンスにリモート接続できません。

    インターネットゲートウェイに接続する方法の詳細については、「Amazon VPC ユーザーガイド」の「インターネットゲートウェイを使用してインターネットに接続する」を参照してください。

  11. [自動割り当てパブリック IP] で、[有効化] を選択します。

    パブリック IP アドレス指定とプライベート IP アドレス指定の詳細については、「Amazon ユーザーガイド」の「Amazon EC2インスタンス IP アドレス指定」を参照してください。 EC2

  12. [ファイアウォール (セキュリティグループ)] 設定にはデフォルト設定を使用するか、必要に応じて変更を加えることができます。

  13. [ストレージの設定] 設定にはデフォルト設定を使用するか、必要に応じて変更を加えることができます。

  14. [高度な詳細] セクションを選択し、[ドメイン結合ディレクトリ] ドロップダウンリストからドメインを選択します。

    注記

    ドメイン結合ディレクトリを選択すると、次のようになります:

    ドメイン結合ディレクトリを選択したときのエラーメッセージ。既存のSSMドキュメントにエラーがあります。

    このエラーは、EC2起動ウィザードが予期しないプロパティを持つ既存のSSMドキュメントを特定した場合に発生します。次のいずれかを試すことができます。

    • 以前にSSMドキュメントを編集し、プロパティが想定されている場合は、閉じるを選択して、変更なしでEC2インスタンスを起動します。

    • 既存のSSMドキュメントを削除するリンクを選択して、SSMドキュメントを削除します。これにより、正しいプロパティを持つ SSMドキュメントを作成できます。SSM ドキュメントは、EC2インスタンスの起動時に自動的に作成されます。

  15. IAM インスタンスプロファイルでは、前提条件セクションのステップ 2: Linux IAMロールを作成するで以前に作成したロールを選択します。 EC2DomainJoin

  16. Launch instance (インスタンスの起動) を選択します。

注記

SUSE Linux でシームレスなドメイン結合を実行する場合は、認証が機能する前に再起動が必要です。Linux ターミナルSUSEから再起動するには、sudo reboot と入力します。