DNS設定 · 3 min read · Sep 08, 2025

Rocky Linux 9でUnboundを使用してローカルDNSリゾルバーを設定する方法

Unboundは、検証、再帰、およびキャッシュDNSリゾルバーに使用できる無料のオープンソースDNSサーバーソフトウェアです。これは、DNS-over-TLS(DoT)、DNS-over-HTTPS(DoH)、クエリ名の最小化、DNSSEC検証キャッシュの積極的使用、および権限ゾーンのサポートをサポートする機能豊富なDNSサーバーです。Unboundは、DNSのプライバシーとセキュリティに重点を置いていますが、速度とパフォーマンスを犠牲にすることはありません。

Unboundは主にNLnet Labsによって開発され、BSDライセンスの下で配布されており、DNSサーバーのオープンスタンダードに基づく最新の機能をサポートしています。Unboundは厳密に監査されており、Linux、BSD、およびmacOSで実行できます。UnboundはこれらのOSのほとんどで利用可能で、システムパッケージマネージャーを介してインストールできます。

このチュートリアルでは、Rocky Linux 9サーバーでUnboundを使用してローカルDNSサーバーを設定します。Unboundを権威のある、検証済み、再帰的キャッシュDNSとして構成します。それに加えて、DNS-over-TLS(DoT)を有効にして、ローカルネットワークのDNSリゾルバーとしてUnboundを設定します。

このチュートリアルの最後までに、RsyslogとLogrotateを介してUnboundログを設定し、UnboundをDNSリゾルバーとして使用するLinuxクライアントマシンを設定し、そこからインストール全体を確認します。

前提条件

このチュートリアルを始める前に、次の要件があることを確認してください:

  • Rocky Linux 9がインストールされたサーバー - この例では、ホスト名が‘unbound-rocky’で、IPアドレスが‘192.168.5.25’のRocky Linuxを使用します。
  • root/sudo管理者権限を持つ非rootユーザー。
  • SELinuxが許可モードで実行されています。

それだけです。すべての要件が整ったら、サーバーにUnboundをインストールし始めてください。

Unboundのインストール

Unboundは、Linux、BDS、macOSを含むほとんどのオペレーティングシステムをサポートするDNSサーバーソフトウェアです。Rocky Linuxでは、Unboundパッケージは公式のRocky Linux AppStreamリポジトリにデフォルトで利用可能です。

この最初のステップでは、Rocky LinuxシステムにUnboundパッケージをインストールします。

次に、以下のdnfコマンドを実行して、AppStreamリポジトリで利用可能な’unbound‘パッケージを確認します。この執筆時点では、Rocky Linux AppStreamリポジトリはUnbound1.16を提供しています。

sudo dnf info unbound

出力:

unbound info packages

以下のdnfコマンドを使用してUnboundをインストールします。プロンプトが表示されたら、yを入力して確認し、ENTERを押して続行します。

sudo dnf install unbound

出力:

install unbound

Unboundがインストールされたら、以下のsystemctlコマンドユーティリティを介して’unbound’サービスを開始および有効にします。これにより、Rocky LinuxサーバーでUnboundが起動し、システム起動時に自動的に実行されるようになります。

sudo systemctl start unbound  
sudo systemctl enable unbound

以下のsystemctlコマンドを使用してUnboundサービスを確認します。出力’active (running)‘は、Unboundサービスが実行中であることを確認します。出力’loaded ….; enabled;…‘は、Unboundサービスが有効であることを確認します。

sudo systemctl status unbound

出力:

verify unbound

Unboundは現在、デフォルトの設定ファイル’/etc/unbound/unbound.conf‘でインストールされ、実行中です。次に、Unbound設定ファイル’/etc/unbound/unbound.conf‘を変更し、Unboundを権威のある、検証済み、再帰的キャッシュDNSとして設定し、DoTを有効にしたDNSリゾルバーとしてUnboundを有効にします。

Unboundの設定

デフォルトでは、Unbound設定ファイルは’/etc/unbound/unbound.conf’にあります。このステップでは、設定ファイル’/etc/unbound/unbound.conf’を変更し、Unboundのインストールを設定および最適化します。

Unboundを権威のある、検証済み、再帰的キャッシュDNSとして実行するように設定します。それに加えて、パフォーマンス、プライバシー、およびセキュリティのためにUnboundのインストールを最適化します。最後に、ローカルネットワーク用のDNSリゾルバーとしてUnboundを設定します。

