為什麼我無法將我的 EC2 Windows 執行個體無縫加入 AWS 受管 Microsoft AD Directory?

3 分的閱讀內容
0

我無法為 Microsoft Active Directory 將我的 Amazon Elastic Compute Cloud (Amazon EC2) Windows 執行個體無縫加入 AWS Directory Service。

解決方法

若要對為何無法將 EC2 Windows 執行個體無縫加入 AWS 受管 Microsoft AD 目錄進行疑難排解,請完成下列步驟。

注意: 適用於 AWS Systems Manager 的 Amazon Virtual Private Cloud (Amazon VPC) 介面端點對將 Windows Server 執行個體加入網域的請求進行了限制。如需詳細資訊,請參閱 VPC 端點限制和局限

確認您的作業系統和機器類型

確認 AWS Systems Manager 支援您的作業系統 (OS) 和機器類型

驗證您的 IAM 角色政策

若要驗證您的 AWS Identity and Access Management (IAM) 角色已連接正確的受管政策,請完成下列步驟:

  1. 開啟 IAM 主控台
  2. 在導覽窗格中,選擇角色
  3. 選擇與執行個體關聯的 IAM 角色的角色名稱,以開啟摘要頁面。
  4. 許可標籤上,對於許可政策,確認已連接 AmazonSSMDirectoryServiceAccessAmazonSSMManagedInstanceCore 政策。
  5. 如果遺失許可政策,請選擇新增許可連接政策。搜尋政策名稱、從搜尋結果中選擇正確政策,然後選擇新增許可

確認所需的連接埠已開啟

確認目錄安全群組中的連接埠 53、88 和 389 已開啟。若要尋找並檢閱目錄的安全群組,請完成下列步驟:

  1. 開啟 Amazon EC2 主控台
  2. 在導覽窗格中,選擇安全群組
  3. 安全群組名稱排序安全群組清單以尋找 directoryid_controllers,其中 directoryid 是您的目錄 ID。例如,d-1234567891_controllers
  4. 選擇目錄控制器的安全群組的安全群組 ID
  5. 開啟傳入規則傳出規則標籤以檢閱連接埠資訊。

**注意:**使用 Microsoft 的 PortQry 命令列工具來測試網域與所需連接埠的連線。

確認您的執行個體上的 DNS 伺服器指向目錄的 DNS 伺服器

若要在執行個體上顯示網路介面卡組態,請執行下列 AWS Command Line Interface (AWS CLI) 命令:

注意: 如果您在執行 AWS CLI 命令時收到錯誤訊息,請確認您使用的是最新版本的 AWS CLI

ipconfig /all

若要尋找目錄的 DNS 伺服器,請完成下列步驟:

  1. 開啟目錄服務主控台
  2. 在導覽窗格中,選擇目錄
  3. 選擇目錄 ID 以開啟目錄詳細資訊頁面。
  4. 請參閱 DNS 地址。

確認您可以從執行個體解析網域名稱

若要確認您可以從執行個體解析網域名稱,請執行下列其中一個命令:

**注意:**在您的命令中,將 domainname 取代為您的網域名稱。

使用 PowerShell:

Resolve-DnsName domainname

使用命令提示字元:

nslookup domainname

驗證 DNS 伺服器組態

若要確認您已正確設定執行個體的 DNS 伺服器,以及執行個體是否可連線至 DNS 伺服器,請執行下列 Nltest Window 的命令:

注意: 在您的命令中,將 domainname 取代為 DNS 名稱,而不是 NetBIOS 名稱。例如,如果您的網域是 example.com,那麼 DNS 名稱就是 example.com,而 NetBIOS 名稱就是 example。

nltest /dsgetdc:domainname /force

確認執行個體是受管執行個體

若要確認您的執行個體是受管執行個體,請完成下列步驟:

  1. 開啟 Systems Manager 主控台
  2. 在導覽窗格中,選擇 Fleet Manager
  3. Fleet Manager 頁面上,選擇受管節點標籤。
  4. 確認執行個體已列出且處於線上狀態。

確認執行個體具有狀態管理員關聯

若要確認 awsconfig_Domain_directoryid_domainname 文件具有為執行個體建立的狀態管理員關聯,請完成下列步驟:

