1. ภาพรวม
Managed Active Directory คือโดเมน Microsoft Active Directory ที่มีความพร้อมใช้งานสูงในฐานะบริการที่โฮสต์บน Google Cloud
ในบทแนะนำนี้ คุณจะได้ตั้งค่า Active Directory ที่มีการจัดการใหม่ รวมถึงสร้าง Windows VM ใหม่และนำไปเข้าร่วมในโดเมนใหม่ คุณจะเห็นวิธีตั้งค่าเครือข่าย การรักษาความปลอดภัย และการจัดการโดเมนโดยใช้เครื่องมือการจัดการแบบเดียวกับที่คุ้นเคย
สิ่งที่คุณจะได้เรียนรู้
- วิธีสร้าง Active Directory ที่มีการจัดการใน Google Cloud
- วิธีเพิ่ม VM ของ Windows ในโดเมน
- วิธีจัดการผู้ใช้และคอมพิวเตอร์ใน Active Directory ที่มีการจัดการ
สิ่งที่คุณต้องมี
คุณจะใช้บทแนะนำนี้อย่างไร
คุณจะให้คะแนนประสบการณ์การใช้งาน Google Cloud Platform อย่างไร
2. การตั้งค่าและข้อกำหนด
การตั้งค่าสภาพแวดล้อมตามเวลาที่สะดวก
- ลงชื่อเข้าใช้ Cloud Console และสร้างโปรเจ็กต์ใหม่หรือใช้โปรเจ็กต์ที่มีอยู่ซ้ำ (หากยังไม่มีบัญชี Gmail หรือ G Suite คุณต้องสร้างบัญชี)
โปรดจดจำรหัสโปรเจ็กต์ ซึ่งเป็นชื่อที่ไม่ซ้ำกันในโปรเจ็กต์ Google Cloud ทั้งหมด (ชื่อด้านบนมีคนใช้แล้ว และจะใช้ไม่ได้ ขออภัย) และจะมีการอ้างอิงใน Codelab ว่า PROJECT_ID
ในภายหลัง
- ถัดไป คุณจะต้องเปิดใช้การเรียกเก็บเงินใน Cloud Console เพื่อใช้ทรัพยากร Google Cloud
การใช้งาน Codelab นี้น่าจะไม่มีค่าใช้จ่ายใดๆ หากมี ตรวจสอบว่าคุณได้ทำตามวิธีการใน "การล้างข้อมูล" ซึ่งจะแนะนำคุณเกี่ยวกับวิธีปิดทรัพยากรเพื่อไม่ให้มีการเรียกเก็บเงินนอกเหนือจากบทแนะนำนี้ ผู้ใช้ใหม่ของ Google Cloud จะมีสิทธิ์เข้าร่วมโปรแกรมทดลองใช้ฟรี$300 USD
เริ่มต้น Cloud Shell
แม้ว่าคุณจะดำเนินการ Google Cloud จากระยะไกลได้จากแล็ปท็อป แต่ใน Codelab นี้ คุณจะใช้ Google Cloud Shell ซึ่งเป็นสภาพแวดล้อมแบบบรรทัดคำสั่งที่ทำงานใน Google Cloud
เปิดใช้งาน Cloud Shell
- คลิกเปิดใช้งาน Cloud Shell
จาก Cloud Console
หากคุณไม่เคยเริ่มต้นใช้งาน Cloud Shell มาก่อน คุณจะเห็นหน้าจอตรงกลาง (ครึ่งหน้าล่าง) ซึ่งอธิบายว่านี่คืออะไร หากเป็นเช่นนั้น ให้คลิกดำเนินการต่อ (คุณจะไม่เห็นการดำเนินการนี้อีก) หน้าจอแบบครั้งเดียวมีลักษณะดังนี้
การจัดสรรและเชื่อมต่อกับ Cloud Shell ใช้เวลาเพียงไม่กี่นาที
เครื่องเสมือนนี้เต็มไปด้วยเครื่องมือการพัฒนาทั้งหมดที่คุณต้องการ โดยมีไดเรกทอรีหลักขนาด 5 GB ที่ทำงานอย่างต่อเนื่องใน Google Cloud ซึ่งจะช่วยเพิ่มประสิทธิภาพของเครือข่ายและการตรวจสอบสิทธิ์ได้อย่างมาก งานส่วนใหญ่ใน Codelab นี้สามารถทำได้โดยใช้เบราว์เซอร์หรือ Chromebook เท่านั้น
เมื่อเชื่อมต่อกับ Cloud Shell คุณควรเห็นว่าได้รับการตรวจสอบสิทธิ์แล้ว และโปรเจ็กต์ได้รับการตั้งค่าเป็นรหัสโปรเจ็กต์แล้ว
- เรียกใช้คำสั่งต่อไปนี้ใน 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. เริ่มต้น
ระบบจะใช้โปรเจ็กต์ GCP ที่เริ่มต้นเพื่อโฮสต์เครือข่าย VPC ระหว่าง VM ของ Windows ทั้งหมดที่เข้าร่วมโดเมนและ Active Directory ที่มีการจัดการ
เราจะกำหนดตัวแปร 2-3 ตัวเพื่อให้สคริปต์ง่ายขึ้นในภายหลัง
- เลือกชื่อโดเมน (เช่น ad.yourcompany.com)
- เลือกภูมิภาคที่คุณต้องการสร้าง Domain Controller สำหรับโดเมนที่มีการจัดการ
- ตั้งชื่อ VM, กฎไฟร์วอลล์ และชื่อเครือข่าย
ปัจจุบันภูมิภาคต่อไปนี้ได้รับการสนับสนุน:
- "us-west1"
- "US-west2"
- "us-central1"
- "us-east1"
- "us-east4"
- "europe-north1"
- "ยุโรป-ตะวันตก1"
- "europe-west4"
- "เอเชีย-ตะวันออก1"
- "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
กำหนดรหัสโปรเจ็กต์ปัจจุบันเพื่อให้การดำเนินการครั้งต่อๆ ไปทั้งหมดเกิดขึ้นในบริบทของโปรเจ็กต์ที่อยู่ในระบบคลาวด์ที่ถูกต้อง ดังนี้
$ gcloud config set project $PROJECT_ID
เปิดใช้ Cloud APIs
ในการเปิดใช้ Managed Active Directory เราต้องเปิดใช้ API 2 รายการ ได้แก่ DNS และข้อมูลระบุตัวตนที่มีการจัดการ
เปิดใช้ DNS API
$ gcloud services enable dns.googleapis.com
เปิดใช้ API ข้อมูลระบุตัวตนที่มีการจัดการ:
$ gcloud services enable managedidentities.googleapis.com
4. สร้างเครือข่าย Virtual Private Cloud
ในการสร้างการเชื่อมต่อระหว่างตัวควบคุมโดเมนของไดเรกทอรีที่ใช้งานอยู่ที่มีการจัดการและ VM ของ Windows เราต้องสร้างเครือข่ายระบบคลาวด์ส่วนตัวเสมือน
สร้างเครือข่าย VPC
$ gcloud compute networks create $VPC --subnet-mode=auto --bgp-routing-mode=global
สร้างกฎไฟร์วอลล์เพื่ออนุญาตการเชื่อมต่อระหว่าง VM ของ Windows และตัวควบคุมโดเมน
$ gcloud compute firewall-rules create $FIREWALL_VPC_RULE --network $VPC --allow tcp,udp,icmp --source-ranges=0.0.0.0/0
5. สร้างตัวควบคุมโดเมน
เราตั้งค่า VPC ที่เชื่อมต่อ AD ที่มีการจัดการกับทรัพยากรในโปรเจ็กต์ (VM) ต่อไปเป็นการตั้งค่าตัวควบคุมโดเมนที่มีการจัดการ
สร้าง 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. เพิ่ม VM ของ Windows ลงในโดเมนที่มีการจัดการ
สร้าง Windows VM ใหม่บน Google Compute Engine
$ 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
สร้างกฎไฟร์วอลล์เพื่ออนุญาตการเชื่อมต่อเดสก์ท็อประยะไกลกับ VM ของ Windows:
$ gcloud compute firewall-rules create allow-rdp --allow tcp:3389
ก่อนที่จะเชื่อมต่อกับ VM และเพิ่มลงในโดเมน เราจำเป็นต้องระบุผู้ใช้ 2 รายและข้อมูลเข้าสู่ระบบของผู้ใช้ ดังนี้
- ผู้ดูแลระบบภายในของ VM - จำเป็นต้องดำเนินการเพื่อให้เชื่อมต่อกับ VM จากระยะไกลได้ก่อนที่จะเข้าร่วมโดเมน
- ผู้ใช้ที่ดูแลระบบโดเมนที่มีการจัดการ - จำเป็นสำหรับการเข้าร่วม VM กับโดเมนและดำเนินการจัดการโดเมนทั้งหมด
7. รับข้อมูลเข้าสู่ระบบของผู้ดูแลระบบโดเมนที่มีการจัดการ
กำหนดชื่อผู้ใช้ของผู้ดูแลระบบโดเมนที่มีการจัดการ:
$ gcloud active-directory domains describe $DOMAIN_NAME
การดำเนินการนี้จะแสดงชื่อผู้ใช้ของผู้ดูแลระบบ โดยค่าเริ่มต้นจะเรียกว่า miadmin
รีเซ็ตรหัสผ่านของผู้ดูแลระบบโดเมนที่มีการจัดการ
$ gcloud active-directory domains reset-managed-identities-admin-password $DOMAIN_NAME
คุณต้องยืนยันการดำเนินการ (ใช่/ไม่ใช่) เนื่องจากจะเปิดเผยรหัสผ่านในรูปแบบข้อความธรรมดา เครื่องอ่านบัตร
บันทึกผู้ใช้และรหัสผ่าน แล้วเราจะใช้ในภายหลัง
8. เข้าร่วมโดเมน
สร้างผู้ใช้และรหัสผ่านในเครื่อง Windows
ต้องใช้ผู้ใช้และรหัสผ่านในเครื่องของ Windows เพื่อเชื่อมต่อกับ VM ที่คุณสร้างจากระยะไกล แต่คุณจะสร้างได้โดยใช้ gcloud
$ gcloud compute reset-windows-password --user=usr1 $VM_NAME
การดำเนินการนี้จะสร้างผู้ใช้ในเครื่องชื่อ "usr1" และสร้างรหัสผ่าน
เชื่อมต่อกับอินสแตนซ์ Windows โดยใช้ Chrome RDP
เปิดหน้าต่างเบราว์เซอร์ใหม่ที่ https://console.cloud.google.com/compute/instancesDetail/zones/your-zone/instances/your-vm-name?project=your-project-name
เปิด ChromeRDP โดยคลิก RDP ดังนี้
ป้อนผู้ใช้และรหัสผ่านในเครื่อง การดำเนินการนี้จะเชื่อมต่อคุณกับ Windows VM ที่คุณสร้างขึ้น
เปิด Command Prompt ขั้นสูงใน VM ด้วย Powershell:
ใน Powershell ระดับสูง ให้พิมพ์:
$ add-computer –domainname your-domain -Credential your-domain\miadmin -restart –force
ระบบจะขอให้คุณระบุรหัสผ่านของผู้ดูแลระบบที่มีการจัดการ จากนั้น VM จะเข้าร่วมโดเมนที่มีการจัดการและรีสตาร์ท รอ 2 นาทีก่อนทำขั้นตอนถัดไป
ณ จุดนี้ VM ของคุณมีการผนวกกับโดเมน แต่คุณไม่มีสิทธิ์เชื่อมต่อโดยใช้ผู้ใช้ที่ผู้ดูแลระบบโดเมนที่มีการจัดการ คุณต้องเพิ่มผู้ใช้ที่ดูแลระบบโดเมนที่มีการจัดการเป็นผู้ดูแลระบบภายในของ VM นั้น
เชื่อมต่อกับ VM อีกครั้งโดยใช้ผู้ใช้ที่ดูแลระบบในเครื่อง (วิธีการเดียวกับด้านบน)
หากเป็นเช่นนั้น ให้ทำตามคำแนะนำในคำเตือน ปัญหานี้เกิดขึ้นเพราะเราเข้าร่วม VM ในโดเมน
ลองเชื่อมต่ออีกครั้งโดยใช้ local admin user แล้วเปิด Command Prompt elevated Powershell
เพิ่มผู้ใช้ที่ดูแลระบบโดเมนที่มีการจัดการให้เป็นผู้ดูแลระบบในเครื่องบน VM
$ net localgroup administrators /add your-domain-name\miadmin
ตอนนี้คุณยกเลิกการเชื่อมต่อจาก VM ได้แล้ว
9. เครื่องมือ Active Directory
เมื่อ VM เชื่อมโยงกับโดเมนแล้ว คุณสามารถใช้เครื่องมือ Active Directory ที่คุ้นเคยเพื่อจัดการผู้ใช้ กลุ่ม คอมพิวเตอร์ และนโยบายกลุ่มได้
เชื่อมต่อกับ VM (วิธีการเดียวกับที่อธิบายไว้ข้างต้น) โดยใช้ข้อมูลเข้าสู่ระบบของผู้ดูแลระบบโดเมนที่มีการจัดการ เปิด Command Prompt ของ Powershell ยกระดับ:
$ Install-WindowsFeature -Name "RSAT-AD-Tools" -IncludeAllSubFeature -IncludeManagementTools -Confirm
ซึ่งจะขอการยืนยันแล้วติดตั้ง Active Directory Management Tools
หลังจากติดตั้งเสร็จแล้ว คุณสามารถใช้ dsa.msc (ข้อมูลผู้ใช้และคอมพิวเตอร์ของ Active Directory) และเครื่องมือ Active Directory ที่คุ้นเคย เพื่อจัดการโดเมนในส่วน "OU ลูกค้า"
10. ยินดีด้วย
ขอแสดงความยินดี คุณสร้าง Active Directory ที่มีการจัดการใหม่บน Google Cloud Platform เรียบร้อยแล้ว
ขั้นตอนถัดไป
- เอกสารประกอบของ Active Directory ที่มีการจัดการ
- ดูข้อมูลเพิ่มเติมเกี่ยวกับการใช้ Windows VM บน GCP
- ดูข้อมูลเพิ่มเติมเกี่ยวกับการเชื่อมต่อ VM ของ Windows
- ดูข้อมูลเพิ่มเติมเกี่ยวกับการทำให้ Fault Tolerant Active Directory ใช้งานได้บน GCP
- ดูข้อมูลเพิ่มเติมเกี่ยวกับ .NET บน Google Cloud Platform
.
11. ล้างข้อมูล
คุณสามารถลบ Windows VM และเครือข่าย VPC ได้
ลบ VM ของ Windows
- ในคอนโซล GCP ให้ไปที่หน้าอินสแตนซ์ VM
- คลิกช่องทำเครื่องหมายข้างอินสแตนซ์ที่ต้องการลบ
- คลิกปุ่ม "ลบ" ที่ด้านบนของหน้าเพื่อลบอินสแตนซ์
ลบเครือข่าย VPC
- ในคอนโซล GCP ให้ไปที่หน้าเครือข่าย VPC
- เลือกเครือข่าย VPC ที่คุณสร้าง
- คลิกปุ่ม "ลบ" ที่ด้านบนของหน้า