最初に、以下のwgetコマンドを実行して、ルートDNSファイルを’/etc/unbound/root.hints‘にダウンロードします。次に、ファイル‘/etc/unbound/root.hints‘の所有権をユーザーとグループ’unbound‘に変更します。

wget https://www.internic.net/domain/named.root -O /etc/unbound/root.hints  
sudo chown unbound:unbound /etc/unbound/root.hints

次に、デフォルトのUnbound設定ファイルを’/etc/unbound/unbound.conf.orig‘にバックアップし、以下のnanoエディタコマンドを使用して元のファイル‘/etc/unbound/unbound.conf’を変更します。

sudo cp -v /etc/unbound/unbound{.conf,.conf.orig}  
sudo nano /etc/unbound/unbound.conf

さあ、Unboundの設定を始めましょう。

Unbound基本設定

最初に、Unboundサービスが実行されるIPアドレスとポートを設定します。次に、上流接続を認証するために使用される証明書バンドルを設定し、’root-hints’パラメータを介してルートDNSサーバーを追加します。

以下の行を’server:‘セクション内に追加します。これらの設定により、UnboundはローカルIPアドレス‘192.168.5.25’でデフォルトのUDPポート’53‘で実行されます。

server:  
    ...  
    ...  
    # interface-automatic: no  
    do-ip6: no  
    interface: 192.168.5.25  
    port: 53  
    prefetch: yes  
  
    tls-cert-bundle: /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem  
    root-hints: /etc/unbound/root.hints

詳細パラメータ:

  • do-ip6: UnboundをIPv6で実行するには’yes‘を使用し、IPv6を無効にするには’no‘を設定します。
  • interface: unboundが実行されるネットワークインターフェースまたはIPアドレス。IPアドレスまたは’eth0’のようなインターフェース名を使用できます。また、次のように特定のポートで実行することもできます’IP-ADDRESS@PORT’。
  • port: Unboundが実行されるポートを指定し、クライアントの接続がこのポートで処理されます。デフォルトのDNSポートは53です。
  • prefetch:ほぼ期限切れのメッセージキャッシュエントリのプリフェッチを有効にするには’yes‘に設定します。
  • tls-cert-bundle: 上流接続を認証するために使用される証明書。RHELベースのディストリビューションでは、証明書ファイルは‘/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem’にあります。
  • root-hints: ルートDNSサーバーの詳細を含むファイル。あなたはこのファイルを‘/etc/unbound/root.hints’にダウンロードしました。

DNSキャッシュの有効化

次に、以下の行を追加して、Unboundを介して再帰的キャッシュDNSを有効にします。これにより、Unboundサーバーでクライアントによって行われたDNSクエリが一定の時間キャッシュされます。

    cache-max-ttl: 14400  
    cache-min-ttl: 1200

詳細パラメータ:

  • cache-max-ttl: RRSetsおよびDNSキャッシュ内のメッセージのTTL(Time To Live)。形式は秒単位です。
  • cache-min-ttl: キャッシュの最小TTL。デフォルトは0ですが、’1200‘秒など、好みに応じて変更できます。これを1時間以上に設定しないでください。古いデータのために問題が発生します。

Unboundの強化

プライバシーとセキュリティのためのいくつかのパラメータは、RHELベースのディストリビューションでデフォルトで有効になっています。しかし、次のような追加のパラメータを追加することもできます。

    hide-identity: yes  
    hide-version: yes  
    use-caps-for-id: yes

詳細パラメータ:

  • hide-identity: id.serverまたはhostname.bindに関するbindクエリからの回答を無効にするにはyesに設定します。
  • hide-version: version.serverおよびversion.bindクエリを無効にするにはyesに設定します。
  • use-caps-for-id: スプーフィングの試みを防ぐために、クエリで‘0x20-encoded’の使用を有効にするにはyesに設定します。

プライベートアドレスとアクセス制御リストの定義

次に、ローカルネットワーク用のprivate-addressとACL(アクセス制御リスト)を定義する必要があります。以下の行のローカルサブネットを現在のネットワーク環境に変更してください。

    private-address: 192.168.0.0/16  
    private-address: 169.254.0.0/16  
    private-address: 172.16.0.0/12  
    private-address: 10.0.0.0/8  
    private-address: fd00::/8  
    private-address: fe80::/10  
  
    # (再帰的)クエリを行うことが許可されているクライアントを制御します  
    access-control: 127.0.0.1/32 allow_snoop  
    access-control: ::1 allow_snoop  
    access-control: 127.0.0.0/8 allow  
    access-control: 192.168.5.0/24 allow

詳細パラメータ:

  • private-address: インフラストラクチャ上のプライベートネットワークサブネットを定義します。これらのプライベートアドレスを持つことが許可されているのは、’private-domain‘および‘local-data‘名のみです。
  • access-control: Unboundサーバーに対して(再帰的)クエリを行うことが許可されているクライアントのアクセス制御を定義します。パラメータ’allow‘は再帰を有効にし、’allow_snoop‘は再帰的および非再帰的の両方を有効にします。

ローカルドメイン名とサブドメインの設定

プライベートアドレスとアクセス制御リストの設定後、次にUnboundの’local-zone’パラメータを介してローカルドメイン名を作成します。これは、特にローカルネットワーク上に複数の自己ホストアプリケーションがある場合に非常に便利です。ドメイン名やサブドメインを簡単に定義し、特定のターゲットIPアドレスにポイントできます。

この例では、’static‘ローカルドメイン’garden.lan‘を設定し、’local-data‘パラメータを介して複数のサブドメインを作成します。各サブドメインは特定のIPアドレスにポイントされ、また、’local-data-ptr‘パラメータを介してPTRレコードを作成します。

    # ローカルゾーン  
    local-zone: "garden.lan." static  
  
    local-data: "firewall.garden.lan.  IN A 10.0.0.1"  
    local-data: "vault.garden.lan.    IN A 10.0.0.2"  
    local-data: "media.garden.lan.   IN A 10.0.0.3"  
    local-data: "docs.garden.lan.       IN A 10.0.0.4"  
    local-data: "wiki.garden.lan.     IN A 10.0.0.5"  
  
    local-data-ptr: "10.0.0.1  firewall.garden.lan"  
    local-data-ptr: "10.0.0.2  vault.garden.lan"  
    local-data-ptr: "10.0.0.3  media.garden.lan"  
    local-data-ptr: "10.0.0.4  docs.garden.lan"  
    local-data-ptr: "10.0.0.5  wiki.garden.lan"

詳細パラメータ:

  • local-zone: ここでローカルドメインを定義します。
  • local-data: サブドメインのAレコードを定義し、どのローカルIPアドレスが解決されるかを指定します。
  • local-data-ptr: サブドメインのptrレコードを定義します。

Unboundの最適化と調整

次に、Unboundのインストールを最適化するために以下の行を追加します。現在の環境に応じて、以下のパラメータを調整および調整できます。

    msg-cache-slabs: 8  
    rrset-cache-slabs: 8  
    infra-cache-slabs: 8  
    key-cache-slabs: 8  
    rrset-cache-size: 256m  
    msg-cache-size: 128m  
    so-rcvbuf: 8m

詳細パラメータ:

  • msg-cache-slabs: メッセージキャッシュに使用するスラブの数。Unboundがキャッシュ用により多くのメモリを使用するように最適化するために8に設定します。
  • rrset-cache-slabs: RRsetキャッシュに使用するスラブの数。UnboundがRRSetキャッシュ用により多くのメモリを使用するように最適化するために8に設定します。
  • infra-cache-slabs: インフラストラクチャキャッシュに使用するスラブの数。Unboundがインフラストラクチャキャッシュ用により多くのメモリを使用するように最適化するために8に設定します。
  • key-cache-slabs: キーキャッシュに使用するスラブの数。Unboundがキーキャッシュ用により多くのメモリを使用するように最適化するために8に設定します。
  • rrset-cache-size: RRSetキャッシュ用のメモリ量を指定します。この例では256MBを使用し、デフォルトはわずか4MBです。
  • msg-cache-size: メッセージキャッシュ用のメモリ量を指定します。この例では128MBを使用し、デフォルトはわずか4MBです。
  • so-rcvbuf: DNSポート53/udpのバッファサイズを8MBに設定します。

DoT(DNS-over-TLS)を使用したDNSリゾルバーとしてUnboundを設定

最後に、新しいセクション’forward-zone‘を追加して、Unboundをローカルネットワーク用のDNSリゾルバーとして設定します。この例では、DoT(DNS-over-TLS)が有効なQuad9 DNSサーバーを上流DNSリゾルバーとして使用します。

