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

เข้าร่วม Ubuntu DC เพิ่มเติมไปยัง Samba4 AD DC สำหรับการจำลองแบบ FailOver - ตอนที่ 5


บทช่วยสอนนี้จะแสดงให้คุณเห็นถึงวิธีการเพิ่มตัวควบคุมโดเมน Samba4 ตัวที่สองที่จัดเตรียมไว้บนเซิร์ฟเวอร์ Ubuntu 16.04 ไปยังฟอเรสต์ Samba AD DC ที่มีอยู่ตามลำดับ เพื่อให้ระดับของการปรับสมดุลโหลด/เฟลโอเวอร์สำหรับบริการ AD DC ที่สำคัญบางบริการ โดยเฉพาะอย่างยิ่งสำหรับบริการต่างๆ เช่น สคีมา DNS และ AD DC LDAP พร้อมฐานข้อมูล SAM

ความต้องการ

  1. สร้างโครงสร้างพื้นฐาน Active Directory ด้วย Samba4 บน Ubuntu – ตอนที่ 1

บทความนี้เป็น ส่วนที่ 5 ของซีรี่ส์ Samba4 AD DC ดังต่อไปนี้:

ขั้นตอนที่ 1: การกำหนดค่าเริ่มต้นสำหรับการตั้งค่า Samba4

1. ก่อนที่คุณจะเริ่มดำเนินการเข้าร่วมโดเมนสำหรับ DC ที่สอง คุณจะต้องดูแลการตั้งค่าเริ่มต้นบางประการ ขั้นแรก ตรวจสอบให้แน่ใจว่า ชื่อโฮสต์ ของระบบที่จะรวมเข้ากับ Samba4 AD DC มีชื่อที่สื่อความหมาย

สมมติว่า ชื่อโฮสต์ ของขอบเขตที่จัดเตรียมครั้งแรกเรียกว่า adc1 คุณสามารถตั้งชื่อ DC ที่สองด้วย adc2 เพื่อให้มีรูปแบบการตั้งชื่อที่สอดคล้องกัน ข้ามตัวควบคุมโดเมนของคุณ

หากต้องการเปลี่ยน ชื่อโฮสต์ ของระบบ คุณสามารถออกคำสั่งด้านล่างได้

hostnamectl set-hostname adc2

มิฉะนั้น คุณสามารถแก้ไขไฟล์ /etc/hostname ด้วยตนเอง และเพิ่มบรรทัดใหม่ด้วยชื่อที่ต้องการ

nano /etc/hostname

ที่นี่เพิ่มชื่อโฮสต์

adc2

2. จากนั้น เปิดไฟล์ความละเอียดของระบบภายในเครื่อง และเพิ่มรายการที่มีที่อยู่ IP ซึ่งชี้ไปที่ชื่อย่อและ FQDN ของตัวควบคุมโดเมนหลัก ดังภาพประกอบด้านล่าง ภาพหน้าจอ

ในบทช่วยสอนนี้ ชื่อ DC หลักคือ adc1.tecmint.lan และแก้ไขเป็นที่อยู่ IP 192.168.1.254

nano /etc/hosts

เพิ่มบรรทัดต่อไปนี้:

IP_of_main_DC		FQDN_of_main_DC 	short_name_of_main_DC

3. ในขั้นตอนถัดไป ให้เปิด /etc/network/interfaces และกำหนดที่อยู่ IP แบบคงที่สำหรับระบบของคุณดังที่แสดงในภาพหน้าจอด้านล่าง

ให้ความสนใจกับตัวแปร dns-nameservers และ dns-search ค่าเหล่านี้ควรได้รับการกำหนดค่าให้ชี้กลับไปยังที่อยู่ IP ของ Samba4 AD DC หลักและขอบเขตเพื่อให้การแก้ไข DNS ทำงานได้อย่างถูกต้อง

รีสตาร์ท daemon เครือข่ายเพื่อให้สะท้อนถึงการเปลี่ยนแปลง ตรวจสอบไฟล์ /etc/resolv.conf เพื่อให้มั่นใจว่าค่า DNS ทั้งสองจากอินเทอร์เฟซเครือข่ายของคุณได้รับการอัปเดตเป็นไฟล์นี้

nano /etc/network/interfaces

แก้ไขและแทนที่ด้วยการตั้งค่า IP ที่คุณกำหนดเอง:

auto ens33
iface ens33 inet static
        address 192.168.1.253
        netmask 255.255.255.0
        brodcast 192.168.1.1
        gateway 192.168.1.1
        dns-nameservers 192.168.1.254
        dns-search tecmint.lan

เริ่มบริการเครือข่ายใหม่และยืนยันการเปลี่ยนแปลง

systemctl restart networking.service
cat /etc/resolv.conf

