วันอาทิตย์ที่ 27 พฤษภาคม พ.ศ. 2555

มาทำความรู้จักกับ RODC เพื่อสร้างความปลอดภัยให้กับ Active Directory


สำหรับบทความนี้ผมขออนุญาตนำเอาฟีเจอร์หนึ่งที่เกี่ยวข้องกับ Active Directory ใน Window Server 2008 และ R2 มาอธิบาย ฟีเจอร์ที่ว่านี้ก็คือ “Read-Only Domain Controller (RODC)”  โดยฟีเจอร์ดังกล่าวเป็นฟีเจอร์ที่มาช่วยในเรื่องของการจัดการ Active Directory และเรื่องของความปลอดภัยด้วยครับ  และเพื่อไม่ให้เป็นการเสียเวลาเรามาทำความรู้จักกับ RODC นี้กันเลยครับ
RODC คืออะไร?
เป็นฟีเจอร์ใหม่ในส่วนของ Active Directory ใน Windows Server 2008  โดยจะเกี่ยวข้องกับ Role ที่เรียกว่า Domain Controller ซึ่งถือว่าเป็น Role ที่สำคัญมากในโดเมนของ Windows Server 2008 โดยจะทำหน้าที่ในการตรวจสอบผู้ใช้งานและควบคุมในเรื่องของการเข้าถึงทรัพยากรต่างๆ และอื่นๆ อีกมากมาย  นอกจากนี้ตัวของ Domain Controller เองยังมีดาต้าเบสด้วยซึ่งเรียกว่า “Active Directory Database” ซึ่งเป็นดาต้าเบสที่เก็บข้อมูลหลายอย่าง เช่น ยูสเซอร์, Certificates, COM+ และอื่นๆ  และจะต้องมีการซิงโครไนท์ข้อมูลนี้ระหว่าง Domain Controller ด้วยกันที่อยู่ภายในโดเมนเดียวกัน โดย Active Directory Database ที่เก็บอยู่ที่ DC ทุกตัวจะเป็นแบบ Writeable คือสามารถเปลี่ยนแปลงแก้ไขได้ และสามารถทำการอัพเดทที่ DC ตัวใดก็ได้ เนื่องด้วยเพราะการทำงานของ DC จะเป็นแบบที่เรียกว่า Multi Master และจะมีการซิงโครไนท์หรือเรียกว่า Active Directory Replication ระหว่าง DC โดยอัตโนมัติ  ซึ่ง DC ไม่ว่าจะเป็น Windows Server 2000, 2003 ก็จะเป็นแบบเดียวกันกับที่กล่าวเอาไว้ข้างต้น  แต่พอมาถึงใน Windows Server 2008 เราสามารถกำหนดให้เครื่องทำหน้าที่เป็น Domain Controller (DC) แต่เป็น DC แบบพิเศษคือเป็นแบบ Read Only  เท่านั้น  หมายความว่า เป็น DC ที่มี Active Directory ดาต้าเบสอยู่แต่ว่าเป็นแบบที่อ่านได้อย่างเดียวหรือเรียกว่า Read Only ครับ  ดังนั้นฟีเจอร์นี้จึงมีชื่อวเรียกว่า “Read-Only Domain Controller (RODC)”    โดย RODC จะมีประโยชน์อย่างมากครับสำหรับในองค์กรที่มีหลาย ๆ  โลเกชั่น เช่น มีสำนักงานใหญ่อยู่กรุงเทพฯ และมีสาขาอยู่ตามจังหวัดหรือในที่ต่างๆ และ ถูกเชื่อมต่อกันผ่านแวนลิงค์  ซึ่งในการออกแบบและทำการติดตั้ง Domain Controller  ใน
เวอร์ชั่นก่อน  ถ้าในโลเกชั่นใดมีจำนวนของผู้ใช้งานมาก ก็จะทำการติดตั้ง Domain Controller ไว้ที่โลเกชั่น ดังกล่าวเพื่อช่วยออฟติไมซ์ในเรื่องของการตรวจสอบ (Authentication)  แต่ในอีกมุมหนึ่งมองว่าถ้าวาง Domain Controller เอาไว้ที่สาขาอาจจะไม่ค่อยปลอดภัยถ้า ณ ที่นั้นไม่มีการดูแลที่ดี เช่น ตั้งอยู่ในที่ใคร ๆ ก็สามารถแอ็กเซสที่ตัวของ Domain Controller ได้ ซึ่งอาจจะสร้างปัญหาต่าง ๆ ตามมา ไม่ว่าจะเป็นเรีองของ ไวรัส, การลักลอบขโมยพลาสเวิรด์ของผู้ใช้งานที่เก็บอยู่ในดาต้าเบสของ Active Directory เป็นต้น  ซึ่งถ้าเป็นเวอร์ชั่นก่อนจะไม่มีทางเลือกได้เลยครับ  และในส่วนของผู้ดูแลระบบเองก็จะต้องหาทางที่จะทำการ Hardening ตัวของ Domain Controller เอง เพื่อปกป้องและสร้างความปลอดภัยมากขึ้น  เมื่อมาถึงใน Windows Server 2008 เรามีทางเลือกมากขึ้นครับในการที่จะปกป้อง Domain Controller ที่ไปติดตั้งไว้ที่สาขาหรือในที่ที่ห่างไกลจากผู้ดูแลระบบ  โดยเราจะนำเอา RODC ไปวางแทน Domain Controller เดิมครับ  เพราะ RODC มีข้อดีต่างๆ ดังต่อไปนี้ครับ
-  Active Directory ดาต้าเบส เป็นแบบ Read-Only หรืออ่านได้อย่างเดียวเพราะฉะนั้น เราจะไม่สามารถทำการเปลี่ยนแปลงใดจาก RODC  ดังนั้นทำให้มั่นใจได้ว่าหากมีการเปลี่ยนแปลงเกิดขึ้นจะเกิดหรือมาจาก DC ที่เป็น Writeable เท่านั้น
-  Unidirectional Replication  การ Replication ของ Active Directory จะเกิดขึ้นทางเดียวเท่านั้นคือจาก DC ที่เป็น Writeable มายัง RODC
-  No Password Stored และ Password Caching  ดาต้าเบสของ Active Directory ที่อยู่ใน RODC ถึงแม้ว่าจะเก็บข้อมูลของผู้ใช้งานก็จริงแต่จะมีการเก็บพลาสเวิรด์ของผู้ใช้งานเอาไว้ใน Active Directory ดาต้าเบสเลย ดังนั้นหากเกิดกรณีที่ฮารด์ดิสก์ของ RODC ถูกขโมยไป ก็ไม่ต้องกังวลเรื่องของข้อมูลพลาสเวิรด์ของผู้ใช้งานอีกต่อไป แต่ถ้าหากเราต้องการให้ RODC เก็บพลาสเวิรด์ของผู้ใช้งานก็ได้ ซึ่งขึ้นอยู่กับผู้ดูแลระบบเอง แต่โดยค่าดีฟลอลต์จะไม่มีการเก็บพลาสเวิรด์ใด ๆ ทั้งสิ้น  ดังรูป