forward-zone:  
    name: "."  
    forward-ssl-upstream: yes  
    ## IBM IPv6 Quad9 over TLSも追加  
    forward-addr: 9.9.9.9@853#dns.quad9.net  
    forward-addr: 149.112.112.112@853#dns.quad9.net

詳細パラメータ:

  • forward-zone: Unboundのフォワードゾーンを定義します。
  • name: “.”に設定して、すべてのDNSクエリをフォワードします。
  • forward-addr: すべてのDNSクエリをフォワードするために特定のフォワーダーを使用します。この例では、Quad9 DNSを使用し、DNS-over-TLS (DoT)を有効にしています。

すべてが完了したら、ファイル’/etc/unbound/unbound.conf‘を保存して終了します。

次に、以下のコマンドを実行してUnboundの設定を確認し、正しい設定が行われていることを確認します。成功すると、出力は’unbound-checkconf: no errors in /etc/unbound/unbound.conf‘になります。

unbound-checkconf

setup unbound

次に、以下のsystemctlコマンドユーティリティを介してUnboundサービスを再起動し、変更を適用します。

sudo systemctl restart unbound

これで、Unboundの設定が完了し、IPアドレス’192.168.5.25‘でデフォルトのUDPポート’53‘で実行されています。

次のステップでは、firewalldを設定してDNSポートを開き、RsyslogとLogrotateを介してUnboundのログを設定します。

Firewalldの設定

UnboundはデフォルトのUDPポート53で稼働しています。次に、firewalldでDNSポート53/UDPを開き、クライアントがUnbound DNSサーバーにアクセスできるようにする必要があります。

以下のfirewall-cmdコマンドを実行して、新しいサービス’dns‘を追加します。次に、firewalldを再読み込みして変更を適用します。成功すると、ターミナルに’success‘のような出力が表示されます。

sudo firewall-cmd --add-service=dns --permanent  
sudo firewall-cmd --reload

次に、以下のコマンドを実行してfirewalldで有効なサービスのリストを確認します。’dns‘サービスがfirewalldに追加されていることが確認できます。

sudo firewall-cmd --list-all

出力:

setup firewalld

RsyslogとLogrotateを介したUnboundログの設定

firewalldの設定後、rsyslogとlogrotateを介してUnboundのログファイルを設定します。rsyslogサービスはUnbound用の特定のログファイルを作成し、logrotateは一定の時間でUnboundのログファイルをローテートします。

以下のnanoエディタコマンドを使用して新しい設定ファイル’/etc/rsyslog.d/unbound.conf‘を作成します。

sudo nano /etc/rsyslog.d/unbound.conf

ファイルに以下の行を追加します。これにより、Rsyslogは’$programname’ == ‘unbound’のための新しいログファイル’/var/log/unbound.log’を作成します。

# Unboundアプリケーションによって生成されたログメッセージ  
if $programname == 'unbound' then /var/log/unbound.log  
# それ以上の処理を停止します  
& stop

完了したら、ファイル’/etc/rsyslog.d/unbound.conf‘を保存して終了します。

次に、以下のnanoエディタコマンドを使用して新しいLogrotate設定ファイル’/etc/logrotate.d/unbound‘を作成します。

sudo nano /etc/logrotate.d/unbound

ファイルに以下の行を追加します。これにより、Unboundのログファイル’/var/log/unbound.log‘のログローテーションが毎日行われます。

/var/log/unbound.log {  
  daily  
  rotate 7  
  missingok  
  create 0640 root adm  
  postrotate  
    /usr/lib/rsyslog/rsyslog-rotate  
  endscript  
}

ファイルを保存してエディタを終了します。

最後に、以下のsystemctlコマンドユーティリティを実行して、RsyslogとLogrotateサービスの両方を再起動し、システムに変更を適用します。

sudo systemctl restart rsyslog  
sudo systemctl restart logrotate

これで、Unboundのインストールが完了しました。次のステップでは、UnboundをDNSリゾルバーとして使用するためにローカルクライアントマシンを設定する方法を2つの方法で学び、そこからUnbound DNSサーバーを確認します。

setup unbound log via rsyslog and logrotate

クライアント用のDNSリゾルバーの設定

クライアントマシンでDNSリゾルバーを設定するには、さまざまな方法を使用できます。このステップでは、NetworkManagerを介してDNSリゾルバーを設定する方法と、systemd-resolvedとNetworkManagerを組み合わせて使用する方法を学びます。

