ค้นหาเว็บไซต์

ตั้งค่าการจำลอง SysVol ข้าม Samba4 AD DC สองตัวด้วย Rsync - ตอนที่ 6


หัวข้อนี้จะครอบคลุมถึงการจำลองแบบ SysVol ใน Samba4 Active Directory Domain Controller สองตัวที่ดำเนินการด้วยความช่วยเหลือของเครื่องมือ Linux ที่มีประสิทธิภาพบางอย่าง เช่น ยูทิลิตีการซิงโครไนซ์ไฟล์ Rsync, Cron scheduling daemon และ SSH มาตรการ.

ความต้องการ:

  1. เข้าร่วม Ubuntu 16.04 เป็นตัวควบคุมโดเมนเพิ่มเติมสำหรับ Samba4 AD DC – ตอนที่ 5

ขั้นตอนที่ 1: การซิงโครไนซ์เวลาที่แม่นยำระหว่าง DC

1. ก่อนที่จะเริ่มจำลองเนื้อหาของไดเร็กทอรี sysvol ในตัวควบคุมโดเมนทั้งสอง คุณต้องระบุเวลาที่แม่นยำสำหรับเครื่องเหล่านี้

หากความล่าช้ามากกว่า 5 นาทีในทั้งสองทิศทาง และนาฬิกาไม่ซิงค์อย่างถูกต้อง คุณควรเริ่มประสบปัญหาต่างๆ กับบัญชี AD และการจำลองแบบโดเมน

เพื่อแก้ไขปัญหาการเลื่อนเวลาระหว่างตัวควบคุมโดเมนตั้งแต่สองตัวขึ้นไป คุณต้องติดตั้งและกำหนดค่าเซิร์ฟเวอร์ NTP บนเครื่องของคุณโดยดำเนินการคำสั่งด้านล่าง

apt-get install ntp

