โลโก้ PowerDNS
VPN และ NetworkingGPLv2 (โอเพนซอร์ส)

PowerDNS คืออะไร และวิธีติดตั้งบน Cloud Server

PowerDNS คือ DNS Server ที่เก็บระเบียนไว้ในฐานข้อมูลแทนไฟล์ข้อความ และเปิด API ให้จัดการได้ จึงเหมาะกับระบบที่ต้องเพิ่มหรือแก้ระเบียนอัตโนมัติอยู่เสมอ

หมวดหมู่
VPN และ Networking
ติดตั้งบนเซิร์ฟเวอร์เองได้
ได้
สเปกเริ่มต้นที่แนะนำ
1 vCPU · RAM 2 GB
ไลเซนส์
GPLv2 (โอเพนซอร์ส)
เว็บทางการ
เปิดเว็บไซต์
สร้าง Cloud Server เดี๋ยวนี้
  • ISO/IEC 27001
  • ISO 22301
  • ISO 20000-1
  • CSA-STAR

Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย

PowerDNS คืออะไร

เมื่อองค์กรต้องแก้ระเบียน DNS บ่อย เช่น ผู้ให้บริการที่สร้างโดเมนย่อยให้ลูกค้าอัตโนมัติ หรือระบบที่ออกใบรับรองอัตโนมัติ การแก้ไฟล์ข้อความแล้วสั่งโหลดใหม่ทุกครั้งกลายเป็นข้อจำกัด

PowerDNS เก็บระเบียนไว้ในฐานข้อมูล การเพิ่มหรือแก้จึงเป็นเพียงการเขียนข้อมูลลงตาราง และมี API ให้เรียกใช้โดยตรง ทำให้ระบบอื่นจัดการ DNS ได้เองโดยไม่ต้องแตะไฟล์

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

แผนผังการวางระบบ PowerDNS บน Cloud Server หนึ่งเครื่องที่ Data Center ในประเทศไทย ผู้ใช้เข้าถึงผ่านไฟร์วอลล์ที่เปิดเฉพาะพอร์ต 53, 8081 ตัว PowerDNS และข้อมูลอยู่บนเครื่องเดียวกัน เริ่มต้นที่ 1 vCPU แรม 2 GB และมีสำเนาสำรองเขียนออกไปเก็บอีกไซต์หนึ่ง
PowerDNS ทำงานบน Cloud Server เครื่องเดียวได้ครบ เปิดเฉพาะพอร์ตที่จำเป็น ข้อมูลและสำเนาสำรองอยู่ใน Data Center ในประเทศไทย

ความสามารถเด่นของ PowerDNS

เก็บระเบียนในฐานข้อมูล

เพิ่มหรือแก้ระเบียนได้ทันทีโดยไม่ต้องแก้ไฟล์และโหลดใหม่

มี API สำหรับจัดการ

ให้ระบบอื่นเพิ่มหรือแก้ระเบียนอัตโนมัติได้

มีหน้าจอจัดการให้เลือกใช้

ทีมที่ไม่ถนัดบรรทัดคำสั่งจัดการโดเมนได้เอง

แยกส่วนตอบโดเมนกับส่วนค้นหา

ลดความเสี่ยงจากการเปิดการค้นหาสาธารณะโดยไม่ตั้งใจ

รองรับการลงลายเซ็นข้อมูล

เปิด DNSSEC ได้โดยจัดการกุญแจผ่านคำสั่งหรือ API

ใช้ PowerDNS ทำอะไรได้บ้าง

  • ผู้ให้บริการที่ต้องสร้างโดเมนย่อยให้ลูกค้าอัตโนมัติ
  • ระบบที่ต้องแก้ระเบียนอัตโนมัติเพื่อออกใบรับรอง SSL
  • องค์กรที่ต้องการหน้าจอให้ทีมจัดการ DNS เอง
  • ระบบที่ต้องซิงก์ข้อมูล DNS กับฐานข้อมูลอื่น

สเปก Cloud Server ที่แนะนำ

แผนภาพเทียบสเปก Cloud Server สำหรับ PowerDNS 3 ระดับ เริ่มจาก 1 vCPU แรม 2 GB ดิสก์ NVMe 20 GB ไปจนถึง 4 vCPU ขึ้นไป แรม 8 GB ขึ้นไป ดิสก์ NVMe 80 GB โดยเทียบขนาดแยกตามแต่ละคอลัมน์
เริ่มจากระดับที่ตรงกับการใช้งานตอนนี้ แล้วเพิ่ม CPU และ RAM ทีหลังได้บนเครื่องเดิม
ระดับการใช้งานvCPURAMDisk
เริ่มต้นไม่กี่โดเมน1 vCPU2 GBNVMe 20 GB
แนะนำหลายสิบโดเมนพร้อมหน้าจอจัดการ2 vCPU4 GBNVMe 40 GB
ใช้งานหนักผู้ให้บริการที่มีโดเมนจำนวนมาก4 vCPU ขึ้นไป8 GB ขึ้นไปNVMe 80 GB

ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ

วิธีติดตั้ง PowerDNS บน Cloud Server ของ THAI DATA CLOUD

ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server

