開始使用 Managed Active Directory

1. 總覽

Managed Active Directory 是在 Google Cloud 上託管的高可用性 Microsoft Active Directory 網域即服務。

在本教學課程中,您將設定新的受管理 Active Directory、建立新的 Windows VM,並將其加入新網域。您會瞭解如何使用熟悉的管理工具設定網路、安全性及管理網域。

課程內容

  • 如何在 Google Cloud 中建立受管理 Active Directory
  • 如何將 Windows VM 加入網域
  • 如何管理 Managed Active Directory 中的使用者和電腦

事前準備:

您會如何使用本教學課程?

僅閱讀 閱讀並完成練習

你對 Google Cloud Platform 的使用體驗滿意嗎?

新手 中級 熟練

2. 設定和需求條件

自修實驗室環境設定

  1. 登入 Cloud 控制台,建立新專案或重複使用現有專案。(如果沒有 Gmail 或 G Suite 帳戶,請先建立帳戶)。

dMbN6g9RawQj_VXCSYpdYncY-DbaRzr2GbnwoV7jFf1u3avxJtmGPmKpMYgiaMH-qu80a_NJ9p2IIXFppYk8x3wyymZXavjglNLJJhuXieCem56H30hwXtd8PvXGpXJO9gEUDu3cZw

ci9Oe6PgnbNuSYlMyvbXF1JdQyiHoEgnhl4PlV_MFagm2ppzhueRkqX4eLjJllZco_2zCp0V0bpTupUSKji9KkQyWqj11pqit1K1faS1V6aFxLGQdkuzGp4rsQTan7F01iePL5DtqQ

8-tA_Lheyo8SscAVKrGii2coplQp2_D1Iosb2ViABY0UUO1A8cimXUu6Wf1R9zJIRExL5OB2j946aIiFtyKTzxDcNnuznmR45vZ2HMoK3o67jxuoUJCAnqvEX6NgPGFjCVNgASc-lg

請記住專案 ID,這是所有 Google Cloud 專案中不重複的名稱 (上述名稱已遭占用,因此不適用於您,抱歉!)。本程式碼研究室稍後會將其稱為 PROJECT_ID

  1. 接著,您必須在 Cloud 控制台中啟用帳單,才能使用 Google Cloud 資源。

完成本程式碼研究室的費用應該不高,甚至完全免費。請務必按照「清除」部分的指示操作,瞭解如何停用資源,避免在本教學課程結束後繼續產生帳單費用。Google Cloud 新使用者可參加價值$300 美元的免費試用計畫。

啟動 Cloud Shell

雖然您可以透過筆電遠端操作 Google Cloud,但在本程式碼研究室中,您會使用 Google Cloud Shell,這是 Google Cloud 中執行的指令列環境。

啟用 Cloud Shell

  1. 在 Cloud 控制台,點選「啟用 Cloud Shell」 圖示 H7JlbhKGHITmsxhQIcLwoe5HXZMhDlYue4K-SPszMxUxDjIeWfOHBfxDHYpmLQTzUmQ7Xx8o6OJUlANnQF0iBuUyfp1RzVad_4nCa0Zz5LtwBlUZFXFCWFrmrWZLqg1MkZz2LdgUDQ

zlNW0HehB_AFW1qZ4AyebSQUdWm95n7TbnOr7UVm3j9dFcg6oWApJRlC0jnU1Mvb-IQp-trP1Px8xKNwt6o3pP6fyih947sEhOFI4IRF0W7WZk6hFqZDUGXQQXrw21GuMm2ecHrbzQ

如果您是首次啟動 Cloud Shell,系統會顯示中繼畫面 (摺疊式螢幕下方),說明這個指令列環境。點選「繼續」後,這則訊息日後就不會再出現。以下是這個初次畫面的樣子:

kEPbNAo_w5C_pi9QvhFwWwky1cX8hr_xEMGWySNIoMCdi-Djx9AQRqWn-__DmEpC7vKgUtl-feTcv-wBxJ8NwzzAp7mY65-fi2LJo4twUoewT1SUjd6Y3h81RG3rKIkqhoVlFR-G7w

佈建並連至 Cloud Shell 預計只需要幾分鐘。

pTv5mEKzWMWp5VBrg2eGcuRPv9dLInPToS-mohlrqDASyYGWnZ_SwE-MzOWHe76ZdCSmw0kgWogSJv27lrQE8pvA5OD6P1I47nz8vrAdK7yR1NseZKJvcxAZrPb8wRxoqyTpD-gbhA

