それなりに適当にやってます

なんとなくそれっぽいメモとか備忘録とか適当に。 2018年5月にブログ移転しました。 古い記事は未整理です。

Unbound によるDNSキャッシュ&簡易DNSコンテンツサーバの構築

自宅用に自分用メモ

参考URL

やる事

  1. openssl のインストール
  2. ldns のインストール
  3. drill のインストール (digコマンドのldns版みたいなもの)
  4. unbound のインストール
  5. unbound の設定

試した環境

KVM仮想マシン / Scientific Linux 6.1 (32bit)

インストールやら設定やら

1.openssl のインストール

※SL6.1付属のOpenSSLだと、ldnsのconfigure時に怒られたのでソースから導入する

# mkdir /usr/local/src
# cd /usr/local/src
# wget http://www.openssl.org/source/openssl-1.0.0d.tar.gz
# tar zxvf openssl-1.0.0d.tar.gz
# cd openssl-1.0.0d
# ./config && make && make test && make install ; echo $?

2.ldns のインストール

※NLNet Labs のページからダウンロードしてくる

# mkdir /usr/locals/src/ldns
# cd /usr/local/src/ldns
# wget http://www.nlnetlabs.nl/downloads/ldns/ldns-1.6.10.tar.gz
# tar zxvf ldns-1.6.10.tar.gz
# cd ldns-1.6.10
# ./configure && make && make install ; echo $?

ソースに付属している"example"も必要な場合は下記コマンドも実行する

# cd ./examples
# ./configure && make && make install ; echo $?

3.drill のインストール

※drill は v1.x以降のldnsに付属しているのでそれをインストールする

# cd /usr/local/src/ldns/ldns-1.6.10/drill
# ./configure && make && make install ; echo $?

4.unbound のインストール

libexpat が必要と言われるので、下記対応の前に別途インストールしておく。他に必要なものがあれば適宜入れる

# yum install expat-devel

unbound起動時にchrootを設定するので configure のパス指定に少し注意

# mkdir /usr/local/src/unbound
# cd /usr/local/src/unbound
# wget http://unbound.net/downloads/unbound-1.4.12.tar.gz
# tar zxvf unbound-1.4.12.tar.gz
# cd unbound-1.4.12
# ./configure --sysconfdir=/var --with-conf-file=/var/unbound/unbound.conf
# make && make install ; echo $?

=>ライブラリの登録

# echo "/usr/local/lib" >> /etc/ld.so.conf
# ldconfig
# ldconfig -p | grep unbound    # ライブラリが認識されてるか確認

=>起動スクリプトの設定

# cp contrib/unbound.init /etc/init.d/unbound
# sed -i 's_/usr/sbin/unbound_/usr/local/sbin/unbound_' /etc/init.d/unbound
# chkconfig --add unbound
# chkconfig unbound on

=>設定ファイルのシンボリック・リンク作成

# ln -s /var/unbound/unbound.conf /etc/

=>"unbound"ユーザの作成

# groupadd unbound
# useradd -g unbound -d /var/unbound -s /sbin/nologin unbound
# chown unbound:unbound /var/unbound

=>IPv6の無効化とバージョン情報の隠蔽

# cp /var/unbound/unbound.conf /var/unbound/unbound.conf.orig
# vi /etc/unbound.conf