Unbound - インストールと設定方法
この文書はあなたのシステムでunboundをコンパイルして、インストールして、設定する方法を紹介します。
コンパイル
あなたが使っているディストリビューションのパッケージ マネージャがunboundのパッケージを扱っていたら、このステップをとばして、パッケージ マネージャでそのパッケージをインストールすることができます。
ソフトウェアをコンパイルするためには、opensslとそのincludeファイル(しばしばopenssl-develという名前のパッケージ名)がすでにインストールされている必要があります。./configure [オプション]; make; make installを実行してします。
訳注:バージョン1.4.7以降ではlibexpatがインストールされている必要があります。
libldnsライブラリがインストールされていなければ、unboundのソースtarballに含まれているldnsが自動的に使われます。
configureのオプション。プログラムのインストール場所を--prefix=/usr/local
で指定するように、様々なファイルとディレクトリのデフォルトの場所をカスタマイズできます。リンクするライブラリの場所は--with-ldns=dir
や--with-libevent=dir
や--with-ssl=dir
で指定できます。調整をしたいのでなければ、./configureにはオプションは必要ないです。
BSDシステムでは、makeの代わりにgmakeを使う必要があります。
make installでインストールでき、make uninstallでアンインストールできます。アンインストールは設定ファイルを削除しません。
unboundのソースのcontribeディレクトリにはunboundのためのサンプルの(BSDとLinuxシステムの)rc.dスクリプトがあります。
設定
設定ファイルは/usr/local/etc/unbound/unbound.conf
にコピーされます。しかし、ディストリビューションによっては/etc/unbound/unbound.conf
や/etc/unbound.conf
にコピーされます。設定ファイルには完全な注釈が付いています。目を通して、好きなオプションを選ぶことができます。あるいは、以下の設定を使うこともできます。これは、ローカル サブネットに提供する共通オプションの取り急ぎの設定です。
以下の設定はIPv4のサブネットとIPv6のlocalhostのDNSサービスの共通の設定です。利用するサブネットに一致するようにIPv4のサブネットを変更できます。さらに、IPv6を持っていればIPv6のサブネットを追加してください。
# unbound.conf for a local subnet.
server:
interface: 0.0.0.0
interface: ::0
access-control: 192.168.0.0/16 allow
access-control: ::1 allow
verbosity: 1
|
デフォルトでは、ソフトウェアはchrootが有効になっています。これはリモートからの攻撃に対する防御の追加のレイヤーを提供します。ファイルシステムのルート('/
')で開始するフルパス名としてファイルのパスを入力します。chrootで問題が起きたら、設定ファイルにchroot: ""
を設定することで無効にできます。
さらに、サーバは権限を落とすためのユーザをunbound
とします。お好みのアカウント管理ツール(useradd(8))でこのユーザを追加したり、設定ファイルにusername: ""
を設定することでこの機能を無効にすることができます。
/etc/rc.d/init.d/unbound start
のようなrc.dスクリプト(あなたやパッケージマネージャがインストールしたものがあればそれ)を使ってサーバを起動します。あるいはユーザrootとしてunbound -c <config>
を実行します。
リモート制御の設定
unbound-control
を使ってリモート制御を行うことができます。まず、必要なTLS鍵ファイルを生成するためにunbound-control-setup
を実行します。鍵ファイルはデフォルトのインストール ディレクトリに配置されます。デーモンを実行させるためにユーザ名unbound
を使うときには、サーバが鍵ファイルを読むのを許可するため、sudo -u unbound unbound-control-setup
を使って鍵を生成します。設定ファイルの終わりに次の内容を追加してください。
# enable remote-control
remote-control:
control-enable: yes
|
これで、unbound-control
を使ってデーモンにコマンドを送ることができます。鍵ファイルを読む必要があれば、sudo unbound-control
を行う必要があります。デフォルトではlocalhostからの接続のみが許可されています。
追加情報
設定できることがたくさんあります:
- DNSSECを有効にする方法。DNSSECの設定方法が書いてあります。これに従ってトラスト アンカーを追加する必要があります。
- 1.0.2 Patch announcementは追加のセキュリティのための設定方法をカバーします。
- 最適化の方法。大規模環境で最大の性能を得る方法について議論します。
- 統計方法。サーバで統計を表示させる設定方法について議論します。
この文章はUnbound: Howto Setup and Install (www.unbound.net)の翻訳です。[翻訳: 滝澤 隆史]