ค่า dns-search จะเพิ่มชื่อโดเมนต่อท้ายโดยอัตโนมัติเมื่อคุณค้นหาโฮสต์ด้วยชื่อย่อ (จะสร้าง FQDN)

4. เพื่อทดสอบว่าการแก้ไข DNS ทำงานตามที่คาดไว้หรือไม่ ให้ออกชุดคำสั่ง ping กับชื่อย่อโดเมน FQDN และขอบเขตของคุณดังที่แสดงในภาพหน้าจอด้านล่าง

ในทุกกรณีนี้ เซิร์ฟเวอร์ Samba4 AD DC DNS ควรตอบกลับด้วยที่อยู่ IP ของ DC หลักของคุณ

5. ขั้นตอนสุดท้ายเพิ่มเติมที่คุณต้องดูแลคือการซิงโครไนซ์เวลากับตัวควบคุมโดเมนหลักของคุณ ซึ่งสามารถทำได้โดยการติดตั้งยูทิลิตี้ไคลเอนต์ NTP บนระบบของคุณโดยออกคำสั่งด้านล่าง:

apt-get install ntpdate

6. สมมติว่าคุณต้องการบังคับการซิงโครไนซ์เวลากับ samba4 AD DC ด้วยตนเอง ให้รันคำสั่ง ntpdate กับ DC หลักโดยออกคำสั่งต่อไปนี้

ntpdate adc1

ขั้นตอนที่ 2: ติดตั้ง Samba4 พร้อมการพึ่งพาที่จำเป็น

7. ในการลงทะเบียนระบบ Ubuntu 16.04 ในโดเมนของคุณ ก่อนอื่นให้ติดตั้งไคลเอนต์ Samba4, Kerberos และไคลเอนต์อีกสองสามตัว แพ็คเกจสำคัญอื่น ๆ เพื่อใช้ในภายหลังจากที่เก็บข้อมูลอย่างเป็นทางการของ Ubuntu โดยออกคำสั่งด้านล่าง:

apt-get install samba krb5-user krb5-config winbind libpam-winbind libnss-winbind

8. ในระหว่างการติดตั้ง คุณจะต้องระบุชื่อขอบเขต Kerberos เขียนชื่อโดเมนของคุณด้วยตัวพิมพ์ใหญ่และกดปุ่ม [Enter] เพื่อสิ้นสุดกระบวนการติดตั้ง

9. หลังจากการติดตั้งแพ็คเกจเสร็จสิ้น ให้ตรวจสอบการตั้งค่าโดยขอตั๋ว Kerberos สำหรับผู้ดูแลระบบโดเมนโดยใช้คำสั่ง kinit ใช้คำสั่ง klist เพื่อแสดงรายการตั๋ว Kerberos ที่ได้รับ

kinit domain-admin-user@YOUR_DOMAIN.TLD
klist

ขั้นตอนที่ 3: เข้าร่วม Samba4 AD DC ในฐานะตัวควบคุมโดเมน

10. ก่อนที่จะรวมเครื่องของคุณเข้ากับ Samba4 DC ขั้นแรกตรวจสอบให้แน่ใจว่า Samba4 daemons ทั้งหมดที่ทำงานบนระบบของคุณหยุดทำงานแล้ว และเปลี่ยนชื่อไฟล์การกำหนดค่า Samba เริ่มต้นเพื่อเริ่มต้น ทำความสะอาด. ขณะจัดเตรียมตัวควบคุมโดเมน samba จะสร้างไฟล์การกำหนดค่าใหม่ตั้งแต่ต้น

systemctl stop samba-ad-dc smbd nmbd winbind
mv /etc/samba/smb.conf /etc/samba/smb.conf.initial

11. เพื่อเริ่มต้นกระบวนการเข้าร่วมโดเมน ก่อนอื่นให้เริ่มเฉพาะ samba-ad-dc daemon หลังจากนั้นคุณจะเรียกใช้ samba-tool คำสั่งให้เข้าร่วมอาณาจักรโดยใช้บัญชีที่มีสิทธิ์ระดับผู้ดูแลระบบในโดเมนของคุณ

samba-tool domain join your_domain DC -U "your_domain_admin"

ข้อความที่ตัดตอนมาจากการรวมโดเมน:

