サーバー設定 · 1 min read · Oct 25, 2025

完璧なセットアップ - Debian Etch (Debian 4.0) - ページ 4

9 DNS サーバー

実行

apt-get install bind9

セキュリティ上の理由から、BINDをchroot環境で実行したいので、以下の手順を実行します:

/etc/init.d/bind9 stop

ファイル /etc/default/bind9 を編集して、デーモンが特権のないユーザーbindとして、/var/lib/namedにchrootされるようにします。行を修正します: OPTIONS=”-u bind” を OPTIONS=”-u bind -t /var/lib/named” にします:

vi /etc/default/bind9

| OPTIONS="-u bind -t /var/lib/named" # RESOLVCONFをnoに設定してresolvconfを実行しないようにする RESOLVCONF=yes |

/var/libの下に必要なディレクトリを作成します:

mkdir -p /var/lib/named/etc
mkdir /var/lib/named/dev
mkdir -p /var/lib/named/var/cache/bind
mkdir -p /var/lib/named/var/run/bind/run

次に、設定ディレクトリを /etc から /var/lib/named/etc に移動します:

mv /etc/bind /var/lib/named/etc

古い場所から新しい設定ディレクトリへのシンボリックリンクを作成します(将来bindが更新されたときの問題を避けるため):

ln -s /var/lib/named/etc/bind /etc/bind

nullデバイスとrandomデバイスを作成し、ディレクトリの権限を修正します:

mknod /var/lib/named/dev/null c 1 3
mknod /var/lib/named/dev/random c 1 8
chmod 666 /var/lib/named/dev/null /var/lib/named/dev/random
chown -R bind:bind /var/lib/named/var/*
chown -R bind:bind /var/lib/named/etc/bind

重要なメッセージをシステムログに記録できるようにするために、/etc/default/syslogd を修正する必要があります。行を修正します: SYSLOGD=”” を SYSLOGD=”-a /var/lib/named/dev/log” にします:

vi /etc/default/syslogd

| # # syslogdのためのトップ設定ファイル # # 可能な引数の完全なドキュメントはmanページ # syslogd(8)にあります。 # # リモートUDPロギングにはSYSLOGD="-r"を使用します # SYSLOGD="-a /var/lib/named/dev/log" |

ロギングデーモンを再起動します:

/etc/init.d/sysklogd restart

BINDを起動し、/var/log/syslogでエラーを確認します:

/etc/init.d/bind9 start

10 MySQL

MySQLをインストールするために、次のコマンドを実行します

apt-get install mysql-server mysql-client libmysqlclient15-dev

MySQLがlocalhostだけでなくすべてのインターフェースでリッスンするようにしたいので、/etc/mysql/my.cnf を編集し、行 bind-address = 127.0.0.1 をコメントアウトします:

vi /etc/mysql/my.cnf

| [...] #bind-address = 127.0.0.1 [...] |

その後、MySQLを再起動します:

/etc/init.d/mysql restart

ネットワーキングが有効になっているか確認します。実行します

netstat -tap

出力に次のような行が表示されるはずです:

tcp        0      0 *:mysql                 *:*                     LISTEN     3281/mysqld

次のコマンドを実行して、rootユーザーのパスワードを設定します(さもなければ誰でもあなたのMySQLデータベースにアクセスできます!)。

mysqladmin -u root password yourrootsqlpassword  
mysqladmin -h server1.example.com -u root password yourrootsqlpassword
Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。