DNSSEC และ DANE ช่วยป้องกันการโดน Pharming และป้องกันการออก Certficate ปลอมหรือซ้ำซ้อน

การทำ DNSSEC ช่วยป้องกันการโดน Pharming (หรือเรียก DNS spoofing หรือ DNS cache poisoning) เพราะเป็นการ signed ตัว DNS Server ที่ใช้งานคู่กับ domain name ที่จดกับผู้รับจด domain เวลาตรวจสอบคำตอบที่ Resolver จะเช็คว่ามาจาก Name server ตัวจริงหรือไม่ ช่วยให้การได้รับ IP ส่งให้ client มีความถูกต้องเสมอ (ทดสอบแบบง่ายๆ คือแก้ไขไฟล์ hosts บนเครื่องให้วิ่งไปอีกเครื่องหนึ่งที่มีข้อมูลเหมือนกันทุกประกาศ ทำตัวเหมือนโดน trojan มาเปลี่ยนบนเครื่องให้ไปเครื่องปลอมเพื่อหลอกเอาข้อมูล)

image 

image

image

image

 

สำหรับการทำ DANE ป้องกันการถูก fake certificate หรือเจอ Certification Authority ออกใบ certificate ซ้ำซ้อน เพราะเราจะเอา fingerprint ของ certificate ใส่ลงใน TLSA record บน DNS Server ทำให้ตอนตัว browser เรียกเว็บ จะมีการตรวจสอบว่า certificate ที่ได้มา มี fingerprint ตรงกับที่อยู่ใน TLSA record หรือไม่

image 

image

 

ซึ่งทั้งสองอย่างยังไม่ค่อยเจอเว็บทั่วไปทำสักเท่าไหร่ และ browser ทั้ง 3 อันดับแรก ถ้าไม่ลง plugins ก็ยังตรวจสอบไม่ได้ครับ แต่เชื่อว่าอีกสักพักคงทยอยค่อยๆ ปรับกันมาแล้ว และเว็บในไทยที่เท่าที่เจอยังไม่ค่อยมีใครทำขนาด Google, Facebook, Micorosft ยังไม่ทำเลย

การทำให้เว็บรองรับ DNSSEC และ DANE ช่วยเพิ่มระบบในการป้องกันการที่ผู้ใช้งานเข้าใช้บริการของเว็บต่างๆ ได้ปลอดภัยมากขึ้นจากการทำ Man-in-The-Middle attacks ได้

วิดีโออธิบายการทำงานของ DNSSEC และ DANE

Tutorial on DANE and DNSSEC

ตัวอย่างเว็บที่ implement DNSSEC หรือ DANE

อ้างอิง

ข้อควรทราบของ Virtual Public IP (VIP) บน Windows Azure Virtual Machines กับ DNS

บน Windows Azure ยังไม่มีบริการแบบเดียวกับ Amazon EC2 Elastic IP Addresses ซึ่งเป็นการเช่าชุดหรือเลข IP สำหรับใช้งานกับบริการประมวลผลต่างๆ โดยไม่มีการเปลี่ยนแปลงใดๆ หรือพูดง่ายๆ คือเป็นเจ้าของเพียงผู้เดียว และควบคุมการใช้งานได้ (ถ้าจ่ายเงินไปตลอด)

ซึ่งบน Windows Azure นั้น ตัว Virtual Machines จะใช้ได้แต่ Virtual Public IP (VIP) ซึ่งมีข้อควรจำ (หรือบางคนเรียกว่าข้อเสียก็ได้) ตรงที่จะเปลี่ยนแปลงทุกครั้งที่ Shutdown หรือลบ Virtual Machines แล้วสร้าง Virtual Machines จาก Image Data ชุดเดิม และเราควบคุม VIP ไม่ได้ เพราะฉะนั้น ใช้ A (address record) Type Record บน Zone file ใน DNS ไม่ได้เลย เพราะต้องกลับมาเปลี่ยนตลอดถ้า Virtual Machines ตัวนั้นพังและต้องสร้างใหม่ ทำให้กำหนดการใช้งานผ่าน VIP จะมีปัญหาตอนโยก development/staging machines ด้วย เพราะมันดิ้นไป-มา

แต่แน่นอนว่าคำแนะนำคือให้ใช้ CNAME (alias record) Type Record แทน เพื่อให้ CNAME จับคู่กับ DNS แทนจะทำงานได้ดีก็ตาม (ลบจุดด้อยได้) แต่ก็มีปัญหาต่อมาคือ CNAME มันกำหนด root domain name ไม่ได้ ต้องใช้ A Type Record แล้วกำหนด IP เท่านั้น ซึ่งต้องหาบริการหรือทำ domain forwarding กับตัว root domain name ร่วมด้วย ไม่งั้นทำงานจะมีปัญหาเวลาคนพิมพ์ domain name จาก root เข้าระบบเว็บที่ทำงานบน Windows Azure Virtual Machines ล้วนๆ ไม่ได้

แนะนำ zonomi บริการ DNS hosting ราคาไม่แพงแต่ประสิทธิภาพดี

แนะนำ DNS hosting เพราะจากที่ใช้มาต้องบอกว่า UI เรียบง่ายดี ถ้ารู้เรื่อง Domain Name System (DNS) zone file อยู่แล้วคงจะใช้งานไม่ยากมากนัก โดยรวมแล้วที่นี่ Update ตัว DNS รวดเร็วดี ใครอยากทดลองใช้ ก็มีแบบฟรีให้ โดยให้ 1 domain ใช้ได้ 10 records แต่ถ้ามากกว่านั้น ราคาต่อปีก็ไม่แพงจนเกินไป แต่ถ้าใช้ร่วมกับ google apps อาจไม่เพียงพอคงต้องจ่ายเพิ่มเป็นรายปี แต่ส่วนตัวใช้กับ domain อยู่ 17 ตัวก็เสียเดือนละ $2.55 แลกกับความง่ายและระบบ DNS แบบ Fully redundant, fault-tolerant, reliable name servers (ระหว่าง London, Dallas, New York และ Auckland) ทั้งหมด 4 ระบบ มีระบบ API สามารถเขียนระบบเชื่อมต่อทำ Dynamic DNS ได้ และ รองรับ pingability.com สำหรับทำ service monitor ต่างๆ ซึ่งถ้าใครต้องการใช้ DNS Server ที่เป็นระบบโดยไม่อยากทำเอง และแยกจาก Server บริการต่างหาก อย่างเช่น Web หรือ Mail ด้วย ส่วนตัวแล้วนั้น ดูจะถือว่าคุ้มค่ามากๆ

Zonomi – DNS hosting – Zonomi