สิ่งที่ต้องเตรียม

  • MariaDB หรือ PostgreSQL สำหรับเก็บระเบียน
  • Ubuntu Server 24.04 LTS หรือ Rocky Linux 9
  • ไอพีสาธารณะคงที่สำหรับเซิร์ฟเวอร์ที่ตอบสู่ภายนอก

ทดสอบบน Ubuntu Server 24.04 LTS

  1. 1

    ติดตั้งบริการ

    sudo apt update
    sudo apt -y install pdns-server pdns-backend-mysql mariadb-server
  2. 2

    สร้างฐานข้อมูลและตาราง

    sudo mysql -e "CREATE DATABASE pdns;"
    sudo mysql -e "CREATE USER 'pdns'@'localhost' IDENTIFIED BY 'ChangeThisStrongPassword';"
    sudo mysql -e "GRANT ALL ON pdns.* TO 'pdns'@'localhost'; FLUSH PRIVILEGES;"
    sudo mysql pdns < /usr/share/pdns-backend-mysql/schema/schema.mysql.sql
  3. 3

    ตั้งค่าให้ใช้ฐานข้อมูลและเปิด API

    # /etc/powerdns/pdns.conf
    launch=gmysql
    gmysql-host=127.0.0.1
    gmysql-dbname=pdns
    gmysql-user=pdns
    gmysql-password=ChangeThisStrongPassword
    
    api=yes
    api-key=PasteALongRandomStringHere
    webserver=yes
    webserver-address=127.0.0.1
  4. 4

    เริ่มบริการ

    sudo systemctl restart pdns
    sudo systemctl enable pdns
  5. 5

    เพิ่มโซนและระเบียนผ่านคำสั่ง

    sudo pdnsutil create-zone example.com ns1.example.com
    sudo pdnsutil add-record example.com www A 203.0.113.10
    sudo pdnsutil add-record example.com @ A 203.0.113.10
  6. 6

    ติดตั้งหน้าจอจัดการและตั้งการสำรอง

    ติดตั้งหน้าจอจัดการที่เชื่อมกับ API เพื่อให้ทีมแก้ระเบียนได้เอง และตั้งสำรองฐานข้อมูลตามรอบเพราะระเบียนทั้งหมดอยู่ในนั้น

เก็บคีย์ของ API ไว้อย่างปลอดภัยและไม่เปิดพอร์ตของ API สู่อินเทอร์เน็ต เพราะใครที่มีคีย์นี้เปลี่ยนปลายทางของโดเมนได้ทั้งหมด

พอร์ตที่ต้องเปิดบน Firewall

พอร์ตโปรโตคอลใช้ทำอะไร
53UDP และ TCPตอบคำถาม DNS
8081TCPAPI สำหรับจัดการ (เปิดเฉพาะภายในเครื่อง)

สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ

  • ไม่เปิดพอร์ต API สู่อินเทอร์เน็ตและเก็บคีย์ไว้อย่างปลอดภัย
  • ใช้ผู้ใช้ฐานข้อมูลที่มีสิทธิ์เท่าที่จำเป็น
  • เปิดการลงลายเซ็นข้อมูลสำหรับโดเมนสำคัญ
  • ตั้งเซิร์ฟเวอร์อย่างน้อยสองเครื่องคนละที่
  • สำรองฐานข้อมูลตามรอบเพราะระเบียนทั้งหมดอยู่ในนั้น

ทำไมควรรัน PowerDNS บน Cloud Server ของ THAI DATA CLOUD

Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง

รันบน Cloud Server ในไทยเพื่อให้ผู้ใช้ในประเทศได้คำตอบเร็ว

ใช้ API สร้างระเบียนอัตโนมัติเมื่อระบบสร้างเซิร์ฟเวอร์หรือโดเมนย่อยใหม่

แยกฐานข้อมูลไปเครื่องอื่นในวง Private Network เมื่อจำนวนโดเมนโต

คำถามที่พบบ่อยเกี่ยวกับ PowerDNS

PowerDNS ต่างจาก BIND อย่างไร

PowerDNS เก็บระเบียนในฐานข้อมูลและมี API จึงเหมาะกับระบบที่ต้องแก้ระเบียนอัตโนมัติบ่อย ส่วน BIND ใช้ไฟล์ข้อความเป็นหลักและมีเอกสารสะสมมากกว่า ทีมที่ต้องการหน้าจอและระบบอัตโนมัติมักเลือก PowerDNS

มีหน้าจอจัดการมาให้ไหม

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

ใช้เป็นตัวค้นหาชื่อให้เครื่องภายในได้ไหม

ได้แต่ต้องใช้อีกโปรแกรมหนึ่งของโครงการเดียวกันที่แยกไว้ต่างหาก ซึ่งเป็นข้อดีด้านความปลอดภัยเพราะไม่เผลอเปิดการค้นหาสาธารณะบนเซิร์ฟเวอร์ที่ตอบโดเมนสู่ภายนอก

ให้เราติดตั้ง PowerDNS ให้ฟรี บน Cloud Server ในไทย

แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด