ตัวอย่างการติดตั้งและคอนฟิกใช้งาน DNS Server บน ubuntu 5.10 ผ่าน webmin

โดย อดิศร  ขาวสังข์
เขียนเมื่อ 1/02/2006

บทนำ
บทความนี้เป็นตัวอย่างการติดตั้ง Name Server บน ubuntu 5.10 พร้อมตัวอย่างการคอนฟิกใช้งาน  โดยการคอนฟิกผ่าน webmin ซึ่งได้ทดลองบน ubuntu แบบ Desktop สำหรับการคอนฟิกใช้งานบน Distribution อื่น ๆ เช่น Fedora ก็สามารถประยุกต์บทความนี้ไปใช้งานได้ครับ  เพราะต่างกันแค่ตำแหน่งของการติดตั้งโปรแกรม bind และส่วนประกอบที่ไม่จำเป็นเล็กน้อยเท่านั้น

ขั้นตอนการติดตั้ง DNS บน ubuntu
หมายเหตุ ในที่นี้เลือกติดตั้งโดยใช้โปรแกรม Synapitic Package Manager (ผ่านเมนู System --> Administration --> Add Application) ซึ่งท่านอาจจะติดตั้งโดยใช้คำสั่ง apt-get ก็ไำ้ด้นะครับ

  1. เลือกเมนู System --> Administration --> Add Application
  2. เพื่อให้สามารถรองรับการติดตั้งแบบ online ไปยัง Internet ได้ ให้ทำการปรับปรุงค่าของคลังข้อมูล (Repositories) ซึ่งเมื่อปรากฎหน้าต่าง Synaptic Package Manager แล้วให้เลือกเมนู Settings --> Repositores  และควรจะมีเพิ่ม Software Source ดังรูป



  3. ให้คลิ๊กปุ่ม Search เพื่อค้นหาคำว่า bind แล้วให้ทำการ mark โปรแกรมที่ชื่อ bind9 เพื่อเตรียมที่จะติดตั้ง  และให้ค้นหาคำว่า webmin-bind แล้วทำการ mark เพื่อจะติดตั้ง  จากนั้นคลิ๊กปุ่ม Apply และเมื่อเจอหน้าต่างคำถามก็ให้ทำการเลือกเพื่อติดตั้งโปรแกรม (To be installed)





  4. ให้ไปที่ shell prompt แล้วสั่ง restart service ของ bind ดังรูป



  5. ทำการเปิดใช้งาน webmin ผ่าน Browser  และเนื่องจาก webmin ทำงานโดยใช้ ssl ก็ให้คลิ๊ก Link ตามคำแนะนำ แล้วจะได้ผลดังรูป



ตัวอย่างความต้องการ
สมมุติว่าเราได้จดทะเบียนโดเมนชื่อ sornlinux.net กับ Internic เอาไว้ และได้วางแผนไว้ว่าจะต้องมีชื่อโฮสต์ประเภทต่าง ๆ และ IP Address ของโฮสต์เป็นดังตาราง  ให้แสดงวิธีการติดตั้งโปรแกรม bind พร้อมการคอนฟิกใช้งาน Forward Master Zone และ Reverse Master Zone เพื่อรองรับโดเมนดังกล่าวผ่าน webmin  โดยในส่วนของ Reverse ให้ทำ Reverse เฉพาะ name server ประจำโดเมนเท่านั้น

ชื่อโฮสต์

ประเภท

IP Address

ns1.sornlinux.net Nameserver (Master Name Server) 202.129.16.18
ns2.sornlinux.net Nameserver (Master Name Server) 202.129.16.19
www.sornlinux.net Host 202.129.16.20
mail1.sornlinux.net Mail Exchanger 202.129.16.21
mail2.sornlinux.net Mail Exchanger 202.129.16.22
mail.sornlinux.net Alias to mail1.sornlinux.net IP ของ mail1.sornlinux.net

ขั้นตอนการคอนฟิก Bind ให้สามารถตองรับความต้องการดังกล่าวผ่าน webmin

