###DNSサーバ
#####/etc/named.conf 設定ファイル
#####named.confのステートメント
zone ドメインの範囲
options 動作の詳細
include 外部ファイルの読み込み
acl アクセスを制御するアドレス
controls rndcコマンドの使用者
#####optionsステートメント
directory 作業ディレクトリ
forwarders 転送先DNSサーバ
forward 問合せ失敗時の動作
allow-query 問合せの受付ホスト
allow-transfer ゾーン転送を許可するホスト
allow-recursion 再帰問合せを受け付けるホスト
blackhole 受け付けないホスト
#####その他記述
recursion no; 再帰問合せを禁止
version バージョンの問合せに返す任意の文字列(バージョン隠ぺい)
#####コマンド
BIND の /etc/named.conf とゾーンファイルの変更内容を反映させるコマンド3つ
/etc/init.d/named restart
kill -HUP プロセスID
rndc reload
named-checkconf named.confの構文チェックをする
rndc namedの管理をローカルとリモートから行う
rndc status namedの状態を表示
rndc reload ゾーンファイルの再読み込み
rndc halt 直ちにnamedを停止する
rndc stop 更新を保存してnamedを停止する
DNSを利用し、ホスト名をIPアドレスに変換するコマンド3つ
dig DNSに対してクエリを発行、詳細な情報が得られる
host
nslookup
#####DNSソフトウェアの種類
dnsmasq キャッシュサーバとDHCPサーバの機能を持つ
djbdns キャッシュサーバとコンテンツサーバの機能が分かれている、RDBは使用できない。
PowerDNS RDBをデータベースとして使用できる
#####DNSに必要な設定ファイル2つ
/etc/nsswitch.conf 名前解決を行うように設定する
/etc/resolv.conf DNS サーバを設定する
#####ポート番号
DNSサーバが使用するポート番号:53
・ゾーンファイルのホスト名に「.(ピリオド)」を付け忘れると名前解決コマンドの実行結果に「56.168.192.in-addr.arpa」が表示される。
#####ゾーンファイルのディレクティブ
$ORIGIN FQDNでない場合にドメイン名を補完する
$TTL キャッシュの有効時間(秒)
#####ゾーンファイルのレコード (リソースタイプ)
SOAレコード DNSサーバ名と管理者のメールアドレス
NSレコード DNSサーバ名
Aレコード 各種サーバのIPアドレス(正引き)
MXレコード メールサーバ名
CNAMEレコード 別名
PTR 逆引きをするホスト名
#####ゾーンファイル記述におけるサーバの優先順位
リソースタイプの右側の数字は優先順位を表し、低いほど優先順位が高い。
named-compilezone コマンド スレーブサーバのゾーンファイルをテキスト形式に変換する
masterfile-format text; ゾーンデータをテキスト形式に変換する記述
named.conf の zoneステートメントに記述する
NXDOMAIN
DNSサーバは、名前解決ができない場合に「存在しない(NXDOMAIN)」というエラー表示
dnssec-keygen -n ZONE DNSSECで公開鍵と秘密鍵を作成するコマンド
dnssec-keygen -n HOST TSIGで共通の秘密鍵を作成するコマンド
dnssec-signzone DNSSECでゾーンファイルへ署名するコマンド
named -t /chroot -u uhoge -g ghoge named を chroot環境で起動するコマンド
DNSSEC
公開鍵暗号方式により、正当なDNSサーバである事を認証し、ゾーン情報が改竄されていないことを保証する技術
TSIG
マスターDNSサーバとスレーブDNSサーバに共通の秘密鍵を設定して、ゾーン転送、rndcコマンドの操作のなりすましを防ぎ、更新データの完全性を保証する技術
TSIGを使用する為、マスターDNSサーバとスレーブDNSサーバに共通の秘密鍵を設定する場合の /etc/named.conf のステートメントの書式
なお、設定するドメインを zzzzz.com 秘密鍵を xxxxx とする。
key "zzzzz.com" {
algorithm hmac-md5;
secret secret "xxxxx"
};
-TSIGで使用する共通鍵を作成するコマンド
dnssec-keygen -n HOST
-dnssec-keygenで、暗号化アルゴリズム、鍵ビット長、タイプ、鍵の名前を指定してTSIG用の鍵を作成するコマンド
dnssec-keygen -a 暗号化アルゴリズム -b 鍵ビット長 -n タイプ 鍵の名前
-TSIG
共通の秘密鍵 でDNSメッセージ全体の署名を行う
クライアントとサーバの時刻が合っていなければならない
-マスターDNSサーバとスレーブDNSサーバ間のゾーン転送にTSIGを使用する場合に両サーバの「/etc/named.conf」に必要な設定
keyステートメントに共通鍵を設定する
serverステートメントにお互いのIPアドレスと共通鍵を設定する
-DANE
DNS-based Authentication of Named Entitiesの略で、DNSを使った認証の仕組み
X509の証明書とDNSを紐づける