インストール
1 2 3 |
yum -y install bind ※chrootは入れない |
設定
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
# vi /etc/named.conf 1 // 2 // named.conf 3 // 4 // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS 5 // server as a caching only nameserver (as a localhost DNS resolver only). 6 // 7 // See /usr/share/doc/bind*/sample/ for example named configuration files. 8 // 9 // See the BIND Administrator's Reference Manual (ARM) for details about the 10 // configuration located in /usr/share/doc/bind-{version}/Bv9ARM.html 11 12 options { 13 listen-on port 53 { 127.0.0.1; 192.168.22.104; }; 14 listen-on-v6 port 53 { none; }; 15 directory "/var/named"; 16 dump-file "/var/named/data/cache_dump.db"; 17 statistics-file "/var/named/data/named_stats.txt"; 18 memstatistics-file "/var/named/data/named_mem_stats.txt"; 19 allow-query { localhost; localnets; }; 20 forwarders { 192.168.22.254 ; }; 21 22 /* 23 - If you are building an AUTHORITATIVE DNS server, do NOT enable recursion. 24 - If you are building a RECURSIVE (caching) DNS server, you need to enable 25 recursion. 26 - If your recursive DNS server has a public IP address, you MUST enable access 27 control to limit queries to your legitimate users. Failing to do so will 28 cause your server to become part of large scale DNS amplification 29 attacks. Implementing BCP38 within your network would greatly 30 reduce such attack surface 31 */ 32 recursion yes; 33 34 dnssec-enable no; 35 dnssec-validation no; 36 37 /* Path to ISC DLV key */ 38 bindkeys-file "/etc/named.iscdlv.key"; 39 40 managed-keys-directory "/var/named/dynamic"; 41 42 pid-file "/run/named/named.pid"; 43 session-keyfile "/run/named/session.key"; 44 }; 45 46 logging { 47 channel "default-log" { 48 file "/var/log/named/default.log" versions 5 size 10M; 49 severity debug; 50 print-time yes; 51 print-severity yes; 52 print-category yes; 53 }; 54 55 category default { "default-log"; }; 56 }; 57 58 zone "." IN { 59 type hint; 60 file "named.ca"; 61 }; 62 63 zone "hw00.local" { 64 type master ; 65 file "hw00.local.lan" ; 66 }; 67 68 zone "22.168.192.in-addr.arpa" { 69 type master ; 70 file "hw00.local.rev" ; 71 }; 72 73 include "/etc/named.rfc1912.zones"; 74 include "/etc/named.root.key"; 75 ※ 説明 13 listen-on port 53 { 127.0.0.1; 192.168.22.104; }; listen-onとは、「BINDがクライアントからのクエリ(問い合わせ)を受け取るネットワークインタフェースとポートを指定します。」 ポートの確認は「netstat -an | grep 53」 14 listen-on-v6 port 53 { none; }; 今回は、IPv6は使用しない 19 allow-query { localhost; localnets; }; allow-queryとは、「問合せそのものを許可します。」 許可する範囲をネットワークで指定します。 20 forwarders { 192.168.22.254 ; }; forwardersとは、BIND は自分で名前解決できない場合に、問い合わせを回送することができます。 回送するDNSサーバを指定します。 34 dnssec-enable no; 35 dnssec-validation no; 36 37 /* Path to ISC DLV key */ 38 bindkeys-file "/etc/named.iscdlv.key"; DNSSEC(Domain Name System Security Extensions)とは、 DNSに対し、データ作成元の認証やデータの完全性を確認できるように仕様を拡張するものです。 DNSSECに必要な設定 は以下の2点です。 ・トラストアンカーの設定 ・DNSSECの有効化 トラストアンカーについては/etc/named.iscdlv.keyで定義されています。 今回は、下記理由により停止します。 「 BIND 9.xにおける実装上の不具合により、namedに対する外部からのサービス不能(DoS)攻撃が可能となる脆弱性が、開発元のISCから発表されました。 本脆弱性により、提供者が意図しないサービスの停止が発生する可能性があります。 対象となるバージョン 本脆弱性は、BIND 9.7.1以降のすべてのバージョンのBIND 9が該当します。 ・9.10系列:9.10.0~9.10.2-P1 ・9.9系列:9.9.0~9.9.7 ・9.8系列:9.8.0~9.8.8 ・9.7系列:9.7.1~9.7.7 」 63 zone "hw00.local" { 64 type master ; 65 file "hw00.local.lan" ; 66 }; 67 68 zone "22.168.192.in-addr.arpa" { 69 type master ; 70 file "hw00.local.rev" ; 71 }; ゾーンファイルとは、あるゾーンに関する情報がすべて記載されたファイルで、そのドメインの管理者によって作成されます。 zone ステートメント内の file オプションに従って命名されます。 |
正引きゾーンファイルの設定
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
# vi /var/named/hw00.local.lan 1 $TTL 1D 2 @ IN SOA hw00.local. root.hw00.local. ( 3 2017061601 ; serial 4 1D ; refresh 5 1H ; retry 6 1W ; expire 7 3H ) ; minimum 8 IN NS ns.hw00.local. 9 IN A 192.168.22.104 10 IN MX 10 mail.hw00.local. 11 12 ns IN A 192.168.22.104 13 www IN A 192.168.22.104 14 mail IN A 192.168.22.104 15 |
逆引きゾーンファイルの設定
1 2 3 4 5 6 7 8 9 10 11 12 |
# vi /var/named/hw00.local.rev 1 $TTL 1D 2 @ IN SOA sv.hw00.local root.hw00.local. ( 3 2017061601 ; serial 4 1D ; refresh 5 1H ; retry 6 1W ; expire 7 3H ) ; minimum 8 IN NS ns.hw00.local. 9 10 104 IN PTR ns.hw00.local. 11 |
DNSの起動
1 2 |
# systemctl start named # systemctl enable named |