NetworkManagerを介して

NetworkManagerを介してDNSリゾルバーを直接設定する場合は、’/etc/NetworkManager/system-connections/‘ディレクトリに保存されているネットワークインターフェースの設定を編集する必要があります。

この例では、クライアントマシンのメイン接続は’eth0‘であるため、NetworkManagerの設定は‘/etc/NetworkManager/system-connections/eth0.nmconnection‘である必要があります。eth1など、異なるインターフェース名がある場合があります。

以下のnanoエディタコマンドを使用してNetworkManagerインターフェース設定ファイル’/etc/NetworkManager/system-connections/eth0.nmconnection‘を開きます。

sudo nano /etc/NetworkManager/system-connections/eth0.nmconnection

[ipv4]‘セクションに以下の行を追加します。また、’dns‘パラメータのIPアドレスをUnbound DNSサーバーのものに変更してください。

[ipv4]  
...  
dns=192.168.5.25  
ignore-auto-dns=true

完了したら、ファイルを保存して終了します。

次に、以下のsystemctlコマンドを実行してNetworkManagerサービスを再起動し、変更を適用します。その後、catコマンドを介してDNSリゾルバー設定ファイル‘/etc/resolv.conf’を確認します。

sudo systemctl restart NetworkManager  
cat /etc/resolv.conf

クライアントマシンのデフォルトDNSリゾルバーとしてIPアドレス’192.168.5.25‘が設定されていることを示す出力が得られるはずです。

dns resolver via network manager

systemd-resolvedとNetworkManagerを介して

DNSリゾルバーを設定する別の方法は、systemd-resolvedとNetworkManagerを介してです。これにより、システム全体でDNSリゾルバーを簡単に変更でき、システムのネットワークインターフェースに依存しなくなります。

RHELベースのディストリビューションでは、systemd-resolvedはまだインストールされていません。以下のdnfコマンドを介して簡単にインストールできます。プロンプトが表示されたら、yを入力して確認し、ENTERを押して続行します。

sudo dnf install systemd-resolved

出力:

install systemd-resolved

systemd-resolvedがインストールされたら、以下のnanoエディタコマンドを使用して設定ファイル’/etc/systemd/resolved.conf‘を開きます。

sudo nano /etc/systemd/resolved.conf

‘[Resolver]’セクションで、’DNS‘パラメータのコメントを外し、Unbound DNSサーバーのIPアドレスを追加します。

[Resolver]  
DNS=192.168.5.25

完了したら、ファイルを保存して終了します。

次に、以下のsystemctlコマンドを実行して’systemd-resolved’サービスを開始および有効にします。

sudo systemctl start systemd-resolved  
sudo systemctl enable systemd-resolved

configure systemd-resolved

次に、’systemd-resolved’サービスを確認して、サービスが実行中であることを確認します。出力は’active (running)‘のようになり、サービスが実行中であることを確認します。また、出力‘Loaded ../../systemd-resolved.service; enabled;..‘は、サービスが有効であり、システム起動時に自動的に開始されることを確認します。

sudo systemctl status systemd-resolved

出力:

verify systemd-resolved

systemd-resolvedが実行中の状態で、次にNetworkManagerサービスのDNSバックエンドを変更します。

以下のnanoエディタコマンドを使用してNetworkManager設定ファイル’/etc/NetworkManager/NetworkManager.conf‘を開きます。

sudo nano /etc/NetworkManager/NetworkManager.conf

[main]‘セクションの下に、’dns‘パラメータを値’systemd-resolved‘で追加します。これにより、NetworkManagerのDNSサーバーが’systemd-resolved’サービスを使用するように上書きされます。

[main]  
dns=systemd-resolved

完了したら、ファイルを保存して終了します。

次に、以下のsystemctlコマンドを実行してNetworkManagerサービスを再起動し、変更を適用します。NetworkManagerの新しいDNSリゾルバーは’/run/NetworkManager/resolv.conf‘ファイルに書き込まれます。

sudo systemctl restart NetworkManager

以下のコマンドを実行して、デフォルトファイル’/etc/resolve.conf’を削除します。次に、’/run/NetworkManager/resolv.conf‘の新しいシンボリックリンクファイルを’/etc/resolv.conf‘に作成します。

rm -f /etc/resolv.conf  
ln -s /run/NetworkManager/resolv.conf /etc/resolv.conf

