FreeBSD 13.0 RELEASE - DNS サーバ - unbound

 クラウディア
1. 概要
2. インストール
3. unbound.conf 設定
4. owner 設定
5. /etc/rc.conf 設定

1. 概要

 独自ドメインを使用して、サーバを構築する場合でも、「DNS」キャッシュサーバの役割はさほど高くないと思っています。  自分がプロバイダでもない限りは、プロバイダから「DNS」キャッシュサーバは公開されますし、「DNS」キャッシュサーバを立てなくても「FreeBSD」自身の「resolv.conf」に、外部の「DNS」キャッシュサーバのアドレスを記述しておけば、外部の「DNS」を探しに行くことは可能であるからです。

2. インストール

 「FreeBSD 10.3 RELEASE」以降、「unbound」は、デフォルトでインストールされており、起動スクリプトも

/etc/rc.d/local_unbound
 というものが用意されています。  しかし、将来のバージョンアップ・リビジョンアップを考慮して、「ports」からインストールして使用すべきだと思っています。

cd /usr/ports/dns/unbound
make config
 オプションは、「FreeBSD 12.2 RLEASE」までに比べると増えているようですが、デフォルトのままにしています。
「FreeBSD 13.0 RELEASE」-「/usr/ports/dns/unbound」「make config ①」

「FreeBSD 13.0 RELEASE」-「/usr/ports/dns/unbound」「make config ②」


cd /usr/ports/dns/unbound
make
make install
 インストール時のメッセージを残しておきます。

===>  Installing for unbound-1.13.1
===>  Checking if unbound is already installed
===>   Registering installation for unbound-1.13.1
Installing unbound-1.13.1...
===> Creating groups.
Using existing group 'unbound'.
===> Creating users
Using existing user 'unbound'.
===> SECURITY REPORT:
      This port has installed the following files which may act as network
      servers and may therefore pose a remote security risk to the system.
/usr/local/sbin/unbound
/usr/local/lib/libunbound.so.8.1.12
/usr/local/sbin/unbound-checkconf
/usr/local/sbin/unbound-control
/usr/local/lib/libunbound.a(netevent.o)

      If there are vulnerabilities in these programs there may be a security
      risk to the system. FreeBSD makes no guarantee about the security of
      ports included in the Ports Collection. Please type 'make deinstall'
      to deinstall the port if this is a concern.

      For more information, and contact details about the security
      status of this software, see the following webpage:
https://www.nlnetlabs.nl/projects/unbound

3. unbound.conf 設定

 コンフィグレーションファイルを編集します。

vi /usr/local/etc/unbound/unbound.conf

server:
    # whitespace is not necessary, but looks cleaner.

    # verbosity number, 0 is least verbose. 1 is default.
	verbosity: 1

    interface: 127.0.0.1                  ← クライアントに提供するインターフェースのIPアドレス
                                             ここでは nsd との共存のための設定に沿っていますが
                                             単独で起動する場合は 0.0.0.0 を記述
    access-control: 192.168.0.0/24 allow  ← サーバ機能を提供することを許可する IPアドレス
 ☆☆☆重要☆☆☆  ルートゾーン「KSK」ロールオーバーに対応するためには下記の設定は必要です  「DNSSEC」を有効にしてルートゾーンのトラストアンカーを自動更新するために

        # auto-trust-anchor-file: "/usr/local/etc/unbound/root.key"
 の先頭の「#」を削除して定義を有効にします。  (以前と行番号がずいぶん異なります)

        auto-trust-anchor-file: "/usr/local/etc/unbound/root.key"
 初回は、「/usr/local/etc/unbound/root.key」が存在しないので作成します。

touch /usr/local/etc/unbound/root.key
chown unbound:unbound /usr/local/etc/unbound/root.key

sh
cat << 'EOF' >> /usr/local/etc/unbound/root.key
. IN DS 19036 8 2 49AAC11D7B6F6446702E54A1607371607A1A41855200FD2CE1CDDE32F24E8FB5
EOF
exit
 設定した内容は以下のコマンドでチェックします。

/usr/local/sbin/unbound-checkconf
 以下のように誤りがないことが表示されれば問題がありません。

unbound-checkconf: no errors in /usr/・・・ ← 右端にはチェックした設定ファイル名がフルパスで表示されます

4. owner 設定


/usr/local/etc/unbound/
 配下のファイルの所有者を「unbound」にします。

chown unbound:unbound /usr/local/etc/unbound/*

5. /etc/rc.conf 設定


vi /etc/rc.conf
 を編集して、「unbound」を有効にします。

service unbound enable
 「unbound」を起動します。

service unbound start
 以前は、初回、問い合わせがあるように記憶していましたが、今はそのまま動作するようです。

Obtaining a trust anchor...
Starting unbound.
 直後に

/usr/local/etc/unbound/root.key
 は更新されるようです。
ハイスピードプランメンズミレット