注意: 在文件名稱中,directoryid 是您的目錄 ID,而 domainname 是您的網域名稱。

  1. 開啟 Systems Manager 主控台
  2. 在導覽窗格中,選擇狀態管理員
  3. 在搜尋列中,選擇執行個體 ID等於,然後輸入執行個體 ID。
  4. 選取關聯 ID。
  5. 確認狀態成功,然後選擇執行歷史記錄以確認關聯執行。
  6. 如果狀態失敗,請依次選擇執行 ID輸出以檢閱輸出詳細資訊並識別問題的原因。
  7. 如果狀態擱置中,請確認您已遵循所有先前的疑難排解步驟。然後,檢閱 EC2 執行個體上的日誌,查看任何錯誤訊息,以識別問題的原因。如需指示,請參閱檢閱日誌以尋找錯誤訊息一節。

確認您可以手動將執行個體加入網域

確認您的帳戶具有將電腦物件新增至網域的所需許可。如需詳細資訊,請參閱委派 AWS 受管 Microsoft AD 的目錄加入權限

注意: 若要建立新的 EC2 Windows 執行個體,請使用 Microsoft 工具 Sysprep 建立標準化 Amazon Machine Image (AMI)

確認成功無縫加入網域

若要確認疑難排解步驟已解決您的問題,請嘗試重新加入網域:

  1. 開啟 Systems Manager 主控台
  2. 在導覽窗格中,選擇狀態管理員
  3. 選取您建立以加入網域的關聯,然後選擇立即套用關聯
  4. 確認狀態成功

檢閱日誌以尋找錯誤訊息

如果您仍然無法加入網域,請檢閱執行個體上的下列日誌以尋找錯誤訊息。

使用 SSM Agent 日誌:

若要查看 AWS Systems Manager Agent (SSM Agent) 日誌,請移至 %PROGRAMDATA%\Amazon\SSM\Logs\。

使用 Netsetup.log 文件:

若要開啟日誌檔案,請在命令提示字元中執行下列命令:

%windir%\debug\netsetup.log

NetSetup.log 輸出中每個連接埠的預期錯誤代碼和行為

TCP 88 – Kerberos 身分驗證:

NetUseAdd to \\serverDC1.example.com\IPC$ returned 64
NetpJoinDomainOnDs: status of connecting to dc '\\serverDC1.example.com':0x40
NetpJoinDomainOnDs: Function exits with status of: 0x40
NetpResetIDNEncoding: DnsDisableIdnEncoding(RESETALL) on 'example.com' returned 0x0
NetpJoinDomainOnDs: NetpResetIDNEncoding on 'example.com': 0x0
NetpDoDomainJoin: status: 0x40

TCP 389 – LDAP:

NetpLdapBind: ldap_bind failed on serverDC1.example.com: 81: Server Down
NetpJoinCreatePackagePart: status:0x3a.
NetpJoinDomainOnDs: Function exits with status of: 0x3a
NetpJoinDomainOnDs: status of disconnecting from '\\serverDC1.example.com': 0x0
NetpResetIDNEncoding: DnsDisableIdnEncoding(RESETALL) on 'example.com' returned 0x0
NetpJoinDomainOnDs: NetpResetIDNEncoding on 'example.com': 0x0
NetpDoDomainJoin: status: 0x3a

UDP 389 – LDAP:

NetpCheckDomainNameIsValid [ Exists ] for 'example.com' returned 0x54b
NetpJoinDomainOnDs: Domain name is invalid,
NetpValidateName returned: 0x54b
NetpJoinDomainOnDs: Function exits with status of: 0x54b
NetpJoinDomainOnDs: NetpResetIDNEncoding on '(null)': 0x0
NetpDoDomainJoin: status: 0x54b

UDP 53 – DNS:

不允許 UDP DNS 流量時,網域加入工作流程不會在 NetSetup.log 檔案中建立任何輸出。若要測試 DNS 伺服器,請執行下列 PowerShell 命令:

**注意:**在您的命令中,將 YourIPAddress 取代為您的 DNS 服務器的 IP 地址。

Test-DnsServer -IPAddress YourIPAddress

如需 NetSetup.log 錯誤代碼的相關資訊,請參閱 Microsoft 網站上的如何對當您將 Windows 電腦加入網域時發生的錯誤進行疑難排解

使用事件檢視器日誌:

  1. 在 Windows 工作列上,選擇搜尋,輸入「事件檢視器」,然後選擇事件檢視器以開啟該工具。
  2. 在導覽窗格中,展開 Windows 日誌,然後選擇系統
  3. 檢閱日期和時間資料欄,以識別加入網域操作期間發生的事件。

相關資訊

將 EC2 執行個體加入您的 AWS 受管 Microsoft AD 目錄

AWS 官方
AWS 官方已更新 10 個月前