BIND9 (DNS Server) Chatchai J...
-
Upload
nguyennhan -
Category
Documents
-
view
226 -
download
0
Transcript of BIND9 (DNS Server) Chatchai J...
DNS Server
● DNS Server บน Debian มมีหลายตตัว– DNSmasq สสาหรตับ quick deployment
● ใชช้งง่าย, สะดวก, เรร็ว– powerDNS
● เปร็นทมีที่นนิยม … แตง่ผมยตังไมง่เคยใชช้ … ขอไมง่พพูดถถึง
– bind9 ของ ISC
● เปร็นหนถึที่งใน “เสาหลตัก” ของ internet
● ใชช้งานมานานมาก และ site สง่วนใหญง่จะใชช้ bind สสาหรตับ DNS
BIND9
● Bind – version 9
● Configuration คง่อนขช้างซตับซช้อน● มมีหลายองคค์ประกอบ● มมีหนตังสสือหลายเลง่ม ทมีที่เขมียนเกมีที่ยวกตับ การใชช้งาน BIND
สสาหรตับ DNS โดยเฉพาะe.g. http://shop.oreilly.com/product/9780596100575.do
● ในทมีที่นมีนี้จะพพูดเฉพาะ เทง่าทมีที่จสาเปร็น
ตนิดตตันี้ง● Install package
$ sudo aptget install bind9 bind9utils bind9host
● configuration– config files /etc/bind
– zone files /var/cache/bind
● ทดสอบ$ sudo rndc status
rndc
● “remote” name daemon control
$ sudo service bind9 restart$ sudo rndc reload
$ sudo rndc refresh
– แตง่ควรใชช้งานบน localhost ของ DNS Server (การรตับสง่ง key
จะไมง่ encrypt? – ไมง่แนง่ใจ)
– server คสือตตัว named เองแตง่ run ทมีที่ port 953 (default)
– port 53 สสาหรตับการใหช้บรนิการขช้อมพูล
config file หลตัก (debian)
● /etc/bind/named.conf
– options – สสาหรตับควบคคุม named server
– local – สสาหรตับ zone file ของเรา– defaults-zones สสาหรตับ predefined zone และ root
● ไมง่จสาเปร็นจะตช้องไปแกช้ไข
include "/etc/bind/named.conf.options";include "/etc/bind/named.conf.local";include "/etc/bind/named.conf.defaultzones";
Two Roles of Name Server
● ดพู http://www.cert.org/archive/pdf/dns.pdf – note-to-self
● Role: Resolving Name Server, Advertising Name Server● Cache Server (Resolving Name Server)
– ไมง่มมีขช้อมพูล zone ของตตัวเอง– ทสาหนช้าทมีที่ resolve address ใหช้กตับ client
● Authoriative Server (Advertising Name Server)– Primary & Secondary DNS
● เปร็น เจช้าของ ของขช้อมพูลนตันี้น
DNS Cache Server
● บรรทตัด nameserver ใน /etc/resolv.conf
– ตอบคสาถามแกง่ client วง่า name หรสือ address นตันี้นมมี ip address หรสือ ชสืที่อ hostname เปร็นอะไร
– โดยทตัที่วไป จะ recursive lookup จนกระทตัที่งไดช้คสาตอบ แลช้วสง่งกลตับใหช้ client
Primary/Secondary DNS
● เจช้าของขช้อมพูล– มมี zone files ของตตัวเอง– ใชช้ขช้อมพูลใน zone file สสาหรตับตอบ query ทมีที่รตับมา– โดยทตัที่วไปจะรตับ query request จาก DNS Cache Server อมีกทมีนถึง
● Primary Server– Authorized zone files
● Secondary Server
– เอาขช้อมพูล zone มาจาก primary อมีกทมี– เปร็น backup server
Dual Roles
● ใชช้ DNS Server ทสาหนช้าทมีที่ทตันี้ง Cache Server และ Authoriative Server ไดช้ใหม?
– CoE dept. ใชช้อยง่พู● ninedots.coe.psu.ac.th (primary for coe.psu.ac.th)● fivedots.coe.psu.ac.th (secondary for coe.psu.ac.th)
● ทตันี้งสองตตัวเปร็น DNS Cache Server สสาหรตับ 172.30.0.0/16, 172.31.0.0/16
● แตง่ไมง่ควรทสา● ดพูคสาแนะนสาจาก
http://www.intodns.com/
http://www.dnsinspect.com/
DNS Cache Config
● ใชช้งานสสาหรตับเปร็น Cache Server อยง่างเดมียว– เพนิที่มใน /etc/bind/named.conf.options
allowquery { any; }; # default
● หรสือallowquery { 172.30.0.0/16; }; # limit access to CoE dept.
– ใน options { … }; สสาหรตับระบคุวง่า client ใดๆบช้างทมีที่สามารถ query ไดช้– ดพูเรสืที่อง ACL ของ bind9 จาก
http://www.zytrax.com/books/dns/ch7/acl.html
DNS Cache Config (ตง่อ)
● สสาหรตับ DNS Server ภายใน PSU Network จะตช้องสง่ง query ใหช้กตับ {ns,ns2}.psu.ac.th
– firewall ของ PSU CC filter เอาไวช้ (เพสืที่อแกช้ปตัญหา malware)
– จะตช้องเพนิที่มforward only;
forwaders { 192.100.77.2; 192.100.77.5; };
– ใน options { … };
Primary DNS Config
● เพนิที่ม zone config ใน/etc/bind/named.conf.local
– เชง่น สสาหรตับ domain lsa56.org
type → master/slave/hints/forward
file → path relative กตับ “directory” ใน options
(default คสือ /var/cache/bind)
zone "lsa56.org" { type master; file "master/lsa56.org";};
Zone file
● ต.ย. zone สสาหรตับ lsa56.org อยง่พูใน /var/cache/bind/master/lsa56.org
$ORIGIN .$TTL 14400 ; 4 hourslsa56.org IN SOA ns.lsa56.org. root.lsa56.org. ( 2013111501 ; serial 14400 ; refresh (4 hours) 3600 ; retry (1 hour) 2419200 ; expire (4 weeks) 14400 ; minimum (4 hours) ) NS ns.lsa56.org. MX 10 mx.lsa56.org.$ORIGIN lsa56.org.ns A 192.100.77.175mx A 192.100.77.175
Zone file (cont)
● SOA RR (Resource Record)– name ttl class rr name-server email-addr (sn ref ret ex min)
lsa56.org IN SOA ns.lsa56.org. root.lsa56.org.
● name – lsa56.org ($ORIGIN .)
● ttl – ใชช้ $TTL ทมีที่กสาหนดไวช้● class – IN (internet ไมง่ตช้องเปลมีที่ยน)
● rr – SOA ระบคุ type ของ record นมีนี้● name-server – ns.lsa56.org
● email-addr – [email protected] (เปลมีที่ยน @ เปร็น .)
Zone file (cont)
● (serial refresh retry expire minimum)( 2013111501 ; serial
14400 ; refresh (4 hours)
3600 ; retry (1 hour)
2419200 ; expire (4 weeks)
14400 ; minimum (4 hours)
)
Zone file (cont)
● Other resource records
NS ns.lsa56.org. MX 10 mx.lsa56.org.$ORIGIN lsa56.org.ns A 192.100.77.175mx A 192.100.77.175
ทดสอบ$ sudo service named restart
$ grep named /var/log/syslog
● ถช้าไมง่มมี error กร็ทดสอบ query ไดช้$ host ns.cheshirecat2012.net localhost
เพนิที่ม resource record ชนนิดอสืที่น● TXT – description● AAAA – IPv6 Address
$ORIGIN lsa56.org.
60 IN TXT “v=spf1 a a:smtp.lsa56.org ~all”
www 60 IN AAAA 2001:db8:9009::1
smtp 60 IN A 1.2.3.4
Reverse Map Address
● ภาพจาก http://www.zytrax.com/books/dns/ch3/
Reverse Map Address
● ใชช้แปลงจาก address เปร็น name
● domain ใชช้ “in-addr.arpa”
● Reverse for 172.30.0.0/24● zone file name “0.30.172.in-addr.arpa”● Reverse for 172.30/16● Zone file name “30.172.in-addr.arpa”
Reverse Zone File
● ขช้อมพูลใน Zone File
– SOA เหมสือนเดนิม– ใชช้ PTR Record สสาหรตับระบคุ address
; for zone 30.172.inaddr.arpa5.0 IN PTR fivedots.coe.psu.ac.th.
9.0 IN PTR ninedots.coe.psu.ac.th.; for zone 0.30.172.inaddr.arpa5 IN PTR fivedots.coe.psu.ac.th.9 IN PTR ninedots.coe.psu.ac.th.