今回はゾーンファイルとDNSサーバーのセキュリティについてまとめました。
目次
- ゾーンファイル
- 主なディレクティブ
- リソースレコード
- DNSサーバーのセキュリティ
- DNSSEC
- TSIG
ゾーンファイル
DNSサーバーは複数のゾーンを管理することが出来ます。ゾーンに関する情報は、ゾーンごとにゾーンファイルに記述します。
ドメインの名前解決情報を記載したゾーンファイルは、$ で始まるディレクティブによる制御情報とリソースレコードから構成されます。
主なディレクティブ
ディレクティブ | 説明 |
#ORIGIN ドメイン名 | ドメイン名を補完します。 ホスト名のみで記述された名前に追加されます。 |
$TTL 秒 | デフォルト有効期間を指定します。 |
リソースレコード
リソースレコードとは、ドメイン名に関連付けられた情報のことです。リソースレコードにはさまざまな種類があり、それぞれに役割と記述のルールが決められています。
SOAレコード
管理情報が書かれています。ゾーンに関する基本的な方法を記述します。
NSレコード
DNSサーバーをFQDNで指定します。
FQDNとはDNSのホスト名、ドメイン名などを省略せずに指定した記述形式のこと。
MXレコード
メールサーバーがメールを送る際に参照するのがMXレコードです。ゾーンのメールサーバー名を指定します。
プリファレンス値は優先順位です。値が小さいものを程高い優先順位を持ちます。
Aレコード
ホスト名に対応するIPv4アドレスを指定します。
AAAAレコード
ホスト名に対応するIPv6アドレスを指定します。
PTRレコード
IPアドレスに対応するホスト名を記述します。IPアドレスを第四オクテットから第一オクテットの順に並べて最後に「in-addr.arpa.」をつけて表記します。
例)IPアドレスが192.168.100.1の場合、1.100.128.192.in-addr.arpa.
CNAMEレコード
ホスト名の別名を指定します。
named-checkzone
ゾーンファイルの構文チェックを行うコマンドです。
named-checkzone [オプション] ゾーン名 ゾーンファイル名
DNSサーバーのセキュリティ
DNSSEC(DNS Security Extensions)
DNSSECとは、公開鍵暗号方式を用いた電子署名により、正当なDNSサーバからのゾーン情報である事を認証し、またゾーン情報が改竄されていないことを保証する技術です。
公開鍵と秘密鍵を作成するには dnssec-keygen コマンドを使用します
ゾーンファイルへの署名に dnssec-signzone コマンドを使用します。
DANE(DNS-based Authentication of Named Entities)
DANEは、DNSSECの技術を応用して認証にDNSを使う仕組みです。
DNSSECにより、リソースレコードの正当性確認の仕組みがDNSに組み込まれたためHTTPSなどで使われるX509の証明書とドメインの紐づけの役割を認証局からDNSに移すことを目的に策定されています。
TSIG(transaction Signature)
TSIGとは、共通の秘密鍵を設定する事で、送信元のなりすましや更新データの改ざんを防止するための技術で、ゾーン転送でのDNSサーバの偽装防止、不正なクライアントからのrndcコマンドの操作防止などに使われます。
公開鍵と秘密鍵を作成するには dnssec-keygen コマンドを使用します。
ゾーンファイルへの署名に dnssec-signzone コマンドを使用します。
今回はDNSのゾーンファイルとセキュリティについてでした。
最後まで読んで頂き、ありがとうございました。
LPIC level2の他の分野へ移動できる全体ページへは以下リンクからお願いします。