將 Amazon EC2 Linux 執行個體無縫加入共用 AWS 的 Managed Microsoft AD - AWS Directory Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

將 Amazon EC2 Linux 執行個體無縫加入共用 AWS 的 Managed Microsoft AD

在此程序中,您將順暢地將 Amazon EC2 Linux 執行個體加入共用的 AWS Managed Microsoft AD。若要這麼做,您將在想要啟動 EC2 Linux EC2執行個體的帳戶中的執行個體角色中建立 AWS Secrets Manager IAM讀取政策。這將在此程序Account 2中稱為 。此執行個體將使用從稱為 的其他帳戶共用的 AWS Managed Microsoft ADAccount 1

必要條件

在將 Amazon EC2 Linux 執行個體無縫加入共用 AWS 的 Managed Microsoft AD 之前,您將需要完成下列操作:

步驟 1. 在帳戶 2 中建立 LinuxEC2DomainJoin 角色

在此步驟中,您將使用 IAM 主控台來建立您在登入 時用來加入 EC2 Linux 執行個體的網域IAM角色Account 2

建立 LinuxEC2DomainJoin 角色
  1. 在 開啟IAM主控台https://console.aws.amazon.com/iam/

  2. 在左側導覽窗格中,在存取管理 下,選擇角色

  3. Roles (角色) 頁面上,選擇 Create role (建立角色)。

  4. Select type of trusted entity (選擇可信任執行個體類型) 下,選擇 AWS service ( 服務)。

  5. 使用案例 下,選擇 EC2,然後選擇下一步

  6. 對於篩選政策,請執行下列操作:

    1. 輸入 AmazonSSMManagedInstanceCore。然後勾選清單中該項目的核取方塊。

    2. 輸入 AmazonSSMDirectoryServiceAccess。然後勾選清單中該項目的核取方塊。

    3. 新增這些政策後,選取建立角色

      注意

      AmazonSSMDirectoryServiceAccess 提供將執行個體加入 的許可 Active Directory 由 管理 AWS Directory Service。 AmazonSSMManagedInstanceCore提供使用 所需的最低許可 AWS Systems Manager。如需使用這些許可建立角色的詳細資訊,以及您可以指派給IAM角色的其他許可和政策的相關資訊,請參閱 AWS Systems Manager 使用者指南 中的設定 Systems Manager 所需的執行個體許可

  7. 在角色名稱欄位中輸入新角色的名稱,例如您偏好的LinuxEC2DomainJoin另一個名稱

  8. (選用) 針對角色描述 ,輸入描述。

  9. (選用) 在步驟 3 下選擇新增標籤:新增標籤以新增標籤。 標籤鍵值對用於組織、追蹤或控制此角色的存取。

  10. 選擇建立角色

步驟 2. 建立跨帳戶資源存取權以共用 AWS Secrets Manager 秘密

下一節是無縫加入 EC2 Linux 執行個體與共用 AWS Managed Microsoft AD 所需的其他需求。這些要求包括建立資源政策,並將其連接至適當的服務和資源。

若要允許 帳戶中的使用者存取另一個帳戶中的 AWS Secrets Manager 秘密,您必須允許在資源政策和身分政策中存取 。這種類型的存取稱為跨帳戶資源存取

這種存取類型與授予與 Secrets Manager 秘密相同帳戶中身分的存取權不同。您還必須允許身分使用 AWS Key Management Service(KMS) 金鑰,以加密秘密。此許可是必要的,因為您無法使用 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值取代為您在步驟 1 中建立的 Account 2LinuxEC2DomainJoin角色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. 下列金鑰政策陳述式允許 ApplicationRole Account 2使用 中的KMS金鑰Account 1來解密 中的秘密Account 1。若要使用此陳述式,請將其新增至金鑰的KMS金鑰政策。如需詳細資訊,請參閱變更金鑰政策

    { { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::Account2:role/ApplicationRole" }, "Action": [ "kms:Decrypt", "kms:DescribeKey" ], "Resource": "*" }
為帳戶 2 中的身分建立身分政策
  1. 在 開啟IAM主控台https://console.aws.amazon.com/iam/

  2. 在左側導覽窗格中的存取管理 下,選取政策

  3. 選取 Create Policy (建立政策)。在政策編輯器 JSON 中選擇 。

  4. 下列政策允許 ApplicationRole 中的秘密Account 2存取Account 1,並使用 中的加密金鑰解密秘密值Account 1。您可以在 Secrets Manager 主控台的 Secret Details 頁面的 Secret 找到秘密ARN的 。 ARN或者,您可以呼叫 describe-secret 來識別秘密的 ARN。將資源取代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. 尋找並選取您在 Account 2中建立的角色Attach a resource policy to the secret in Account 1

  7. 新增許可 下,選取連接政策

  8. 在搜尋列中,尋找您在 中建立的政策Add a statement to the key policy for the KMS key in Account 1,然後選取方塊將政策新增至角色。然後選取新增許可

步驟 3。無縫加入您的 Linux 執行個體

您現在可以使用下列程序,將 EC2 Linux 執行個體無縫加入共用的 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執行個體的存取。

  6. 應用程式和作業系統映像 (Amazon Machine Image) 區段中,選擇AMI您要啟動的 Linux。

    注意

    AMI 使用的 必須具有 AWS Systems Manager (SSM Agent) 2.3.1644.0 版或更新版本。若要從 啟動執行個體AMI,檢查 中已安裝的SSM客服人員版本AMI,請參閱取得目前安裝的SSM客服人員版本 。如果您需要升級SSM代理程式,請參閱在 Linux 的EC2執行個體上安裝和設定SSM代理程式

    SSM 將 Linux 執行個體加入 時使用 aws:domainJoin 外掛程式 Active Directory 網域。外掛程式會將 Linux 執行個體的主機名稱變更為 格式 EC2AMAZ-XXXXXXX。 如需 的詳細資訊aws: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 定址的詳細資訊,請參閱 Amazon 使用者指南 中的 Amazon EC2執行個體 IP 定址 EC2

  12. 對於防火牆 (安全群組)設定,您可以使用預設設定或根據需要進行變更。

  13. 對於設定儲存設定,您可以使用預設設定或根據需要進行變更。

  14. 選取進階詳細資訊區段,從域加入目錄下拉式清單中選取域。

    注意

    選擇網域聯結目錄後,您可能會看到:

    選取網域聯結目錄時的錯誤訊息。您現有的SSM文件發生錯誤。

    如果EC2啟動精靈識別具有非預期屬性的現有SSM文件,則會發生此錯誤。您可以執行下列任一作業:

    • 如果您先前已編輯SSM文件且預期屬性,請選擇關閉並繼續以啟動EC2執行個體,而不會有任何變更。

    • 選取此處的刪除現有SSM文件連結以刪除SSM文件。這將允許建立具有正確屬性SSM的文件。啟動EC2執行個體時,系統會自動建立SSM文件。

  15. 針對IAM執行個體設定檔 ,選擇IAM您先前在先決條件區段 步驟 2:建立 LinuxEC2DomainJoin 角色 中建立的角色

  16. 選擇啟動執行個體

注意

如果您使用 SUSE Linux 執行無縫網域聯結,則需要重新啟動,才能進行身分驗證。若要SUSE從 Linux 終端機重新啟動,請輸入 sudo reboot