このチュートリアルでは、UbuntuにBIND9マスターおよびスレーブDNSサーバーをインストールする方法を示します。BINDは広く使用されているDNSサーバーです。理想的には、DNSサーバーは連携して動作する2台のマシンで構成されます。同時に、一方がマスターとして機能し、もう一方がスレーブとして機能します。ドメインレジストラが無料のDNSサーバーを提供しない場合、またはカスタムDNSレコードを作成する場合は、独自のDNSレコードをホストする必要があります。 DNSサーバー。
このチュートリアルでは、BIND9マスターとスレーブDNSサーバーの構成方法について説明します。どちらのサーバーもUbuntu OSを使用します。マスター、スレーブの構成を開始します。
前提条件
- 次のオペレーティングシステムのいずれかを実行しているサーバー:UbuntuおよびLinuxMintなどの他のDebianベースのディストリビューション。
- 潜在的な問題を防ぐために、OSの新規インストールを使用することをお勧めします。
- サーバーへのSSHアクセス(またはデスクトップを使用している場合はターミナルを開く)
non-root sudo userまたはroot userへのアクセス 。non-root sudo userとして行動することをお勧めします ただし、ルートとして機能するときに注意しないと、システムに害を及ぼす可能性があるためです。
UbuntuにBIND9マスターとスレーブDNSサーバーをインストールする
サーバーのデータ例は次のとおりです。
Server1(マスター)IPアドレス:108.100.100.1
Server2(スレーブ)IPアドレス:108.100.100.2
ドメイン:idroot.us
このドメインはこのサーバーでホストされます:172.217.194.94
マスター上
ステップ1。 ubuntuリポジトリを更新し、apt-getを使用してBindをインストールします。
apt-get update apt-get install bind9
ステップ2。 バインドオプションの構成
*)do this if you haven't installed nano text editor: apt-get install nano nano /etc/bind/named.conf.options
options {
directory "/var/cache/bind";
additional-from-auth no;
additional-from-cache no;
version "Bind Server";
// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.
forwarders {
8.8.8.8;
8.8.4.4;
};
//========================================================================
// If BIND logs error messages about the root key being expired,
// you will need to update your keys. See https://www.isc.org/bind-keys
//========================================================================
dnssec-validation auto;
allow-recursion { 127.0.0.1; };
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
}; ステップ3。 ドメイン名とゾーンファイルの設定を保存する
nano /etc/bind/named.conf.local
//place these lines at the bottom of file
zone "idroot.us" {
type master;
file "/etc/bind/zones/idroot.us.db";
allow-transfer { 108.200.200.2; };
also-notify { 108.200.200.200.2; };
}; ステップ4。 上記の設定では、ゾーンファイルを「/etc/bind/zones/idroot.us.d」に配置しているためです。 b」、次にフォルダとファイルを作成する必要があります
mkdir /etc/bind/zones nano /etc/bind/zones/idroot.us.db
$TTL 86400
$ORIGIN idroot.us.
@ IN SOA ns1.idroot.us. root.idroot.us. (
1 ; Serial
86400 ; Refresh
7200 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns1.idroot.us.
@ IN NS ns2.idroot.us.
ns1 IN A 108.100.100.1
ns2 IN A 108.100.100.2
;also list other computers
@ IN A 172.217.194.94
www IN A 172.217.194.94
ステップ5。 (マスターの最後のステップ)bind9DNSサービスを再起動します
service bind9 restart
奴隷に
マスターと同様に手順1〜2を繰り返します。
ステップ3。 スレーブバインドオプションを構成する
nano /etc/bind/named.conf.options
zone "idroot.us" {
type slave;
file "/var/cache/bind/idroot.us.db";
masters {108.100.100.1;};
}; この構成ファイルとマスターの違いに注意してください。
ステップ4。 bind9サービスを再起動します。
service bind9 restart
次に何をしますか?
このDNSサーバーは、ドメインのネームサーバーを変更するまで機能しません。ドメインの登録機関のウェブサイトから行うことができます。このシナリオでは、ネームサーバーを次のように変更します。
ns1.idroot.us
ns2.idroot.us
BINDのテスト
このテストは、DNSサーバー自体、別のサーバー、または自分のPCから実行できます。この場合、UbuntuOSを実行している別のサーバーからテストを実行します。
ステップ1。 dnsutilsをインストールする
sudo apt-get install dnsutils
ステップ2。 DNSテストを実行します
dig idroot.us
ステップ3。 nslookupDNSテストを実行します
nslookup idroot.us