-  Admin Role Separation  เนื่องด้วยใน Windows Server 2008 มีการกำหนดในเรื่องของความปลอดภัยให้กับ RODC  โดยอัติโนมัติ  ดังนั้นในเรี่องของการดูแลก็มีความสะดวกและยืดหยุ่นมากขึ้น โดยเราสามารถกำหนดว่าจะให้ใครเป็น Local Administration ของ RODC โดยไม่ได้กำหนดให้คนนั้น ๆ ต้องเป็นสมาชิกใน Domain Admin เหมือนกับเมื่อก่อน และในมุมมองของ Active Directory มัมจะดูแล RODC เหมือนกับเป็นแค่เพียง Member Server ตัวหนึ่ง และในส่วนของจัดการ SAM ดาต้าเบสของมันก็จะไม่เกี่ยวข้องกับ Active Directory
- Read-Only DNS  เมื่อในการติดตั้ง RODC เราสามารถกำหนดให้ RODC เครื่องนั้นทำหน้าที่เป็น DNS ได้ด้วย เพื่อช่วยในเรี่องของการ Authentication และการทำ Name Resolution โดย DNS ที่ติดตั้งบน RODC จะเป็น Read-Only
-  Application Compatibility  ตัวของ RODC อนุญาตให้ทำการติดตั้ง Application บนตัวมันได้  Application ส่วนใหญ่จะสามารถทำงานได้ครับแต่ก็ไม่ใช่ทุก ๆ ตัวครับเพราะฉะนั้นควรจะทำการตรวจสอบเสียก่อนนะครับ  สำหรับรายละเอียดให้ไปดูเพิ่มเติมได้ที่ลิงค์นี้ครับ  http://technet.microsoft.com/en-us/library/cc732790.aspx 
สำหรับส่วนต่อไปที่ผมจะอธิบายจะเป็นเรื่องของการติดตั้ง RODC เพื่อใช้งานใน Windows Server 2008 โดเมนครับ
โดยก่อนที่จะทำการติดตั้งมีสิ่งที่เราจะต้องทำการพิจารณาและเตรียมพร้อมก่อนที่จะทำการติดตั้ง RODC ซึ่งมีรายละเอียดดังต่อไปนี้ครับ:
-  ในโดเมนจะต้องมี Domain Controller ที่เป็น Windows Server 2008 อย่างน้อย 1 ตัวเพื่อทำงานร่วมกับ RODC
-  Functional Level ของ โดเมน อย่างน้อยจะต้องเป็น Windows Server 2003 หรือสูงกว่า
-  ถ้า Domain Functional Level เป็น Windows Server 2003 จะต้องทำการรันคำสั่งนี้  adprep /rodcprep
   ก่อนที่จะทำการติดตั้ง RODC