การสร้าง Forward Master Zone

  1. คลิ๊กแท็ป Server แล้วคลิ๊กไอคอน Bind DNS Server จากนั้นเลือกไอคอน Create master zone ดังรูป



  2. ป้อนค่าต่าง ๆ ที่จำเป็นตามรูปแล้วคลิ๊กปุ่ม Create โดยค่าของ Master Server ก็ให้ป้อนชื่อ host ที่เป็นหรือจะเป็น Master Server ซึ่งในที่นี้ค่าตามตารางคือ ns1.sornlinux.net ดังรูป



  3. ซึ่งยังไม่ปรากฎ Zone ใหม่ใน Existing DNS Zones ดังรูป เนื่องจากยังไม่ได้กำหนดสิทธิ์การเข้าใช้งาน



  4. ให้ทำการกำหนด Access Control List ด้วยการกำหนด IP Address ในการเข้าใช้งานดังรูป



  5. จากนั้นก็จะปรากฎ Zone ใหม่ที่ได้เพิ่มไปดังรูป



  6. เมื่อคลิ๊กเข้าไปที่ไอคอน sornlinux.net จะำ้ได้ดังรูปข้างล่างจะเห็นว่ามี Name Server แค่หนึ่งตัวแต่จากโจทย์กำหนดให้มี Name Server จำนวนสองตัวดังนั้นให้เพิ่ม Name Server อีกตัวด้วยการคลิ๊กปุ่มไอคอน Name Server



  7. ทำการป้อนค่า Name Server ตัวที่สองดังรูป โดยอย่าลืมเครื่องหมาย “.” ต่อท้าย



  8. แล้วจะได้ Name Server จำนวน 2 ตัวดังรูป



  9. ให้คลิ๊กไอคอน Mail Server เพื่อเพิ่ม Mail Server ประจำโดเมนดังรูป



  10. จากนั้นให้เพิ่ม Mail Server ตัวที่สองแล้วจะได้ผลดังรูป



  11. เมื่อกลับมายังหน้าต่าง Edit Master Zone จะได้ผลดังรูปคือ Name Server สองตัว และ Mail Server สองตัว



  12. ทำการ restart service ของ bind อีกครั้ง

  13. จากนั้นใช้คำสั่ง host เพื่อทดสอบการป้อนค่า Name Server และ Mail Server ดังรูป  (อย่าลืมเซ็ตที่การ์ดแลนให้ DNS เป็นเครื่องของตัวเองก่อนนะครับ)



  14. ทำการคลิ๊กไอคอน Address ของหน้าต่าง Edit Master Zone เพื่อทำการเพิ่ม host (type A) ดังรูป



  15. ทำการเพิ่ม host ให้ครบทั้งหมดแล้วจะได้ผลดังรูป



  16. ทำการเพิ่ม Alias โดยให้คลิ๊กไอคอน Name Alias ของหน้าต่าง Edit Master Zone แล้วสร้าง Alias (CNAME) ดังรูป



  17. จากนั้นจะได้ผลการสร้าง Alias ดังรูป ซึ่งหมายถึงเมื่อมีการเรียกใช้งาน mail.sornlinux.net ก็จะเรียกไปใช้งานจริงที่ host ชื่อว่า mail1.sornlinux.net



  18. จากนั้นเมื่อกลับไปยังหน้าต่าง Edit Master Zone ก็จะได้ผลของการเพิ่มค่าต่าง ๆ เป็นดังรูป



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



    การสร้าง Reverse Master Zone

  20. จากนั้นทำการ สร้าง Reverse Master Zone โดยการคลิ๊กที่ลิงค์ Create Master Zone ของExisting DNS zone แล้วเลือกชนิดเป็น Reverse (Address to Names) แล้วทำการป้อนค่าดังรูป  ซึ่งค่าที่ต้องป้อนเช่น
    - Network ให้ป้อนNetwork IP Address หรือ IP 3 ชุดแรกที่ใช้งาน
    - Master ให้ป้อนค่าของ Name Server
    และเมื่อป้อนค่าต่าง ๆ เสร็จแล้วให้คลิ๊กปุ่ม Create



  21. เมื่อกลับมายังหน้าต่าง Edit Master Zone ดังรูปจะเห็นว่า Name Server มีแค่ตัวเดียวก็ให้คลิ๊กปุ่ม Name Server เพื่อเพิ่ม Name Server ตัวที่สองเข้าไปด้วย



  22. เมื่อเพิ่ม Name Server ให้กับ Reverse Master Zone ครบสองตัวแล้วจะได้ผลดังรูป



  23. เมื่อกลับมาที่หน้าต่าง Edit Master Zone ให้คลิ๊กปุ่ม Reverse Address เพื่อทำการเพิ่ม Reverse Address ของ Name Server ทั้งสองตัวตามที่โจทย์กำหนดดังรูป



  24. เมื่อเพิ่ม Reverse Address ของ Name Server ทั้งสองตัวแล้วจะได้ผลดังรูป



  25. จากนั้นให้ใช้คำสั่ง nslookup เพื่อตรวจสอบความถูกต้องทั้งของ Forward Master Zone และ Reverse Master Zone ทั้งหมดดังรูป



  26. สำหรับระบบไฟล์ของ bind บน Ubuntu จะอยู่ที่ /etc/bind ดังรูป



  27. โดย Config File หลักคือไฟล์ /etc/bind/named.conf ซึ่งข้อความในไฟล์เป็นดังรูป



  28. และที่ส่วนท้ายของไฟล์ name.conf มีการ include ไฟล์ /etc/bind/named.conf.local มาใช้ด้วยค่า       
    include “/etc/bind/named.conf.local”; ซึ่งไฟล์นี้เองที่ใช้สำหรับเก็บค่าของ Zone ใหม่ที่เราเพิ่มเข้าไป

  29. เมื่อเปิดไฟล์ /etc/bind/named.conf.local ดูจะมีข้อความในไฟล์ดังรูป  ซึ่งจะเห็นว่าประกอบด้วย Zone ใหม่จำนวนสอง zone ที่เราเพิ่มเข้าไปใหม่คือ sornlinux.net ซึ่งเป็น Forward และ 16.129.202.in-addr.arpa ซึ่งเป็น Reverse



  30. โดยForward Master Zone ที่เป็น sornlinux.net ได้เก็บข้อมูลของ host ทั้งหมดไว้ที่ไฟล์ /etc/bind/sornlinux.net.hosts ซึ่งเมื่อเปิดไฟล์นี้ดูจะได้ดังรูป



  31. และ Reverse Master Zone ได้เก็บข้อมูลของ IP Address ทั้งหมดไว้ที่ไฟล์ /etc/bind/202.129.16.rev ซึ่งเมื่อเปิดไฟล์นี้ดูจะเป็นดังรูป



    การสร้าง Forward Slave Zone


  32. ที่เครื่อง Slave Zone ซึ่งเป็น Name Server อีกเครื่องที่ได้มีการติดตั้งโปรแกรม bind และ webmin ไว้เรียบร้อยแล้ว ให้เปิด webmin ผ่าน Browser แล้วคลิ๊กปุ่ม Create slave zone ดังรูป



  33. เมื่อปรากฏหน้าต่าง Create Slave Zone ให้ป้อนข้อมูล  โดย Domain name ให้ตรงกับชื่อของ Master Zone ส่วน Master Server ให้ป้อน IP Address ของ Master Server ดังรูป  จากนั้นให้คลิ๊กปุ่ม Create



  34. เมื่อได้หน้าต่างใหม่ดังรูปให้คลิ๊กปุ่ม Force Update แล้วก็คลิ๊ก Link ที่ชื่อว่า Return to zone List



  35. จากนั้นเราก็จะเห็น Slave Zone อันใหม่ที่เราได้สร้างขึ้นดังรูป



  36. และเมื่อคลิ๊กทื่ชื่อ Zone ที่ชื่อว่า sornlinux.net แล้วจะได้ค่าของ host ต่าง ๆ ดังรูป ซึ่ง host ต่าง ๆ ที่ได้มาเราไม่ได้สร้างขึ้นเองแต่โปรแกรม bind จะทำการสำเนาค่าทั้งหมดมาจาก Master Server ดังรูป



  37. จากนั้นให้เปลี่ยนไดเร็คทอไรไปยัง /etc/bind และทำการเปิดไฟล์ named.conf.local ขึ้นมาจะเห็นข้อความในไฟล์ดังรูป  กล่าวคือมีการสร้าง zone ชื่อว่า sornlinux.net เป็นชนิด slave มี master เป็น 172.24.51.246 และไฟล์ที่ทำหน้าที่เก็บข้อมูลของโดเมน์ชื่อว่า /var/cache/bind/sornlinux.net.hosts



  38. และเมื่อเปิดไฟล์ /var/cache/bind/sornlinux.net.hosts ขั้นมาดูแล้วจะเห็นข้อความในไฟล์ดังรูป


จบครับ