Index ソフト・ハード Bind | Bind インストール |
機能 構成・方式 タスク インストール CentOS 7 resolv.conf named.conf ゾーンファイル ポート確認 ゾーン転送確認 設定ファイル保存 |
CentOS 7 ・CentOS 7の公式リポジトリのBind $ yum info bind-chroot bind バージョン : 9.11.4・インストール # yum install bind bind-chroot インストール bind.x86_64 32:9.11.4-26.P2.el7 依存性を更新 bind-libs.x86_64 32:9.11.4-26.P2.el7 bind-license.noarch 32:9.11.4-26.P2.el7・named サービスが実行中の場合は、無効にする。 # systemctl stop named # systemctl disable named # systemctl enable named-chroot # systemctl start named-chroot・named-chroot サービスのステータスを確認 # systemctl status named-chroot・必要ならアップデート resolv.conf ・自身を先に参照するような場合 ・CentOS7、NetworkManager、nmtui 当該DNSサーバを上に入れる。 結果を、/etc/resolv.conf で確認 search は、domain の複数指定 search したいドメインがあったら、検索ドメインへ追加「named.conf」の設定 ・書式確認 # named-checkconf・元の設定ファイルをバックアップし、設定 # vi /etc/named.conf (コンテンツサーバなど) 用途などに応じて、追加、削除、変更を行う。 汎用的なDNS名前解決に使用できないコンテンツサーバはresolv.confに加えない。 (キャッシュDNSサーバを別に用意することが前提)・VIEW機能の使用 オプション設定やゾーン情報を、外部向け内部向け別々に設定し、一台のホストに同居・オプションなど
acl internal-acl{
127.0.0.1;
192.168.1.0/24;
192.168.xx.0/24;
# 192.168.xx.1 に対外ルータ(外部DNSの解決)
};
options {
listen-on port 53 { any; };
# listen-on port 53 { 127.0.0.1;問い合わせを受け付けるIP; };
listen-on-v6 port 53 { any; };
# listen-on-v6 port 53 { none; };
version "unknown";
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
notify no;
# 各ゾーンの設定部分でも指定変更可能
allow-transfer { 192.168.1.xx; };
# Masterの場合は、Slaveなどを指定
allow-query-cache { none; };
allow-query { any; [localnet;] };
# 名前解決の問い合わせを受け付ける範囲
recursion yes;
# コンテンツサーバの場合「no」、共有の場合「view "external"」で「no」
dnssec-enable no;
dnssec-validation no;
dnssec-lookaside no;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
#managed-keys-directory "/var/named/dynamic";
forwarders{
192.168.xx.1;
XXX.XXX.XXX.XXX;
8.8.8.8;
};
# ルーター経由接続環境の場合はルーターのIPアドレス
# PPPoE接続環境の場合はプロバイダのプライマリマスタのIPアドレス
# PPPoE接続環境の場合はプロバイダのセカンダリマスタのIPアドレス
# キャッシュサーバとして使わなければ不要
};
use-v6-udp-ports { };
# IPv6のポートを開放しない
・ログ
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
category lame-servers { null; };
category edns-disabled { null; };
# 必要時に開放
};
・view
view "internal" {
# 内部ネットワーク向けのゾーンを定義(コンテンツサーバの場合、不要)
match-clients { internal-acl; };
# リクエスト元のソースIPでマッチを行う。
match-destinations { localnets; };
# リクエストを受け付けるインターフェースのIPアドレスでマッチを行う。
recursion yes;
include "/etc/named.rfc1912.zones";
zone "." IN {type hint; file "named.ca";};
# recursionを行わない場合、不要
include "/etc/named.root.key";
include "/etc/named/xxxxxxxx.zone";
include "/etc/named/yyyyyyyy.zone";
# internal.zones(量が少なければ、直接zone記述が見易い)
};
view "external" {
match-clients { any; };
match-destinations { any; };
recursion no;
# ログ確認 client x.x.x.x#xxxx (x.x): view external: query 'x.x/ANY/IN' denied
include "/etc/named/xxxxxxxx.zone.wan";
include "/etc/named/yyyyyyyy.zone.wan";
# マルチドメインの場合
};
・/etc/named/xxxxxxxx.zone (マスター側)
zone "(ZoneApex名)" {
type master;
file "xxxx.xxx.db";
};
};
zone "xx.x.xxx.in-addr.arpa" {
type master;
file "xx.x.xxx.in-addr.arpa.db";
};
・/etc/named/xxxxxxxx.zone.wan (マスター側)
zone "(ZoneApex名)" {
type master;
file " xxxx.xxx.db.wan";
allow-transfer { xxx.x.xx.xx; };
# セカンダリDNSサーバ(プライマリDNSサーバの場合)
#notify yes; (ある場合)
};
zone "xx.x.xxx.in-addr.arpa" {
type master;
file "xx.x.xxx.in-addr.arpa.db.wan";
allow-transfer { xxx.x.xx.xx; };
# セカンダリDNSサーバ(プライマリDNSサーバの場合)
#notify yes; (ある場合)
};
・/etc/named/xxxxxxxx.zone.wan (スレーブ側)
zone "xxxx.xxx" {
type slave;
masterfile-format text;
# data形式(binary)ではなくなるが起動は遅れる。
file "slaves/xxxx.xxx.slave.db.wan";
masters { xxx.x.xx.xx; };
};
zone "xx.x.xxx.in-addr.arpa" {
type slave;
masterfile-format text;
file "slaves/xx.x.xxx.slave.in-addr.arpa.db.wan";
masters { xxx.x.xx.xx; };
};
ゾーンファイル ・書式確認 # named-checkzone [ゾーン名] [チェックするゾーンファイル名] ・「chroot」の場合 「/var/named/chroot」配下で編集・正引きゾーンファイル(/var/named/chroot/var/named/xxxx.xxx.db.wan)
[$ORIGIN xxxx.net.]
$TTL 3600 ; 1 hour
@ IN SOA ns1.xxx.net. root.xxx.net. (
2020111901 ; Serial
3600 ; Refresh(1 hour)
1200 ; Retry(20 min.)
1209600 ; Expire(2 weeks)
900 ;Minimum(15 min.)
)
@ IN NS ns1.xxx.xxx.
@ IN NS ns2.xxx.xxx.
@ IN MX 10 mail.xxx.xxx.
ns1 IN A xxx.x.xx.xx
ns2 IN A xxx.x.xx.xx
mail IN A xxx.x.xx.xx
sv4 IN A xxx.x.xx.xx
www IN CNAME sv4
・逆引きゾーンファイル(/var/named/chroot/var/named/xx.x.xxx.in-addr.arpa.db.wan)
$TTL 3600 ; 1 hour
@ IN SOA ns1.xxx.net. root.xxx.net. (
2020111901 ; Serial
3600 ; Refresh(1 hour)
1200 ; Retry(20 min.)
1209600 ; Expire(2 weeks)
900 ;Minimum(15 min.)
)
26 IN PTR xxxx.xxxx.xxx.
27 IN PTR xxxx.xxxx.xxx.
28 IN PTR xxxx.xxxx.xxx.
29 IN PTR xxxx.xxxx.xxx.
・メールエクスチェンジャ 有効なAレコードが必要 MXレコードで指し示されるホストはエイリアス(CNAMEレコード)であってはならない。 IPアドレスではなく、ホスト名で指定する。 プリファレンス値を必ず指定する。・「;」は重要 区切りの働きポート確認 ・二度手間にならないように、ポートを確認しながら設定する。
# lsof -i:53
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
named 2463 named 21u IPv4 25839 0t0 TCP localhost:domain (LISTEN)
named 2463 named 22u IPv4 25841 0t0 TCP aa0xx0xx.ppp.xxx.xxx.xxx:domain (LISTEN)
named 2463 named 23u IPv4 25843 0t0 TCP xxx.xxx.xxx:domain (LISTEN)
named 2463 named 24u IPv4 25845 0t0 TCP 192.168.x.xx:domain (LISTEN)
named 2463 named 512u IPv4 25838 0t0 UDP localhost:domain
named 2463 named 514u IPv4 25840 0t0 UDP aa0xx0xx.ppp.xxxx.xxxx.xxxx:domain
named 2463 named 516u IPv4 25842 0t0 UDP xxxx.xxxx.xxxx:domain
named 2463 named 518u IPv4 25844 0t0 UDP 192.168.x.xx:domain
ゾーン転送確認 (AXFR(Authoritative Transfer)) ・構築後の検証用のコマンド $ dig [@DNSサーバのIPアドレスなど] [対象のドメイン] axfr・ゾーン転送が不可能な状態 : : ; Transfer failed.・スレーブ側から、転送を受けれることを確認 設定ファイルの保存 ・named.confなどの設定ファイルを保存 別名ファイルは再インストールでも消えない。 |
All Rights Reserved. Copyright (C) ITCL |