-  ทำการติดตั้ง RODC โดยใช้คำสั่ง dcpromo
และผมขอเพิ่มเติมอีกสักนิดครับ  คือในการติดตั้ง RODC สามารถติดตั้งในบน Windows Server 2008 ธรรมดารวมถึงบน Server Core ครับ   และมาถึงตอนนี้เรามาเริ่มติดตั้ง RODC กันดีกว่าครับ
การติดตั้ง RODC ก็ไม่มีอะไรยุ่งยากครับ เนื่องจากวิธีการติดตั้งจะคล้ายกับการติดตั้ง Domain Controller แต่มีสิ่งหนึ่งที่ห้ามลืมเด็ดขาดคือ  เราจะต้องมี Domain Controller ที่เป็น  Windows Server 2008 ก่อนครับ และอย่าลืมกำหนดเรื่องของ Functional Level โดยให้ท่านผู้อ่านย้อนกลับไปดูในส่วนของการเตรียมพร้อมในหัวข้อก่อนหน้านี้  หลังจากให้ท่านผู้อ่านไปที่ Run เมนู แล้วพิมพ์ dcpromo ดังรูปด้านล่างครับ
จากนั้นให้รอสักครู่ครับ ก็จะเข้าสู่หน้าจอ Welcome to the Active Directory Domain Services Installation Wizard  ให้คลิ๊ก Use advanced mode installation ดังรูป  จากนั้นคลิ๊ก Next
ในส่วนของ Choose a Deployment Configuration ให้เลือก Existing Forest/Add Domain Controller to an existing domain ดังรูปด้านล่าง
ให้คลิ๊ก Next ต่อไปครับ จากนั้นในขั้นตอนต่อมาในส่วนของ Network Credential ให้ท่านผู้อ่านใส่ชื่อของ Domain ที่ต้องการติดตั้ง RODC ลงไป พร้อมกับกำหนดยูสเซอร์ที่มีสิทธิในการติดตั้ง ซึ่งส่วนใหญ่ก็จะใช้ Administrator แอ็คเคาท์ครับ
จากนั้นให้คลิ๊ก Next ต่อไปครับ จากนั้นในส่วนของ Select a Domain ให้เลือกโดเมนที่เราต้องการติดตั้ง RODC เข้าไป ดังรูปครับ
ในส่วนของ Select a Site ให้คลิ๊ก Next ผ่านไปเลยครับ  จากนั้นก็จะเข้าสู่ส่วนของ  Additional Domain Controller Options  ให้ท่านผู้อ่านเลือกออฟชั่น  Read-Only Domain Controller (RODC) ตามรูปด้านล่าง ครับ จากนั้นให้คลิ๊ก Next  ต่อไปครับ
จากนั้นในส่วนของ Specify the Password Replication Policy จะเป็นส่วนที่สำคัญส่วนหนึ่งที่จะทำการกำหนดและควบคุมว่าจะให้มีการ Replicate  พลาสเวิรด์ของแอ๊คเค้าท์ใดบ้างไปเก็บที่ RODC  ซึ่งขึ้นอยู่กับความต้องการของแต่ละที่ครับสำหรับในตัวอย่างนี้ผมขอใช้ค่าดีฟอลต์ครับ คือไม่มีการเก็บพลาสเวิรด์ใด ๆ
สำหรับในส่วนต่อมาจะเป็นในเรี่องของ Role Separation  ซึ่งเป็นส่วนที่เราสามารถจะทำการ delegate หรือแต่งตั้ง Local Administrator Role ให้กับยูสเซอร์คนไหนก็ได้ที่จะมาทำหน้าที่ดูแล RODC โดยยูสเซอร์ดังกล่าวจะมีสิทธิทำงานต่างๆ เช่น การอัพเกรดไดร์เวอร์ , แบ็คอัพข้อมูล และอื่นๆ  โดยที่ยูสเซอร์ดังกล่าวจะทำได้แค่ที่ตัวของ RODC เท่านั้น ไม่สามารถไปล็อกออนที่ Domain Controller ตัวอื่นๆ และทำงานอื่นๆ ได้  เพราะฉะนั้นในแง่ของความปลอดภัยก็จะมีมากขึ้นเนื่องจากมีการกำหนด Role และควบคุมการทำงานต่างๆ สำหรับยูสเซอร์ที่จะทำงานกับ RODC โดยไม่สามารถไปยุ่งเกี่ยวกับ Domain Controller ได้  จากรูปด้านล่างผมได้กำหนดยูสเซอร์ชื่อว่า Wisit เป็นผู้ดูแล RODC ครับ
ในส่วนของ Install From Media ให้เลือกออฟชั่น Replicate data over the network from an existing domain controller  เนื่องจากผมไม่มีแบ็คอัพของ Active Directory ดาต้าเบสเอาไว้ก่อนหน้านี้ ดังรูป
ในส่วนของ Source Domain Controller ให้เลือกออฟชั่น Let the wizard choose an appropriate domain controller ดังรูป
ในส่วนต่อมาจะเป็นส่วนของ Location for Database, Log Files, and SYSVOL  ให้ท่านผู้อ่านกำหนดไดรฟ์ที่จะเก็บดาต้าเบส, Transaction ล็อก และ SYSVOL โฟลเดอร์  จากนั้นให้คลิ๊ก Next ต่อไปครับ
ในส่วนของ Directory Services Restore Mode Administrator Password ให้กำหนดพลาสเวิรด์ที่จะใช้ใน Restore Mode ของ Active Directory 
ให้คลิ๊ก Next ต่อได้เลยครับ จากนั้นท่านผู้อ่านจะเห็นหน้าจอ Summary ดังรูปครับ

