DNS構築チャレンジ_part1
スピーカー
barson さん
概要
- 作業風景配信
- 自宅内にDNSコンテンツサーバを構築する。
前提条件
ここでは例として下記のドメインとIPアドレスを用いて説明する
※説明用であるため実在しない内容も含まれます。
ドメイン名:infra-workshop.tech IPアドレス:10.20.0.0/24
作業環境
root@dns-stage:~# lsb_release -a No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 10 (buster) Release: 10 Codename: buster
パッケージのインストール
root@dns-stage:~# apt install nsd dnsutils
パッケージの更新
root@dns-stage:~# apt clean && apt update && apt upgrade
バージョンの確認
# nsd -v NSD version 4.1.26 Written by NLnet Labs. Copyright (C) 2001-2006 NLnet Labs. This is free software. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
zoneファイルを配置するディレクトリの作成
# mkdir -p /etc/nsd/zones/
ゾーンファイルの編集
正引き用のzoneファイルを作成します。
zoneファイル名はinfra-workshop.tech.zoneとすると管理がしやすくなる。
# cat << 'EOF' | tee /etc/nsd/zones/infra-workshop.tech.zone $TTL 3600 $ORIGIN infra-workshop.tech. @ IN SOA ns.infra-workshop.tech. root.infra-workshop.tech. ( 2016121601 ; serial number 10800 ; Refresh 3600 ; Retry 604800 ; Expire 1 ; Min TTL ) IN NS ns.infra-workshop.tech. wiki IN A 10.20.0.1 wp IN A 10.20.0.2 EOF
逆引き用のzoneファイルを作成します。
zoneファイル名は0.20.10.in-addr.arpa.zoneとすると管理がしやすくなる。 WEBページの凡例に逆引きzoneでも「
」を定義している例もあるがこれは不要# cat << 'EOF' | tee /etc/nsd/zones/0.20.10.in-addr.arpa.zone $TTL 3600 @ IN SOA ns.infra-workshop.tech. root.infra-workshop.tech.( 2015123105 ; Serial 28800 ; Refresh 14400 ; Retry 3600000 ; Expire 86400 ) IN NS ns.infra-workshop.tech. 1 IN PTR wiki.infra-workshop.tech. 2 IN PTR wp.infra-workshop.tech. EOF
nsd.confの編集
# cat << 'EOF' | tee /etc/nsd/nsd.conf server: port: 53 do-ip4: yes do-ip6: no username: nsd logfile: "/var/log/nsd.log" zonesdir: "/etc/nsd/zones" remote-control: control-enable: yes zone: name: "infra-workshop.tech" zonefile: "infra-workshop.tech.zone" zone: name: "0.20.10.in-addr.arpa" zonefile: "0.20.10.in-addr.arpa.zone" EOF
サービスのreload/restart
別ターミナルでlogを表示できるようにしておくと良い
# tail -f /var/log/syslog | grep "nsd"
zoneファイルの作成/削除時は restart が必要 既存のzoneファイルの編集時は reload でOK
# service nsd reload # service nsd restart
正常性の確認
正引きの確認
# dig @localhost wiki.infra-workshop.tech +norec # dig @localhost wp.infra-workshop.tech +norec
逆引きの確認
# dig @localhost -x 10.20.0.1 +norec # dig @localhost -x 10.20.0.2 +norec
作業完了
トラブルシューティング
/var/log/nsd.log について
エラーメッセージ
error: Cannot open /var/log/nsd.log for appending (Permission denied), logging to stderr
対処法
不明
試したこと
# chmod 777 /var/log/nsd.log
結果
error: Cannot open /var/log/nsd.log for appending (Read-only file system), logging to stderr
試したこと
# chmod 664 /var/log/nsd.log
結果
error: Cannot open /var/log/nsd.log for appending (Permission denied), logging to stderr
/run/nsd/nsd.pid について
エラーメッセージ
warning: failed to unlink pidfile /run/nsd/nsd.pid: Permission denied
対処法
# chown -R nsd:nsd /run/nsd