{"id":19556,"date":"2017-05-11T06:02:46","date_gmt":"2017-05-10T22:02:46","guid":{"rendered":"https:\/\/2blog.ilc.edu.tw\/25793\/2017\/05\/11\/%e5%bb%ba%e7%ab%8b-cache-only-dns\/"},"modified":"2021-03-18T17:25:02","modified_gmt":"2021-03-18T09:25:02","slug":"%e5%bb%ba%e7%ab%8b-cache-only-dns","status":"publish","type":"post","link":"https:\/\/2blog.ilc.edu.tw\/25793\/2017\/05\/11\/%e5%bb%ba%e7%ab%8b-cache-only-dns\/","title":{"rendered":"\u5efa\u7acb Cache-only DNS"},"content":{"rendered":"<p>\u5b89\u88dd\u5728 Proxy Server \u4e0a\uff0c\u7d66 Proxy Server \u4f7f\u7528\uff0c\u70ba\u4e86\u52a0\u5feb DNS \u67e5\u8a62\u7684\u901f\u5ea6\uff0c\u628a\u67e5\u8a62\u904e\u7684 DNS \u8a18\u9304\u5feb\u53d6\u8d77\u4f86\u3002<br \/>\u53c3\u8003\u7db2\u7ad9\uff1a<br \/><a href=\"http:\/\/download.ithome.com.tw\/article\/index\/id\/2480\" target=\"_blank\" rel=\"noopener noreferrer\">CentOS Cache-only DNS\u4f3a\u670d\u5668\u5b89\u88dd\u8a2d\u5b9a[1]:::iThome Download-\u4f60\u8981\u7684\u8edf\u9ad4\u5728\u9019\u88e1:::<\/a><\/p>\n<p>1. \u5b89\u88dd\u5957\u4ef6<br \/># <span style=\"color: #ff0000\">yum install bind bind-chroot bind-utils<\/span><\/p>\n<p>2. \u4fee\u6539\u8a2d\u5b9a\u6a94\u00a0<span style=\"color: #0000ff\"> \/etc\/named.conf<\/span><br \/># <span style=\"color: #ff0000\">cp \/etc\/named.conf \/etc\/named.conf.$(date +%F)<\/span><br \/># <span style=\"color: #ff0000\">egrep -v &#8216;^$|\/\/&#8217; \/etc\/named.conf<\/span><br \/><span style=\"color: #0000ff\">options {<\/span><br \/><span style=\"color: #0000ff\">#\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 listen-on port 53 { 127.0.0.1; };<\/span><br \/><span style=\"color: #0000ff\">#\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 listen-on-v6 port 53 { ::1; };<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 directory\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &#8220;\/var\/named&#8221;;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 dump-file\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &#8220;\/var\/named\/data\/cache_dump.db&#8221;;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 statistics-file &#8220;\/var\/named\/data\/named_stats.txt&#8221;;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 memstatistics-file &#8220;\/var\/named\/data\/named_mem_stats.txt&#8221;;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 allow-query\u00a0\u00a0\u00a0\u00a0 { localhost; };<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/*<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &#8211; If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &#8211; If you are building a RECURSIVE (caching) DNS server, you need to enable<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 recursion.<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 &#8211; If your recursive DNS server has a public IP address, you MUST enable access<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 control to limit queries to your legitimate users. Failing to do so will<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 cause your server to become part of large scale DNS amplification<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 attacks. Implementing BCP38 within your network would greatly<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 reduce such attack surface<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 *\/<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 recursion yes;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 dnssec-enable yes;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 dnssec-validation yes;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \/* Path to ISC DLV key *\/<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 bindkeys-file &#8220;\/etc\/named.iscdlv.key&#8221;;<\/span><br \/><span style=\"color: #ff0000\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 forward only;<\/span><br \/><span style=\"color: #ff0000\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 forwarders {<br \/>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 168.95.1.1;<\/span><br \/><span style=\"color: #ff0000\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 8.8.8.8;<\/span><br \/><span style=\"color: #ff0000\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 };<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 managed-keys-directory &#8220;\/var\/named\/dynamic&#8221;;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 pid-file &#8220;\/run\/named\/named.pid&#8221;;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 session-keyfile &#8220;\/run\/named\/session.key&#8221;;<\/span><br \/><span style=\"color: #0000ff\">};<\/span><br \/><span style=\"color: #0000ff\">logging {<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 channel default_debug {<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 file &#8220;data\/named.run&#8221;;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 severity dynamic;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 };<\/span><br \/><span style=\"color: #0000ff\">};<\/span><br \/><span style=\"color: #0000ff\">zone &#8220;.&#8221; IN {<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 type hint;<\/span><br \/><span style=\"color: #0000ff\">\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 file &#8220;named.ca&#8221;;<\/span><br \/><span style=\"color: #0000ff\">};<\/span><br \/><span style=\"color: #0000ff\">include &#8220;\/etc\/named.rfc1912.zones&#8221;;<\/span><br \/><span style=\"color: #0000ff\">include &#8220;\/etc\/named.root.key&#8221;;<\/span>[@more@]3. \u8a2d\u5b9a\u958b\u6a5f\u6642\u555f\u52d5<br \/># <span style=\"color: #ff0000\">systemctl enable named.service<\/span><br \/><span style=\"color: #0000ff\">Created symlink from \/etc\/systemd\/system\/multi-user.target.wants\/named.service to \/usr\/lib\/systemd\/system\/named.service.<\/span><br \/># <span style=\"color: #ff0000\">systemctl start named.service<\/span><\/p>\n<p>4. \u4fee\u6539<span style=\"color: #0000ff\"> \/etc\/resolv.conf<\/span><br \/># <span style=\"color: #ff0000\">echo &#8220;nameserver 127.0.0.1&#8221; &gt; \/etc\/resolv.conf<\/span><\/p>\n<p>5. \u9032\u884c DNS \u67e5\u8a62<br \/># <span style=\"color: #ff0000\">host www.ilc.edu.tw 127.0.0.1<\/span><br \/><span style=\"color: #0000ff\">Using domain server:<\/span><br \/><span style=\"color: #0000ff\">Name: 127.0.0.1<\/span><br \/><span style=\"color: #0000ff\">Address: 127.0.0.1#53<\/span><br \/><span style=\"color: #0000ff\">Aliases:<\/span><\/p>\n<p><span style=\"color: #0000ff\">www.ilc.edu.tw has address 140.111.66.96<\/span><br \/><span style=\"color: #0000ff\">www.ilc.edu.tw has IPv6 address 2001:288:a201::66:96<\/span><\/p>\n<p>\u518d\u4e00\u6b21\u67e5\u8a62\u7684\u901f\u5ea6\u6703\u6bd4\u524d\u4e00\u6b21\u672c\u67e5\u8a62\u904e\u7684\uff0c\u5feb\u4e00\u4e9b\uff01<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5b89\u88dd\u5728 Proxy Server \u4e0a\uff0c\u7d66 Proxy Server \u4f7f\u7528\uff0c\u70ba\u4e86\u52a0\u5feb DNS \u67e5\u8a62\u7684\u901f\u5ea6\uff0c\u628a\u67e5\u8a62 &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/2blog.ilc.edu.tw\/25793\/2017\/05\/11\/%e5%bb%ba%e7%ab%8b-cache-only-dns\/\" class=\"more-link\">\u95b1\u8b80\u5168\u6587<span class=\"screen-reader-text\">\u3008\u5efa\u7acb Cache-only DNS\u3009<\/span><\/a><\/p>\n","protected":false},"author":55,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[117,148,135],"tags":[],"class_list":["post-19556","post","type-post","status-publish","format-standard","hentry","category-c-78462","category-c-78513","category-c-78480"],"meta_key":{"_pingme":["1"],"_encloseme":["1"],"lt_post_id":["687975"]},"_links":{"self":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/19556"}],"collection":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/users\/55"}],"replies":[{"embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/comments?post=19556"}],"version-history":[{"count":1,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/19556\/revisions"}],"predecessor-version":[{"id":21068,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/posts\/19556\/revisions\/21068"}],"wp:attachment":[{"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/media?parent=19556"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/categories?post=19556"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/2blog.ilc.edu.tw\/25793\/wp-json\/wp\/v2\/tags?post=19556"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}