這部虛擬機器搭載各種您需要的開發工具,並提供永久的 5GB 主目錄,而且可在 Google Cloud 運作,大幅提升網路效能並強化驗證功能。本程式碼研究室幾乎所有工作都可在瀏覽器或 Chromebook 上完成。

連線至 Cloud Shell 後,您應會發現自己通過驗證,且專案已設為您的專案 ID。

  1. 在 Cloud Shell 中執行下列指令,確認您已通過驗證:
gcloud auth list

指令輸出

 Credentialed Accounts
ACTIVE  ACCOUNT
*       <my_account>@<my_domain.com>

To set the active account, run:
    $ gcloud config set account `ACCOUNT`
gcloud config list project

指令輸出

[core]
project = <PROJECT_ID>

如未設定,請輸入下列指令手動設定專案:

gcloud config set project <PROJECT_ID>

指令輸出

Updated property [core/project].

3. Initialize

初始化的 GCP 專案會用於代管所有已加入網域的 Windows VM 和受管理 Active Directory 之間的虛擬私有雲網路。

我們會設定幾個變數,方便稍後編寫指令碼。

  • 決定網域名稱 (例如:ad.yourcompany.com)
  • 決定要在哪個區域為代管網域建立網域控制站
  • 決定 VM 名稱、防火牆規則和網路名稱。

目前支援的地區如下:

  1. 「us-west1」
  2. 「us-west2」
  3. 「us-central1」
  4. 「us-east1」
  5. 「us-east4」
  6. 「europe-north1」
  7. 「europe-west1」
  8. 「europe-west4」
  9. 「asia-east1」
  10. 「asia-southeast1」

設定變數

如果是在 Linux 上執行,請輸入:

$ PROJECT_ID="YOUR_PROJECT_ID"
$ VPC="adtutorialvpc"
$ FIREWALL_VPC_RULE="adtutorialvpcrule"
$ REGION="us-west1"
$ ZONE="us-west1-a"
$ DOMAIN_NAME="ad.tutorial"
$ VM_NAME="tutorial1"

如果是在 Windows 上執行,請在 Powershell 終端機中輸入:

PS> $PROJECT_ID=YOUR_PROJECT_ID
PS> $VPC=adtutorialvpc
PS> $FIREWALL_VPC_RULE=adtutorialvpcrule
PS> $REGION=us-west1
PS> $ZONE=us-west1-a
PS> $DOMAIN_NAME=ad.tutorial
PS> $VM_NAME=tutorial1

設定目前的專案 ID,這樣後續所有作業都會在正確的雲端專案環境中進行:

$ gcloud config set project $PROJECT_ID

啟用 Cloud API

如要啟用 Managed Active Directory,我們需要啟用 DNS 和 Managed Identities 這兩項 API。

啟用 DNS API:

$ gcloud services enable dns.googleapis.com

啟用代管的身分識別 API:

$ gcloud services enable managedidentities.googleapis.com

4. 建立虛擬私有雲網路

如要在代管的 Active Directory 網域控制站和 Windows VM 之間建立連線,我們需要建立虛擬私有雲網路。

建立虛擬私有雲網路

$ gcloud compute networks create $VPC --subnet-mode=auto --bgp-routing-mode=global

建立防火牆規則,允許 Windows VM 與網域控制站之間的連線

$ gcloud compute firewall-rules create $FIREWALL_VPC_RULE --network $VPC --allow tcp,udp,icmp --source-ranges=0.0.0.0/0

5. 建立網域控制站

我們設定的虛擬私有雲會將受管理 AD 與專案中的資源 (VM) 連接起來。現在請設定受管理網域控制站。

建立 Managed Active Directory

(這項作業預計需要約 1 小時)

$ gcloud active-directory domains create $DOMAIN_NAME --reserved-ip-range=10.0.1.0/24 --region=$REGION --authorized-networks=projects/$PROJECT_ID/global/networks/$VPC

部署期間或任何時候,您都可以驗證網域的佈建狀態。

支援的狀態有 3 種:

建立中

已開始建立 AD 網域,目前正在進行中。

準備就緒

AD 網域建立完成,網域已可供使用。

維護中

AD 網域仍可使用,但正在更新 (升級網域控制站、新增區域等)。

驗證部署狀態:

$ gcloud active-directory domains describe $DOMAIN_NAME

網域建立完成後,這項指令應會回報 READY 狀態。

6. 將 Windows VM 新增至代管網域

在 Google Compute Engine 上建立新的 Windows VM

