手当たり次第に書くんだ

飽きっぽいのは本能

Ubuntu 22.04 BIND 外部用 DNS サーバー構築

目次に戻る

Overview

BIND を使用した外部向け(インターネット公開用)の DNS サーバーを構築します。この DNS は権威サーバーとして稼働し、フォワーダーとしては使用しません。

前提条件

/etc/bind/named.conf.options

設定例は下記の通りです。allow-query: この DNS を参照可能な範囲、recursion: 再帰問い合わせを禁止を追加しています。インターネットに公開している DNS サーバーで再起問い合わせを許可するとオープンリゾルバとなり危険です。

myadmin@ubuntu:~$ sudo cp /etc/bind/named.conf.options /etc/bind/named.conf.options.orig
myadmin@ubuntu:~$ sudo tee /etc/bind/named.conf.options <<"EOF"
options {
    directory "/var/cache/bind";
    dnssec-validation auto;
    listen-on-v6 { any; };
    allow-query { any; };
    recursion no;
};
EOF

/etc/bind/named.conf.local

設定例は下記の通りです。

myadmin@ubuntu:~$ sudo cp /etc/bind/named.conf.local /etc/bind/named.conf.options.local.orig
myadmin@ubuntu:~$ sudo tee /etc/bind/named.conf.local <<"EOF"
include "/etc/bind/zones.rfc1918";
zone "si1230.com" {
    type master;
    file "/etc/bind/si1230.com.zone";
};
EOF

インターネットに自身が管理する DNS サーバーを公開するには、レジストラ(ドメインを払い出す事業者)に委任が必要となり、これは基本的に正引きのみです。逆引きは IP アドレスのプロバイダや ISP が管理しますが、JPNIC から正式にグローバル IP アドレスを取得している企業などは自身の DNS サーバーで自由に設定可能です。

/etc/bind/si1230.com.zone

正引きのゾーンファイルの設定例です。

myadmin@ubuntu:~$ sudo tee /etc/bind/si1230.com.zone <<"EOF"
$TTL 172800
@ IN SOA dns.si1230.com. root.si1230.com. (
    2022041101
    3600
    300
    360000
    86400
)
    IN NS dns.si1230.com.
    IN MX 10 mail.si1230.com.

@ IN TXT {{ Google Search Console TXT Record }}
@ IN TXT "v=spf1 a:mail.si1230.com -all"

@ IN A {{ IPv4 Address }}
dns IN A {{ IPv4 Address }}
mail IN A {{ IPv4 Address }}
www IN A {{ IPv4 Address }}

@ IN A {{ IPv6 Address }}
dns IN A {{ IPv6 Address }}
mail IN A {{ IPv6 Address }}
www IN A {{ IPv6 Address }}
EOF
  • Google Search Console と連携するため、DNS サーバーに TXT レコードを追加しています。これはホスト名を含めないドメイン名のレコード ‘@’ である必要があります。
  • メールサーバー用に SPF レコードを追加しています。これは最近のメールサーバー運用では必須となっています。DKIM, DMARC も最終的に必要となりますが、これは別途更新します。

目次に戻る

Ubuntu 22.04 BIND 外部用 DNS サーバー構築

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

トップへ戻る