サーバー設定 · 3 min read · Jan 05, 2026
ISPConfig 3を使用したDebian 5.0上の専用Web、メール、DNSおよびMySQLデータベースサーバーを持つマルチサーバーセットアップのインストール
ISPConfig 3を使用したDebian 5.0上の専用Web、メール、DNSおよびMySQLデータベースサーバーを持つマルチサーバーセットアップのインストール
バージョン 1.0
著者: Till Brehm
このチュートリアルでは、専用のWeb、メール、データベース、2つのDNSサーバーを持つISPConfig 3のマルチサーバーセットアップのインストールについて説明します。すべては単一のISPConfig 3コントロールパネルを通じて管理されます。以下に説明するセットアップでは5台のサーバーを使用し、サーバーを追加するだけで簡単に拡張できます。例えば、2台のメールサーバーを持ちたい場合は、これらのサーバーの両方で第2章からのセットアップ手順を実行してください。さらにWebサーバーを設定したい場合は、最初のサーバーを除くすべてのWebサーバーにISPConfigをエキスパートモードでインストールします。
ISPConfig 3の使い方を学ぶために、ISPConfig 3マニュアルをダウンロードすることを強くお勧めします。
約300ページにわたり、ISPConfigの概念(管理者、リセラー、クライアント)をカバーし、ISPConfig 3のインストールと更新方法を説明し、ISPConfig内のすべてのフォームとフォームフィールドのリファレンスを有効な入力の例とともに含み、ISPConfig 3での最も一般的なタスクのチュートリアルを提供します。また、サーバーをより安全にする方法を説明し、最後にトラブルシューティングセクションがあります。
1 5つのDebianベースシステムのインストール
このセットアップでは、1台のマスターサーバー(WebサーバーとISPConfigコントロールパネルインターフェースを実行)と、データベース、メール、DNS用の4台のスレーブサーバーがあります。
クラスタセットアップをインストールするには、Debian 5.0の最小インストールを持つ5台のサーバー(または仮想サーバー)が必要です。基本セットアップは、以下のチュートリアルの手順1 - 6で説明されています:
https://www.howtoforge.com/perfect-server-debian-lenny-ispconfig3
完璧なサーバーチュートリアルの手順1 - 6のみをインストールし、クラスタセットアップには異なる他の手順はインストールしないでください!
私の例では、5台のサーバーに次のホスト名とIPアドレスを使用します:
Webサーバー
ホスト名: web.example.tld
IPアドレス: 192.168.0.105
メールサーバー
ホスト名: mail.example.tld
IPアドレス: 192.168.0.106
DBサーバー
ホスト名: db.example.tld
IPアドレス: 192.168.0.107
DNSサーバー(プライマリ)
ホスト名: ns1.example.tld
IPアドレス: 192.168.0.108
DNSサーバー(セカンダリ)
ホスト名: ns2.example.tld
IPアドレス: 192.168.0.109
次のインストール手順でこれらのホスト名またはIPアドレスが出現する場合は、サーバーのIPとホスト名に合わせて変更する必要があります。
2 Webサーバーのインストール
hostsファイルを編集し、すべてのサーバーのIPアドレスとホスト名を追加します。ホスト名とIPアドレスは、セットアップに合わせて調整する必要があります。
vi /etc/hosts127.0.0.1 localhost
192.168.0.105 web.example.tld
192.168.0.106 mail.example.tld
192.168.0.107 db.example.tld
192.168.0.108 ns1.example.tld
192.168.0.109 ns2.example.tld
# 次の行はIPv6対応ホストにとって望ましいです
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhostsサーバーのホスト名を設定します: echo web.example.tld > /etc/hostname
/etc/init.d/hostname.sh start
sources.listファイルを編集します…
vi /etc/apt/sources.list …そして、以下の行が含まれていることを確認して、ボラタイルリポジトリを有効にします。
deb http://volatile.debian.org/debian-volatile lenny/volatile main contrib non-free実行します…
apt-get update…aptパッケージデータベースを更新するために; 次に実行します…
apt-get upgrade…最新の更新をインストールします(あれば)。
システムクロックをインターネット上のNTP(network time protocol)サーバーと同期させることは良いアイデアです。単に実行します…
apt-get -y install ntp ntpdate…これでシステム時間は常に同期されます。
MySQLサーバーをインストールします。ISPConfigはサーバー間で設定を同期するためにMySQLサーバーインスタンスが必要です。
apt-get -y install mysql-client mysql-serverインストーラーから要求されたときに新しいMySQLのパスワードを入力します。
マスターサーバー上でMySQLがすべてのインターフェースでリッスンするようにしたいので、localhostだけでなく、/etc/mysql/my.cnfを編集し、bind-address = 127.0.0.1の行をコメントアウトします:
vi /etc/mysql/my.cnf[...]
# skip-networkingの代わりに、デフォルトは現在localhostのみにリッスンすることです。これはより互換性があり、セキュリティが低下することはありません。
#bind-address = 127.0.0.1
[...] 次にMySQLを再起動します:
/etc/init.d/mysql restart次に、Apache2、PHP5、phpMyAdmin、FCGI、suExec、Pear、およびmcryptを次のようにインストールします:
apt-get -y install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap phpmyadmin php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby sudo 次の質問が表示されます:
Webサーバーを自動的に再構成する: <– apache2
次に、Apacheモジュールのsuexec、rewrite、ssl、actions、およびincludeを有効にするために次のコマンドを実行します:
a2enmod suexec rewrite ssl actions include ruby dav_fs dav auth_digestPureFTPdとquotaは次のコマンドでインストールできます:
apt-get -y install pure-ftpd-common pure-ftpd-mysql quota quotatool/etc/fstabを編集します。私のは次のようになっています(マウントポイント/のパーティションにusrquota、grpquotaを追加しました):
vi /etc/fstab| # /etc/fstab: 静的ファイルシステム情報。 # # <ファイルシステム> <マウントポイント> <タイプ> <オプション> <ダンプ> <パス> proc /proc proc defaults 0 0 /dev/sda1 / ext3 errors=remount-ro,usrquota,grpquota 0 1 /dev/sda5 none swap sw 0 0 /dev/hda /media/cdrom0 udf,iso9660 user,noauto 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto 0 0 |
quotaを有効にするには、次のコマンドを実行します: touch /quota.user /quota.group
chmod 600 /quota.*
mount -o remount /
quotacheck -avugm
quotaon -avug
vlogger、webalizer、およびawstatsをインストールします:
apt-get -y install vlogger webalizer awstats Jailkitをインストールします:JailkitはSSHユーザーをchrootする場合にのみ必要です。次のようにインストールできます(重要:JailkitはISPConfigの前にインストールする必要があります - 後でインストールすることはできません!):
apt-get -y install build-essential autoconf automake1.9 libtool flex bisoncd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.11.tar.gz
tar xvfz jailkit-2.11.tar.gz
cd jailkit-2.11
./configure
make
make install
cd ..
rm -rf jailkit-2.11*
fail2banをインストールします:これはオプションですが推奨されます。なぜなら、ISPConfigモニターはログを表示しようとするからです:
apt-get install fail2ban次に、ISPConfig 3をインストールします。最新のISPConfig 3の安定版リリースのダウンロードURLを取得するには、ISPConfigのウェブサイトを訪問してください:http://www.ispconfig.org/ispconfig-3/download/
このサーバーは、ISPConfigコントロールパネルインターフェースを実行する私たちのセットアップのマスターサーバーです。インストール中に他のMySQLインスタンスがこのノードのMySQLデータベースに接続できるようにするために、マスターデータベースに各スレーブサーバーのホスト名とIPアドレスのMySQLルートユーザーのレコードを追加する必要があります。これを行う最も簡単な方法は、すでにインストールしたWebベースのphpmyadmin管理ツールを使用することです。WebブラウザでURL http://192.168.0.105/phpmyadmin を開き、MySQLルートユーザーとしてログインし、次のMySQLクエリを実行します:
CREATE USER ‘root’@’192.168.0.106’ IDENTIFIED BY ‘myrootpassword’;
GRANT ALL PRIVILEGES ON . TO ‘root’@’192.168.0.106’ IDENTIFIED BY ‘myrootpassword’ WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE USER ‘root’@’192.168.0.107’ IDENTIFIED BY ‘myrootpassword’;
GRANT ALL PRIVILEGES ON . TO ‘root’@’192.168.0.107’ IDENTIFIED BY ‘myrootpassword’ WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE USER ‘root’@’192.168.0.108’ IDENTIFIED BY ‘myrootpassword’;
GRANT ALL PRIVILEGES ON . TO ‘root’@’192.168.0.108’ IDENTIFIED BY ‘myrootpassword’ WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE USER ‘root’@’192.168.0.109’ IDENTIFIED BY ‘myrootpassword’;
GRANT ALL PRIVILEGES ON . TO ‘root’@’192.168.0.109’ IDENTIFIED BY ‘myrootpassword’ WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE USER ‘root’@’mail.example.tld’ IDENTIFIED BY ‘myrootpassword’;
GRANT ALL PRIVILEGES ON . TO ‘root’@’mail.example.tld’ IDENTIFIED BY ‘myrootpassword’ WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE USER ‘root’@’db.example.tld’ IDENTIFIED BY ‘myrootpassword’;
GRANT ALL PRIVILEGES ON . TO ‘root’@’db.example.tld’ IDENTIFIED BY ‘myrootpassword’ WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE USER ‘root’@’ns1.example.tld’ IDENTIFIED BY ‘myrootpassword’;
GRANT ALL PRIVILEGES ON . TO ‘root’@’ns1.example.tld’ IDENTIFIED BY ‘myrootpassword’ WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE USER ‘root’@’ns2.example.tld’ IDENTIFIED BY ‘myrootpassword’;
GRANT ALL PRIVILEGES ON . TO ‘root’@’ns2.example.tld’ IDENTIFIED BY ‘myrootpassword’ WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
上記のsqlコマンドでは、IPアドレス(192.168.0.106 - 192.168.0.109)をサーバーのIPアドレスに置き換え、mail.example.tld、db.example.tld、ns1.example.tld、ns2.example.tldをサーバーのホスト名に置き換え、myrootpasswordを希望するルートパスワードに置き換えます。
権限を再読み込みするボタンをクリックするか、MySQLを再起動します。次にphpmyadminを閉じます。
server1.example.tldのシェルに戻り、最新のISPConfig 3安定版リリースをダウンロードします:
cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install/
次に、インストールスクリプトを開始します:
php -q install.php言語を選択します(en,de) [en]: <– en
インストールモード(standard,expert) [standard]: <– expert
サーバーの完全修飾ホスト名(FQDN)、例 server2.domain.tld [web.example.tld]: <– web.example.tld
MySQLサーバーホスト名 [localhost]: <– localhost
MySQLルートユーザー名 [root]: <– root
MySQLルートパスワード []: <– ここにMySQLルートパスワードを入力
作成するMySQLデータベース [dbispconfig]: <– dbispconfig
MySQL文字セット [utf8]: <– utf8
このサーバーは既存のISPConfigマルチサーバーセットアップに参加しますか(y,n) [n]: <– n
メールを構成しますか(y,n) [y]: <– n
Jailkitを構成しますか(y,n) [y]: <– y
FTPサーバーを構成しますか(y,n) [y]: <– y
DNSサーバーを構成しますか(y,n) [y]: <– n
Apacheサーバーを構成しますか(y,n) [y]: <– y
ファイアウォールサーバーを構成しますか(y,n) [y]: <–y
ISPConfig Webインターフェースをインストールしますか(y,n) [y]: <–y
ISPConfigポート [8080]: <– 8080
インストールディレクトリをクリーンアップします:
rm -rf /tmp/ispconfig3_install/install
rm -f /tmp/ISPConfig-3-stable.tar.gz
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。