$ gcloud beta compute instances create $VM_NAME --zone=$ZONE --machine-type=n1-standard-2 --subnet=$VPC --network-tier=PREMIUM --scopes=https://www.googleapis.com/auth/cloud-platform --image=windows-server-2016-dc-v20181009 --image-project=windows-cloud --boot-disk-size=50GB --boot-disk-type=pd-standard

建立防火牆規則,允許遠端桌面連線至 Windows VM:

$ gcloud compute firewall-rules create allow-rdp --allow tcp:3389

連線至 VM 並將其加入網域前,我們需要判斷兩位使用者及其憑證:

  • VM 的本機管理員 - 必須具備這項權限,才能在 VM 加入網域前遠端連線至 VM
  • 受管理網域管理員使用者 - 這是將 VM 加入網域,以及執行所有網域管理作業的必要條件

7. 取得代管網域管理員憑證

找出代管網域管理員的使用者名稱:

$ gcloud active-directory domains describe $DOMAIN_NAME

這項作業會輸出管理員使用者名稱。預設名稱為 miadmin

重設受管理網域管理員的密碼:

$ gcloud active-directory domains reset-managed-identities-admin-password $DOMAIN_NAME

您必須確認 (Y/N) 這項作業,因為系統會以純文字顯示密碼。在終端機中。

儲存使用者名稱和密碼,稍後會用到。

8. 加入網域

產生 Windows 本機使用者和密碼

如要遠端連線至您建立的 VM,必須提供 Windows 本機使用者名稱和密碼。您可以使用 gcloud 產生這些檔案。

$ gcloud compute reset-windows-password --user=usr1 $VM_NAME

這會建立名為「usr1」的本機使用者,並產生密碼

使用 Chrome 遠端桌面連線至 Windows 執行個體

開啟新的瀏覽器視窗,然後前往:https://console.cloud.google.com/compute/instancesDetail/zones/your-zone/instances/your-vm-name?project=your-project-name

按一下「RDP」開啟 ChromeRDP:

d0bd7a5329d27723.png

輸入本機使用者名稱和密碼。這樣就能連線至您建立的 Windows VM。

23fbff0f7c180f62.png

在 VM 中,使用 Powershell 開啟提升權限的命令提示字元:

c5c876d4424217e7.png

在已啟用進階權限的 Powershell 中輸入:

$ add-computer –domainname your-domain -Credential your-domain\miadmin -restart –force

系統會要求您提供受管理管理員密碼,然後 VM 會加入受管理網域並重新啟動。請等待 2 分鐘,再進行下一個步驟。

此時 VM 已加入網域,但您沒有權限使用受管理網域管理員使用者連線至 VM。您必須將受管理網域管理員使用者新增為該 VM 的本機管理員。

使用本機管理員使用者再次連線至 VM (與上述操作相同)。

b2c98b9784dd421e.png

如有,請按照警告訊息的指示操作。這是因為我們已將 VM 加入網域。

請使用本機管理員使用者再次嘗試連線,並開啟已啟用進階權限的 PowerShell 命令提示字元。

將受管理網域管理員使用者新增為 VM 的本機管理員

$ net localgroup administrators /add your-domain-name\miadmin

現在可以中斷與 VM 的連線。

9. Active Directory 工具

VM 加入網域後,您可以使用熟悉的 Active Directory 工具管理使用者、群組、電腦和群組原則。

使用受管理網域管理員的憑證連線至 VM (方法與上述相同)。開啟提升權限的 Powershell 命令提示字元:

$ Install-WindowsFeature -Name "RSAT-AD-Tools" -IncludeAllSubFeature -IncludeManagementTools -Confirm

系統會要求確認,然後安裝 Active Directory 管理工具。

安裝完成後,您可以使用 dsa.msc (Active Directory 使用者和電腦) 和其他熟悉的 Active Directory 工具,管理「Customer OU」下的網域。

3e548e3c8f88dbc1.png

10. 恭喜!

恭喜!您已在 Google Cloud Platform 成功建立新的 Managed Active Directory。

後續步驟

11. 清除

您可以刪除 Windows VM 和 VPC 網路。

刪除 Windows VM

  • 前往 GCP 主控台的「VM instances」(VM 執行個體) 頁面
  • 勾選要刪除的執行個體旁的核取方塊
  • 按一下頁面頂端的「刪除」按鈕,即可刪除執行個體。

刪除虛擬私有雲網路

  • 前往 GCP 主控台的「VPC Networks」(VPC 網路) 頁面
  • 選取您建立的 VPC 網路
  • 按一下頁面頂端的「刪除」按鈕。