これで、クライアントマシンはsystemd-resolvedをDNSリゾルバーとして使用しています。’systemd-resolved’の背後で、Unbound DNSサーバーを使用しています。

以下は、systemd-resolvedとNetworkManagerを使用した後の‘/etc/resolv.conf’ファイルの詳細です。

cat /etc/resolv.conf

出力:

dns resolver via systemd-resolved

Unbound DNSサーバーの確認

以下のdigコマンドを実行して、Unbound DNSがDNSリゾルバーとして機能していることを確認します。パラメータ’@192.168.5.25‘は、IPアドレス’192.168.5.25‘で実行されているUnbound DNSサーバーを使用していることを確認します。

dig @192.168.5.25

成功すると、以下の出力のようにルートDNSサーバーからの回答を受け取ります。また、ヘッダー出力に’ad‘(認証データ)フラグが表示され、DNSSECが有効であることがわかります。

verify unbound dns resolver

次に、以下のコマンドを実行して、クライアントがインターネット上のドメイン名にアクセスできることを確認します。

dig google.com  
dig fb.com

成功すると、ドメイン’google.com‘および’fb.com‘のDNSレコードの詳細が出力されます。クエリに応答するDNSリゾルバーが’127.0.0.53#53‘であることがわかります。これは、systemd-resolvedがUnboundをデフォルトのリゾルバーとして使用していることを示しています。また、各クエリの’Query time‘も表示され、’google.com‘へのクエリ時間は’74ms‘、’fb.com‘へのクエリ時間は’154ms‘です。

google.comの出力:

dig google.com

fb.comの出力:

dig fb.com

上記のdigコマンドを再実行すると、’Query time‘が短縮されるはずです。これにより、クエリがキャッシュされ、DNSキャッシュが機能していることが確認されます。

dig google.com  
dig fb.com

出力:

dig google.com after cached

dig fb.com after cached

次に、以下のdigコマンドを実行してローカルドメインまたはサブドメインを確認します。成功すると、各サブドメインがUnbound設定ファイル’/etc/unbound/unbound.conf‘で設定された正しいIPアドレスにポイントされます。

dig firewall.garden.lan +short  
dig vault.garden.lan +short  
dig media.garden.lan +short

出力:

verify local domains

次に、以下のdigコマンドを実行して、PTRレコードが正しいドメイン名にポイントされていることを確認します。

dig -x 10.0.0.1 +short  
dig -x 10.0.0.2 +short  
dig -x 10.0.0.3 +short

出力:

verify ptr records

最後に、tcpdumpを介してDoT(DNS over TLS)を確認することもできます。以下のdnfコマンドを介してUnboundサーバーに’tcpdump‘パッケージをインストールします。

sudo dnf install tcpdump

プロンプトが表示されたらyを入力し、ENTERを押して続行します。

install tcpdump

次に、以下のtcpdumpコマンドを実行して、DoTポート853でインターフェース’eth0‘のトラフィックを監視します。この例では、Unbound DNSはIPアドレス’192.168.5.25‘で実行されており、インターフェースは’eth0‘です。

tcpdump -vv -x -X -s 1500 -i eth0 'port 853'

クライアントマシンに移動し、以下のコマンドを実行して、digコマンドを介して外部/インターネットドメイン名にアクセスします。

dig twitter.com

出力:

verify DNS-over-TLS

その後、Unboundサーバーに戻り、tcpdump出力にこのような出力が表示されるはずです。

verify DNS-over-TLS tcpdump

これで、Unboundを介してローカルDNSサーバーをインストールおよび構成しました。また、RHELクライアントでsystemd-resolvedとNetworkManagerを介してDNSリゾルバーを構成しました。

結論

このガイドでは、Rocky Linux 9サーバーにUnboundローカルDNSサーバーをインストールしました。DNSキャッシュ、DNSSEC(デフォルトで有効)、プライベートアドレスとACLの構成、local-zoneを介したローカルドメインの追加、次にDoT(DNS-over-TLS)を使用したDNSリゾルバーとしてUnboundを構成しました。

さらに、基本的なDNSプライバシーとセキュリティを構成し、Unboundを最適化し、Rsyslogとlogrotateを介してUnboundログを構成しました。

このガイドの最後までに、NetworkManagerとsystemd-resolvedを介してRHELベースのディストリビューションでDNSリゾルバーを設定する方法も学びました。また、DNSサーバーを確認するためのdigコマンドの基本的な使用法も学びました。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。