2. หลังจากติดตั้ง NTP daemon แล้ว ให้เปิดไฟล์การกำหนดค่าหลัก แสดงความคิดเห็นพูลเริ่มต้น (เพิ่ม # ที่ด้านหน้าของแต่ละบรรทัดพูล) และเพิ่มพูลใหม่ที่ จะชี้กลับไปยัง Samba4 AD DC FQDN หลักที่ติดตั้งเซิร์ฟเวอร์ NTP ตามที่แนะนำในตัวอย่างด้านล่าง

nano /etc/ntp.conf

เพิ่มบรรทัดต่อไปนี้ในไฟล์ ntp.conf

pool 0.ubuntu.pool.ntp.org iburst
#pool 1.ubuntu.pool.ntp.org iburst
#pool 2.ubuntu.pool.ntp.org iburst
#pool 3.ubuntu.pool.ntp.org iburst

pool adc1.tecmint.lan

Use Ubuntu's ntp server as a fallback.
pool ntp.ubuntu.com

3. อย่าเพิ่งปิดไฟล์ ย้ายไปที่ด้านล่างของไฟล์และเพิ่มบรรทัดต่อไปนี้เพื่อให้ไคลเอนต์อื่นสามารถสืบค้นและซิงค์เวลากับเซิร์ฟเวอร์ NTP นี้ โดยออกลายเซ็น คำขอ NTP ในกรณีที่ DC หลักออฟไลน์:

restrict source notrap nomodify noquery mssntp
ntpsigndsocket /var/lib/samba/ntp_signd/

4. สุดท้าย ให้บันทึกและปิดไฟล์การกำหนดค่า และรีสตาร์ท NTP daemon เพื่อนำการเปลี่ยนแปลงไปใช้ รอสักครู่หรือนาทีเพื่อซิงโครไนซ์และออกคำสั่ง ntpq เพื่อพิมพ์สถานะสรุปปัจจุบันของเพียร์ adc1 ในการซิงค์

systemctl restart ntp
ntpq -p

ขั้นตอนที่ 2: การจำลองแบบ SysVol ด้วย DC แรกผ่าน Rsync

ตามค่าเริ่มต้น Samba4 AD DC จะไม่ทำการจำลอง SysVol ผ่าน DFS-R (การจำลองระบบไฟล์แบบกระจาย) หรือ FRS (บริการการจำลองแบบไฟล์)

ซึ่งหมายความว่าออบเจ็กต์ Group Policy จะพร้อมใช้งานก็ต่อเมื่อตัวควบคุมโดเมนตัวแรกออนไลน์อยู่ หาก DC แรกไม่พร้อมใช้งาน การตั้งค่านโยบายกลุ่มและสคริปต์การเข้าสู่ระบบจะไม่ใช้เพิ่มเติมบนเครื่อง Windows ที่ลงทะเบียนในโดเมน

เพื่อเอาชนะอุปสรรคนี้และบรรลุรูปแบบพื้นฐานของการจำลองแบบ SysVol เราจะกำหนดเวลาคำสั่ง Linux rsync รวมกับอุโมงค์ที่เข้ารหัส SSH พร้อมการตรวจสอบสิทธิ์ SSH แบบใช้คีย์ เพื่อถ่ายโอนอ็อบเจ็กต์ GPO จากตัวควบคุมโดเมนตัวแรกอย่างปลอดภัย ไปยังตัวควบคุมโดเมนตัวที่สอง

วิธีการนี้ช่วยให้มั่นใจได้ว่าออบเจ็กต์ GPO จะสอดคล้องกันทั่วทั้งตัวควบคุมโดเมน แต่มีข้อเสียเปรียบอย่างมากประการหนึ่ง ทำงานได้ในทิศทางเดียวเท่านั้น เนื่องจาก rsync จะถ่ายโอนการเปลี่ยนแปลงทั้งหมดจาก DC ต้นทางไปยัง DC ปลายทางเมื่อซิงโครไนซ์ไดเรกทอรี GPO

ออบเจ็กต์ที่ไม่มีอยู่บนต้นทางอีกต่อไปจะถูกลบออกจากปลายทางเช่นกัน เพื่อจำกัดและหลีกเลี่ยงข้อขัดแย้งใดๆ การแก้ไข GPO ทั้งหมดควรทำใน DC แรกเท่านั้น

5. หากต้องการเริ่มกระบวนการจำลองแบบ SysVol ขั้นแรกให้สร้างคีย์ SSH บน Samba AD DC ตัวแรก และโอนคีย์ไปยัง DC ตัวที่สองโดยใช้คำสั่งด้านล่าง

อย่าใช้ข้อความรหัสผ่านสำหรับคีย์นี้เพื่อให้การถ่ายโอนตามกำหนดเวลาทำงานได้โดยไม่มีการแทรกแซงจากผู้ใช้

ssh-keygen -t RSA  
ssh-copy-id root@adc2  
ssh adc2 
exit 

6. หลังจากที่คุณมั่นใจได้ว่าผู้ใช้รูทจาก DC แรกสามารถเข้าสู่ระบบได้โดยอัตโนมัติใน DC ที่สอง ให้เรียกใช้ ต่อไปนี้ คำสั่ง Rsync พร้อมด้วยพารามิเตอร์ --dry-run เพื่อจำลองการจำลองแบบ SysVol แทนที่ adc2 ตามนั้น

rsync --dry-run -XAavz --chmod=775 --delete-after  --progress --stats  /var/lib/samba/sysvol/ root@adc2:/var/lib/samba/sysvol/

7. หากกระบวนการจำลองทำงานตามที่คาดไว้ ให้เรียกใช้คำสั่ง rsync อีกครั้งโดยไม่มีตัวเลือก --dry-run เพื่อจำลองออบเจ็กต์ GPO ทั่วทั้งตัวควบคุมโดเมนของคุณ

rsync -XAavz --chmod=775 --delete-after  --progress --stats  /var/lib/samba/sysvol/ root@adc2:/var/lib/samba/sysvol/

8. หลังจากกระบวนการจำลองแบบ SysVol เสร็จสิ้น ให้เข้าสู่ระบบตัวควบคุมโดเมนปลายทางและแสดงรายการเนื้อหาของไดเรกทอรีวัตถุ GPO รายการใดรายการหนึ่งโดยการเรียกใช้คำสั่งด้านล่าง

วัตถุ GPO เดียวกันจาก DC แรกควรได้รับการจำลองแบบที่นี่เช่นกัน

ls -alh /var/lib/samba/sysvol/your_domain/Policiers/

9. หากต้องการทำให้กระบวนการจำลองแบบ Group Policy เป็นแบบอัตโนมัติ (การขนส่งไดเรกทอรี sysvol ผ่านเครือข่าย) ให้กำหนดเวลางานรูทเพื่อเรียกใช้คำสั่ง rsync ที่ใช้ก่อนหน้านี้ทุกๆ 5 นาทีโดยออกคำสั่งด้านล่าง สั่งการ.

crontab -e 

เพิ่มคำสั่ง rsync เพื่อให้รันทุกๆ 5 นาทีและนำเอาต์พุตของคำสั่งรวมถึงข้อผิดพลาดไปยังไฟล์บันทึก /var/log/sysvol-replication.log ในกรณีที่มีบางอย่างไม่ทำงาน คาดว่าคุณควรศึกษาไฟล์นี้เพื่อแก้ไขปัญหา

*/5 * * * * rsync -XAavz --chmod=775 --delete-after  --progress --stats  /var/lib/samba/sysvol/ root@adc2:/var/lib/samba/sysvol/ > /var/log/sysvol-replication.log 2>&1

10. สมมติว่าในอนาคตจะมีปัญหาที่เกี่ยวข้องกับสิทธิ์ SysVol ACL คุณสามารถเรียกใช้คำสั่งต่อไปนี้เพื่อตรวจจับและซ่อมแซมข้อผิดพลาดเหล่านี้

samba-tool ntacl sysvolcheck
samba-tool ntacl sysvolreset

11. ในกรณีที่ Samba4 AD DC แรกที่มีบทบาท FSMO เป็น “PDC Emulator” ไม่สามารถใช้งานได้ คุณสามารถ บังคับให้ คอนโซลการจัดการนโยบายกลุ่ม ติดตั้งบนระบบ Microsoft Windows เพื่อเชื่อมต่อกับตัวควบคุมโดเมนตัวที่สองเท่านั้น โดยเลือกตัวเลือกเปลี่ยนตัวควบคุมโดเมน และเลือกเครื่องเป้าหมายด้วยตนเองตามที่แสดงด้านล่าง

ในขณะที่เชื่อมต่อกับ DC ตัวที่สองจาก คอนโซลการจัดการนโยบายกลุ่ม คุณควรหลีกเลี่ยงการแก้ไขใดๆ ในโดเมนของคุณ นโยบายกลุ่ม เมื่อ DC แรกจะพร้อมใช้งานอีกครั้ง คำสั่ง rsync จะทำลายการเปลี่ยนแปลงทั้งหมดที่ทำบนตัวควบคุมโดเมนตัวที่สองนี้