Это старая версия документа.
Содержание
Автор — Falko Timme on HowtoForge.com
Мы можем установить Postfix, Courier, Saslauthd, MySQL, rkhunter и binutils одной командой:
(Если нужно, добавьте перед каждой командой sudo).
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
Вам зададут следующие вопросы:
- Новый пароль для пользователя «root» MySQL
- Повторите пароль для пользователя «root» MySQL
- Создать директории для администрирования по сети?
- Введите: No
- Основной тип конфигурации почты:
- Введите: Internet Site
- Имя почтовой системы:
- Введите: server1.example.com (подставьте адрес своего сайта)
- Требуется ли SSL-сертификат
- Введите: OK
Далее установим maildrop как показано ниже:
update-alternatives --remove-all maildir.5 update-alternatives --remove-all maildirquota.7 aptitude 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 [...] # Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. #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:~#
В ходе установки сертифи-каты SSL для IMAP-SSL и POP3-SSL были созданы для хоста localhost. Чтобы изменить его на корректный хост (server1.example.com в этом руководстве), удалите сертификаты…
cd /etc/courier rm -f /etc/courier/imapd.pem rm -f /etc/courier/pop3d.pem
и отредактируйте следующие два файла, заменяя '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 restart
Установка 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-perl
Установка 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
Необходимо ответить на следующие вопросы:
- Веб-сервер для автоматической перенастройки:
- Введите: apache2
- Настроить базу данных для работы phpmyadmin с dbconfig-common?
- Введите: No
Затем наберите следующую команду, чтобы включить модули Apache suexec, rewrite, ssl, actions и include:
a2enmod suexec rewrite ssl actions include
Потом перезапустите Apache:
/etc/init.d/apache2 restart
Установка 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. Мой выглядит как в «Листинге 1» на следующей странице. Я добавил usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 к разделу с точкой монтирования /:
vi /etc/fstab
Чтобы добавить quota, выполните эту команду:
touch /aquota.user /aquota.group chmod 600 /aquota.* mount -o remount / quotacheck -avugm quotaon -avug|
Установка MyDNS
Перед установкой MyDNS мы должны предварительно установить несколько пакетов:
aptitude install g++ libc6 gcc gawk make texinfo libmysqlclient15-dev
MyDNS нет в репозиториях 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
Теперь сделаем скрипт исполняемым и добавим его в автозагрузку:
chmod +x /etc/init.d/mydns update-rc.d mydns defaults
Установка Vlogger и Webalizer
Vlogger и webalizer могут быть установлены так:
aptitude install vlogger webalizer
Установка Jailkit
Jailkit нужен, только если вы хотите изменить корневой каталог для SSH-пользовате-лей. Он может быть установлен так (важно: Jailkit должен быть установлен до ISPConfig, и не может быть установлен после!):
aptitude install build-essential autoconf automake1.9 libtool flex bison cd /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*
Установка fail2ban
Это не обязательно, но рекомендуется, потому что ISPConfig контролирует попытки показа лога fail2ban:
aptitude install fail2ban
В следующем месяце, в завершающей части, мы установим SquirrelMail и ISPConfig3, получив идеальный сервер, готовый к работе!