Stubby

From ArchWiki
Jump to navigation Jump to search

Stubby はローカル DNS Privacy スタブリゾルバとして機能するアプリケーションです (DNS-over-TLS を使用)。Stubby はクライアントマシンから DNS Privacy リゾルバに送信された DNS クエリを暗号化して、エンドユーザーのプライバシーを守ります。

インストール

stubby パッケージをインストールしてください。

設定

ヒント: サンプル設定ファイルは /etc/stubby/stubby.yml.example に存在します。

stubby を設定するには以下の手順に従ってください。

リゾルバの選択

Stubby には複数のデフォルトリゾルバが存在します。/etc/stubby/stubby.yml で確認・編集することができます。最初から書かれているリゾルバのどれかをコメントアウトすることでデフォルト設定を使うことができます。もしくは こちらのリスト のリゾルバを使用できます。

リゾルバの設定例:

upstream_recursive_servers:

# The Surfnet/Sinodun servers
 - address_data: 145.100.185.15
    tls_auth_name: "dnsovertls.sinodun.com"
    tls_pubkey_pinset:
      - digest: "sha256"
        value: 62lKu9HsDVbyiPenApnc4sfmSYTHOVfFgL3pyB+cBL4=

# The Cloudflare server
- address_data: 1.1.1.1
    tls_port: 853
    tls_auth_name: "cloudflare-dns.com"
ノート: Stubby の設定に関する詳細は Configuring Stubby を参照してください。

resolv.conf の編集

リゾルバの選択後、resolv.conf ファイルを編集してリゾルバのアドレスを localhost のアドレスに置き換えてください:

/etc/resolv.conf
nameserver 127.0.0.1

他のプログラムによって上記の設定は上書きされることがあります。詳しくは resolv.conf#DNS 設定の保護を見てください。

起動

stubby.service起動有効化してください。

ヒントとテクニック

ローカル DNS キャッシュの設定

Stubby には DNS キャッシュが組み込まれていないため、毎回クエリを送信・解決するために接続が遅くなる可能性があります。DNS キャッシュを設定するには別の DNS キャッシュデーモンのインストール・設定が必要です。

ポートの変更

ローカルの DNS キャッシュに転送するために、デフォルトの 53 以外のポートを使うように Stubby を設定する必要があります。以下では例としてポート番号 53000 を使っています。1024 よりも大きいポート番号では stubby は root で動かさなくてもかまいません。

/etc/stubby/stubby.yml 内の listen_addresses の値を以下のように編集:

listen_addresses:
  - 127.0.0.1@53000
  -  0::1@53000
dnsmasq

ローカル DNS キャッシュとして dnsmasq を設定します。Stubby を使用するようにする基本設定は以下のとおりです:

/etc/dnsmasq.conf
no-resolv
proxy-dnssec
server=127.0.0.1#53000
listen-address=127.0.0.1

変更を適用するには dnsmasq.service再起動してください。

他の DNS キャッシュ

他の DNS キャッシュについては DNSCrypt#ローカル DNS キャッシュの設定を見てください。設定は大体同じです。