จากนั้นก็จะเริ่มกระบวนการติดตั้ง RODC ดังรูป และให้เอ็นเอเบิ้ล Reboot on completion

จากนั้นให้รอสักครู่หรืออาจจะใช้เวลาพอสมควร ทั้งนี้ทั้งนั้นขึ้นอยู่กับขนาดของดาต้าเบสของ Active Directory ที่จะต้องทำการเรพพิเคทจาก Domain Controller มายัง RODC  และสุดท้ายเครื่องก็จะทำการรีสตารท์  ก็เป็นอันเสร็จสิ้นกระบวนการของการติดตั้ง RODC   และทั้งหมดนี้เป็นเรื่องราวต่างๆ ของ RODC ใน Windows Server 2008 ซึ่งผมหวังว่าจะมีประโยชน์กับท่านผู้อ่านที่กำลังอัพเกรดระบบไปใช้ Windows Server 2008  และเหมือนเดิมครับ หากท่านผู้อ่านมีข้อสงสัยใด ๆ สามารถเมล์มาสอบถามผมได้ครับ  แล้วพบกันใหม่ครับผม…..

2 ความคิดเห็น:

  1. ขอบคุณมากครับ แล้วจะลองทำดู

    ตอบลบ
  2. ตัว RODC จะไม่สามารถ สร้าง USER and OU ได้เลยใช่ไหมครับ

    ตอบลบ