サーバー設定 · 3 min read · Feb 04, 2026
完璧なサーバー - Ubuntu 9.10 [ISPConfig 3] - ページ 4
12 Postfix、Courier、Saslauthd、MySQL、rkhunter、binutilsのインストール
Postfix、Courier、Saslauthd、MySQL、rkhunter、binutilsを1つのコマンドでインストールできます:
aptitude install postfix postfix-mysql postfix-doc mysql-client mysql-server courier-authdaemon courier-authlib-mysql courier-pop courier-pop-ssl courier-imap courier-imap-ssl libsasl2-2 libsasl2-modules libsasl2-modules-sql sasl2-bin libpam-mysql openssl getmail4 rkhunter binutils次の質問が表示されます:
MySQL “root” ユーザーの新しいパスワード: <– yourrootsqlpassword
MySQL “root” ユーザーのパスワードを再入力: <– yourrootsqlpassword
Webベースの管理用のディレクトリを作成しますか? <– いいえ
メール構成の一般的なタイプ: <– インターネットサイト
システムメール名: <– server1.example.com
SSL証明書が必要ですか <– はい
次に、maildropを次のようにインストールします:
update-alternatives --remove-all maildir.5
update-alternatives --remove-all maildirquota.7aptitude install maildropなぜ他のすべてのパッケージと一緒にmaildropをインストールしなかったのか疑問に思うかもしれません。その理由は、courier-baseパッケージのバグです - maildropをcourier-pop、courier-pop-ssl、courier-imap、courier-imap-sslと一緒にインストールすると、次のエラーが発生します:
update-alternatives: error: alternative link /usr/share/man/man5/maildir.5.gz is already managed by maildir.5.gz.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ネットワークが有効になっているか確認します。次のコマンドを実行します:
netstat -tap | grep mysql出力は次のようになります:
root@server1:~# netstat -tap | grep mysql
tcp 0 0 *:mysql *:* LISTEN 6267/mysqld
root@server1:~#インストール中に、IMAP-SSLおよびPOP3-SSL用のSSL証明書がホスト名localhostで作成されます。これを正しいホスト名(このチュートリアルではserver1.example.com)に変更するには、証明書を削除します…
cd /etc/courier
rm -f /etc/courier/imapd.pem
rm -f /etc/courier/pop3d.pem… 次の2つのファイルを修正します; CN=localhostをCN=server1.example.comに置き換えます(必要に応じて他の値も変更できます):
vi /etc/courier/imapd.cnf| [...] CN=server1.example.com [...] |
vi /etc/courier/pop3d.cnf| [...] CN=server1.example.com [...] |
その後、証明書を再作成します…
mkimapdcert
mkpop3dcert… そして、Courier-IMAP-SSLおよびCourier-POP3-SSLを再起動します:
/etc/init.d/courier-imap-ssl restart
/etc/init.d/courier-pop-ssl restart13 Amavisd-new、SpamAssassin、およびClamavのインストール
amavisd-new、SpamAssassin、およびClamAVをインストールするには、次のコマンドを実行します
aptitude install amavisd-new spamassassin clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl14 Apache2、PHP5、phpMyAdmin、FCGI、suExec、Pear、およびmcryptのインストール
Apache2、PHP5、phpMyAdmin、FCGI、suExec、Pear、およびmcryptは次のようにインストールできます:
aptitude 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次の質問が表示されます:
自動的に再構成するWebサーバー: <– apache2
dbconfig-commonでphpmyadminのデータベースを構成しますか? <– いいえ
次に、Apacheモジュールのsuexec、rewrite、ssl、actions、およびincludeを有効にするために次のコマンドを実行します:
a2enmod suexec rewrite ssl actions includeその後、Apacheを再起動します:
/etc/init.d/apache2 restart15 PureFTPdおよびQuotaのインストール
PureFTPdとquotaは次のコマンドでインストールできます:
aptitude install pure-ftpd-common pure-ftpd-mysql quota quotatoolファイル/etc/default/pure-ftpd-commonを編集します…
vi /etc/default/pure-ftpd-common… そして、スタートモードがstandaloneに設定され、VIRTUALCHROOT=trueに設定されていることを確認します:
| [...] STANDALONE_OR_INETD=standalone [...] VIRTUALCHROOT=true [...] |
その後、PureFTPdを再起動します:
/etc/init.d/pure-ftpd-mysql restart/etc/fstabを編集します。私のは次のようになっています(マウントポイント/のパーティションにusrjquota=aquota.user、grpjquota=aquota.group、jqfmt=vfsv0を追加しました):
vi /etc/fstab| # /etc/fstab: 静的ファイルシステム情報。 # # 'blkid -o value -s UUID'を使用してデバイスのユニバーサル一意識別子を印刷します; これはUUID=を使用して、デバイスの名前をより堅牢な方法で指定するために使用できます。 # デバイスが追加または削除されても機能します。fstab(5)を参照してください。 # # <ファイルシステム> <マウントポイント> <タイプ> <オプション> <ダンプ> <パス> proc /proc proc defaults 0 0 /dev/mapper/server1-root / ext4 errors=remount-ro,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 0 1 # /bootはインストール中に/dev/sda5にありました UUID=9ea34148-31b7-4d5c-baee-c2e2022562ea /boot ext2 defaults 0 2 /dev/mapper/server1-swap_1 none swap sw 0 0 /dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0 /dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0 |
quotaを有効にするには、次のコマンドを実行します:
touch /aquota.user /aquota.group
chmod 600 /aquota.*
mount -o remount /quotacheck -avugm
quotaon -avug16 MyDNSのインストール
MyDNSをインストールする前に、いくつかの前提条件をインストールする必要があります:
aptitude install g++ libc6 gcc gawk make texinfo libmysqlclient15-devMyDNSはUbuntu 9.10のリポジトリには存在しないため、次のように自分でビルドする必要があります:
cd /tmp
wget http://heanet.dl.sourceforge.net/sourceforge/mydns-ng/mydns-1.2.8.27.tar.gz
tar xvfz mydns-1.2.8.27.tar.gz
cd mydns-1.2.8
./configure
make
make install次に、MyDNSのスタート/ストップスクリプトを作成します:
vi /etc/init.d/mydns| #! /bin/sh # # mydns MyDNSサーバーを起動します # # 作者: Philipp Kern <[email protected]>. # Miquel van Smoorenburgによるスケルトン1.9.4に基づいています # <[email protected]>およびIan Murdock <[email protected]>. # set -e PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin DAEMON=/usr/local/sbin/mydns NAME=mydns DESC="DNSサーバー" SCRIPTNAME=/etc/init.d/$NAME # パッケージが削除された場合は優雅に終了します。 test -x $DAEMON || exit 0 case "$1" in start) echo -n "Starting $DESC: $NAME" start-stop-daemon --start --quiet \ --exec $DAEMON -- -b echo "." ;; stop) echo -n "Stopping $DESC: $NAME" start-stop-daemon --stop --oknodo --quiet \ --exec $DAEMON echo "." ;; reload|force-reload) echo -n "Reloading $DESC configuration..." start-stop-daemon --stop --signal HUP --quiet \ --exec $DAEMON echo "done." ;; restart) echo -n "Restarting $DESC: $NAME" start-stop-daemon --stop --quiet --oknodo \ --exec $DAEMON sleep 1 start-stop-daemon --start --quiet \ --exec $DAEMON -- -b echo "." ;; *) echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2 exit 1 ;; esac exit 0 |
次に、スクリプトを実行可能にし、システム起動リンクを作成します:
chmod +x /etc/init.d/mydns
update-rc.d mydns defaults17 VloggerおよびWebalizerのインストール
Vloggerとwebalizerは次のようにインストールできます:
aptitude install vlogger webalizer18 Jailkitのインストール
Jailkitは、SSHユーザーをchrootしたい場合にのみ必要です。次のようにインストールできます(重要: JailkitはISPConfigの前にインストールする必要があります - 後からインストールすることはできません!):
aptitude install build-essential autoconf automake1.9 libtool flex bisoncd /tmp
wget http://olivier.sessink.nl/jailkit/jailkit-2.10.tar.gz
tar xvfz jailkit-2.10.tar.gz
cd jailkit-2.10
./configure
make
make install
cd ..
rm -rf jailkit-2.10*19 fail2banのインストール
これはオプションですが推奨されます。なぜなら、ISPConfigモニターはfail2banログを表示しようとするからです:
aptitude install fail2ban新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。