samba-tool domain join tecmint.lan DC -U"tecmint_user"
ผลลัพธ์ตัวอย่าง
Finding a writeable DC for domain 'tecmint.lan'
Found DC adc1.tecmint.lan
Password for [WORKGROUP\tecmint_user]:
workgroup is TECMINT
realm is tecmint.lan
checking sAMAccountName
Deleted CN=ADC2,CN=Computers,DC=tecmint,DC=lan
Adding CN=ADC2,OU=Domain Controllers,DC=tecmint,DC=lan
Adding CN=ADC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=tecmint,DC=lan
Adding CN=NTDS Settings,CN=ADC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=tecmint,DC=lan
Adding SPNs to CN=ADC2,OU=Domain Controllers,DC=tecmint,DC=lan
Setting account password for ADC2$
Enabling account
Calling bare provision
Looking up IPv4 addresses
Looking up IPv6 addresses
No IPv6 address will be assigned
Setting up share.ldb
Setting up secrets.ldb
Setting up the registry
Setting up the privileges database
Setting up idmap db
Setting up SAM db
Setting up sam.ldb partitions and settings
Setting up sam.ldb rootDSE
Pre-loading the Samba 4 and AD schema
A Kerberos configuration suitable for Samba 4 has been generated at /var/lib/samba/private/krb5.conf
Provision OK for domain DN DC=tecmint,DC=lan
Starting replication
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[402/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[804/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[1206/1550] linked_values[0/0]
Schema-DN[CN=Schema,CN=Configuration,DC=tecmint,DC=lan] objects[1550/1550] linked_values[0/0]
Analyze and apply schema objects
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[402/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[804/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[1206/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[1608/1614] linked_values[0/0]
Partition[CN=Configuration,DC=tecmint,DC=lan] objects[1614/1614] linked_values[28/0]
Replicating critical objects from the base DN of the domain
Partition[DC=tecmint,DC=lan] objects[97/97] linked_values[24/0]
Partition[DC=tecmint,DC=lan] objects[380/283] linked_values[27/0]
Done with always replicated NC (base, config, schema)
Replicating DC=DomainDnsZones,DC=tecmint,DC=lan
Partition[DC=DomainDnsZones,DC=tecmint,DC=lan] objects[45/45] linked_values[0/0]
Replicating DC=ForestDnsZones,DC=tecmint,DC=lan
Partition[DC=ForestDnsZones,DC=tecmint,DC=lan] objects[18/18] linked_values[0/0]
Committing SAM database
Sending DsReplicaUpdateRefs for all the replicated partitions
Setting isSynchronized and dsServiceName
Setting up secrets database
Joined domain TECMINT (SID S-1-5-21-715537322-3397311598-55032968) as a DC

12. หลังจากที่ Ubuntu พร้อมซอฟต์แวร์ samba4 ได้รับการรวมเข้ากับโดเมนแล้ว ให้เปิดไฟล์การกำหนดค่าหลักของ samba และเพิ่มบรรทัดต่อไปนี้:

nano /etc/samba/smb.conf

เพิ่มข้อความที่ตัดตอนมาต่อไปนี้ลงในไฟล์ smb.conf

dns forwarder = 192.168.1.1
idmap_ldb:use rfc2307 = yes

   template shell = /bin/bash
   winbind use default domain = true
   winbind offline logon = false
   winbind nss info = rfc2307
        winbind enum users = yes
        winbind enum groups = yes

แทนที่ที่อยู่ ที่อยู่ IP ของตัวส่งต่อ DNS ด้วย IP ของตัวส่งต่อ DNS ของคุณเอง Samba จะส่งต่อคำค้นหาการแก้ไข DNS ทั้งหมดที่อยู่นอกโซนที่เชื่อถือได้ของโดเมนของคุณไปยังที่อยู่ IP นี้

13. สุดท้าย ให้รีสตาร์ท samba daemon เพื่อให้สอดคล้องกับการเปลี่ยนแปลง และตรวจสอบการจำลองแบบไดเรกทอรีที่ใช้งานอยู่โดยดำเนินการคำสั่งต่อไปนี้

systemctl restart samba-ad-dc
samba-tool drs showrepl

14. นอกจากนี้ เปลี่ยนชื่อไฟล์การกำหนดค่า Kerberos เริ่มต้นจากเส้นทาง /etc และแทนที่ด้วยไฟล์การกำหนดค่า krb5.conf ใหม่ที่สร้างโดย samba ขณะจัดเตรียม โดเมน

ไฟล์อยู่ในไดเรกทอรี /var/lib/samba/private ใช้ Linux symlink เพื่อเชื่อมโยงไฟล์นี้ไปยังไดเร็กทอรี /etc

mv /etc/krb5.conf /etc/krb5.conf.initial
ln -s /var/lib/samba/private/krb5.conf /etc/
cat /etc/krb5.conf

15. นอกจากนี้ ให้ตรวจสอบการตรวจสอบสิทธิ์ Kerberos ด้วยไฟล์ samba krb5.conf ขอตั๋วสำหรับผู้ใช้ผู้ดูแลระบบและแสดงรายการตั๋วแคชโดยออกคำสั่งด้านล่าง

kinit administrator
klist

ขั้นตอนที่ 4: การตรวจสอบบริการโดเมนเพิ่มเติม

16. การทดสอบแรกที่คุณต้องทำคือความละเอียดของ Samba4 DC DNS ในการตรวจสอบความถูกต้องของการแก้ไข DNS โดเมนของคุณ ให้ค้นหาชื่อโดเมนโดยใช้คำสั่ง host กับบันทึก AD DNS ที่สำคัญบางรายการดังที่แสดงในภาพหน้าจอด้านล่าง

เซิร์ฟเวอร์ DNS ควรเล่นซ้ำในตอนนี้ด้วยที่อยู่ IP สองคู่สำหรับแต่ละแบบสอบถาม

host your_domain.tld
host -t SRV _kerberos._udp.your_domain.tld  # UDP Kerberos SRV record
host -t SRV _ldap._tcp.your_domain.tld  # TCP LDAP SRV record

17. ระเบียน DNS เหล่านี้ควรมองเห็นได้จากเครื่อง Windows ที่ลงทะเบียนซึ่งมีการติดตั้งเครื่องมือ RSAT ไว้ เปิดตัวจัดการ DNS และขยายไปยังระเบียน TCP ของโดเมนของคุณดังที่แสดงในภาพด้านล่าง

18. การทดสอบถัดไปควรระบุว่าการจำลองแบบ LDAP โดเมนทำงานตามที่คาดไว้หรือไม่ ใช้ samba-tool สร้างบัญชีบนตัวควบคุมโดเมนตัวที่สอง และตรวจสอบว่าบัญชีได้รับการจำลองโดยอัตโนมัติใน Samba4 AD DC ตัวแรกหรือไม่

บน adc2:
samba-tool user add test_user
บน adc1:
samba-tool user list | grep test_user

19. คุณยังสามารถสร้างบัญชีจากคอนโซล Microsoft AD UC และตรวจสอบว่าบัญชีปรากฏบนตัวควบคุมโดเมนทั้งสองหรือไม่

ตามค่าเริ่มต้น บัญชีควรถูกสร้างขึ้นโดยอัตโนมัติบนตัวควบคุมโดเมน samba ทั้งสองตัว ค้นหาชื่อบัญชีจาก adc1 โดยใช้คำสั่ง wbinfo

20. ตามความเป็นจริง ให้เปิดคอนโซล AD UC จาก Windows ขยายเป็น Domain Controller และคุณจะเห็นเครื่อง DC ที่ลงทะเบียนไว้ทั้งสองเครื่อง

ขั้นตอนที่ 5: เปิดใช้งานบริการ Samba4 AD DC

21. หากต้องการเปิดใช้งานบริการ samba4 AD DC ทั่วทั้งระบบ ก่อนอื่นให้ปิดการใช้งาน Samba daemons เก่าและไม่ได้ใช้บางส่วน และเปิดใช้งานเฉพาะบริการ samba-ad-dc เท่านั้น โดยเรียกใช้คำสั่งด้านล่าง : :

systemctl disable smbd nmbd winbind
systemctl enable samba-ad-dc

22. หากคุณจัดการตัวควบคุมโดเมน Samba4 จากระยะไกลจากไคลเอนต์ Microsoft หรือคุณมีไคลเอนต์ Linux หรือ Windows อื่น ๆ ที่รวมอยู่ในโดเมนของคุณ ตรวจสอบให้แน่ใจว่าคุณระบุที่อยู่ IP ของ adc2 ไปยังอินเทอร์เฟซเครือข่าย การตั้งค่า IP เซิร์ฟเวอร์ DNS เพื่อให้ได้ระดับความซ้ำซ้อน

ภาพหน้าจอด้านล่างแสดงการกำหนดค่าที่จำเป็นสำหรับ Windows หรือไคลเอ็นต์ Debian/Ubuntu

สมมติว่า DC ตัวแรกที่มี 192.168.1.254 ออฟไลน์ ให้กลับลำดับของที่อยู่ IP ของเซิร์ฟเวอร์ DNS ในไฟล์การกำหนดค่า เพื่อไม่ให้พยายามค้นหาก่อนว่าไม่พร้อมใช้งาน เซิร์ฟเวอร์ DNS

สุดท้ายนี้ ในกรณีที่คุณต้องการดำเนินการตรวจสอบสิทธิ์เฉพาะเครื่องบนระบบ Linux ด้วยบัญชี Samba4 Active Directory หรือให้สิทธิ์รูทสำหรับบัญชี AD LDAP ใน Linux โปรดอ่านขั้นตอนที่ 2 และ 3 จากบทแนะนำสอนการใช้งาน จัดการโครงสร้างพื้นฐาน Samba4 AD จาก Linux Command Line