ИТ аутсорсинг в Киеве
info@itcomfort.com.ua

(050) 190-74-72

lРуководство по установке VEXIM 2 PDF Печать E-mail
РУКОВОДСТВО ПО УСТАНОВКЕ VEXIM 2

Содержание:
1. Предисловие
2. Возможные варианты установки
3. Установка: Apache 1.3.29
3.1. Настройка: VirtualHosts
4. Установка: MySQL 4.0.18
4.1. Настройка: Создание базы и пользователя
5. Установка: PHP 4.3.4
5.1. Настройка: Конфигурация Apache для PHP
6. Установка: ClamAV 0.68
6.1. Настройка: Автоматическое обновление баз
7. Установка: SpamAssassin
8. Установка: Exim 4.30
8.1. Настройка: Конфигурация роутеров и др.
9. Установка: Courier-IMAP
9.1. Настройка: Общая конфигурация Courier-IMAP
9.2. Настройка: Конфигурация IMAP
9.3. Настройка: Конфигурация POP3
10. Установка: Vexim 2
10.1. Настройка: Первоначальные установки
11. Установка: Horde IMP Webmail
12. Если что-то не работает


1. Предисловие
---------------

Данное руководство описывает установку полнофункциональной системы с
комплексным решением для электронной почты, включая SMTP, POP3, IMAP,
webmail и панель управления Vexim с такими функциями, как фильтрация
спама и вирусов.

Хочется отметить, что на протяжении всего данного руководства я
использую оболочку sh.

Если вы используете что-то другое, то, возможно, синтаксис команд будет
отличаться.

В тех местах, где командная строка начинается с символа $
подразумевается что используется учетная запись обычного пользователя,
там же, где она начинается с символа #, означает что это делается от
имени пользователя root. В принципе, вся процедура может быть сделана
под суперпользователем, но это крайне не желательно из соображений
безопасности.

В руководстве приведены как команды для установки с использованием
системы управления пакетами FreeBSD (рекомендуется), если вы работаете
под FreeBSD, так и команды для компиляции из исходных кодов.

Инструкции по установке из исходников даны в основном для тех, кто
использует ОС Linux.

Вам следует использовать что-то одно, не всё вместе.


2. Возможные варианты установки


Самый элементарный минимум, необходимый для запуска системы электронной
почты с использованием Vexim - это Apache, MySQL, PHP, Exim и сам
Vexim. Для доступа пользователей к своим почтовым ящикам автор
рекомендует использовать ПО Courier-IMAP, которое предоставляет функции
IMAP и/или POP3.

С использованием Courier-IMAP, предоставляющего возможность работы по
протоколу IMAP, вы можете сделать единую почтовую систему с
веб-интерфейсом. Я, пожалуй, пропущу описание установки и настройки
пакета Horde IMP, также как и других аналогичных. К примеру,
SquirrelMail, который также прекрасно справляется со своими задачами (по
моему личному мнению).

Если у вас уже установлены и работают Apache, PHP и MySQL, следует
убедиться в том, что у вас настроен дополнительный VirtualHost в
Apache, как описано в пункте 3.1 и есть база данных и пользователь в
MySQL, как в пункте 4.1. В таком случае можно просто пропустить эти
пункты.

Пункты 6 и 7 для настройки антивируса и спамфильтра не являются
обязательными, если вы не планируете их использовать. Однако следует
обратить внимание что тогда нужно будет закоментировать соответствующие
строки файла конфигурации Exim в пункте 8.1.

Помните, что разделы, посвященные Apache, PHP и MySQL не являются
основными объектами данной документации - если вам нужна какая-либо
дополнительная информация, пожалуйста обратитесь к их соответствующим
веб-сайтам и спискам почтовых рассылок. Также, возможно, кто-то из
списков рассылки Vexim окажет вам помощь в случае необходимости.


3. Установка: Apache 1.3.29


Последней стабильной версией Apache 1.3 на момент написания данного
руководства является 1.3.29, однако, более поздние версии этого продукта
содержат в основном только исправления, связанные с ошибками и
безопасностью, поэтому никакой координальной разницы быть не должно.

Прежде всего необходимо создать рабочий каталог для нашей установки и
перейти в него, например ~/vexim_install/

FreeBSD:

# cd /usr/ports/www/apache13 && make install clean distclean


Исходники:

$ wget www.apache.org/dist/httpd/apache_1.3.29.tar.gz


Если для вас есть какая-то разница, то можете посетить
httpd.apache.org/download.cgi и скачать его с ближайшего к вам
зеркала

$ tar zxvf apache_1.3.29.tar.gz && cd apache_1.3.29
$ ./configure --prefix=/usr/local/apache1.3/ --enable-module=so


Вы можете спокойно менять prefix, если хотите... главное его запомнить!

$ make
# make install


3.1. Настройка: VirtualHosts

TODO - сделать хороший файл httpd.conf и добавить виртуальный хост для
Vexim в /www - также запустить демона httpd.

Большинство пользователей apache должны знать как настраивается
, если вы не уверены в своих знаниях, пожалуйста обратитесь
к документации на httpd.apache.org/


4. Установка: MySQL 4.0.18

Последняя версия продукта MySQL на момент написания руководства -
4.0.18, однако процедуры установки могут изменяться с выходом более
новых релизов. Я буду использовать бинарные релизы (как рекомендуют
разработчики MySQL) для платформы x86. Если у вас другая архитектура,
загрузите стандартные бинарники с www.mysql.com/downloads/mysql-4.0.html

FreeBSD:

# cd /usr/ports/databases/mysql40-server && make install clean distclean
# /usr/local/etc/rc.d/mysql-server.sh start
# mysqladmin -u root password 'new-password'


Замените текст new-password на нужный вам... что-нибудь более
безопасное, т.к. это предоставляет доступ к MySQL с правами root'а

# mysqladmin -uroot -p create vexim


Source:

$ wget mysql.mirror.anlx.net/Downloads/MySQL-4....pc-linux-i686.tar.gz


Снова идём на www.mysql.com/downloads/mysql-4.0.html если
необходимы зеркала

# cd /usr/local
# groupadd mysql
# useradd -g mysql mysql
# tar zxvf /PATH/TO/mysql-standard-4.0.18-pc-linux-i686.tar.gz
# ln -s mysql-standard-4.0.18-pc-linux-i686 mysql
# cd mysql
# ./scripts/mysql_install_db
# chown -R root .
# chown -R mysql data
# chgrp -R mysql .
# ./support-files/mysql.server start
# mysqladmin -uroot create vexim
# ./bin/mysqladmin -u root password 'new-password'


Замените текст new-password на нужный вам... что-нибудь более
безопасное, т.к. это предоставляет доступ к MySQL с правами root'а

Теперь необходимо заставить MySQL запускаться при загрузке. Скопируйте
скрипт /usr/local/mysql/support-files/mysql.server туда, где лежат
скрипты запуска в вашей системе (т.е. в /etc/rc.d/rc.mysql) или, если
используется система на базе init.d (такая как Redhat), в
/etc/rc.d/init.d/mysqld

Организация скриптов запуска/остановки может отличаться в зависимости от
дистрибутива, так что имейте это в виду...!


5. Установка: PHP 4.3.4

Ещё раз повторюсь, что PHP 4.3.4 - последняя версия на момент написания,
в то время как долгожданный PHP 5 всё ещё находится на стадии RC.

Я планирую обновить данный документ, как только выйдет его релиз.

FreeBSD:

# cd /usr/ports/lang/php4 && make install clean distclean


Из появившегося меню выберите:

IMAP (если собираетесь использовать веб-интерфейс сейчас или в будущем)
gettext
iconv
crypt


Исходники:

$ wget static.php.net/www.php.net/distributions/php-4.3.4.tar.bz2


Зеркала можно посмотреть на uk.php.net/get/php-4.3.4.tar.bz2/from/www.php.net/mirror

$ tar jxvf php-4.3.4.tar.bz2


На этом этапе необходимо определиться будете ли вы использовать
веб-интерфейс или нет - если да, то необходимо включить поддержку IMAP в
PHP сейчас (в принципе вы можете потом переустановить PHP).

Если вам НЕ нужна поддержка IMAP:

$ cd php-4.3.4
$ ./configure --with-apxs=/usr/local/apache/bin/apxs
--with-mysql=/usr/local/mysql/
--with-gettext --with-pear --with-zlib


Если вам НУЖНА поддержка IMAP

Нам понадобится imap-2002e, который содержит некоторые библиотеки,
необходимые для PHP...

$ wget ftp://ftp.cac.washington.edu/imap/imap-2002e.tar.Z
$ tar zxvf imap-2002e.tar.Z
$ cd imap-2002e


Теперь открываем ./Makefile в вашем любимом редакторе и смотрим какой
код соответствует вашей системе. Помните, существуют различные коды, в
зависимости от которых теневые пароли либо используются, либо нет. Для
моего Slackware 9.1 с теневыми паролями я использовал "slx".

$ make slx SSLTYPE=none


Измените "slx" на ваш трехзначный код, но оставьте опцию SSLTYPE=none -
это означает что сборка библиотек IMAP будет произведена без поддержки
OpenSSL. Т.к. мы используем его только на локальной машине, то лично я
не вижу веских причин строить тут зверскую безопасность. Однако,
возможно он понадобится, если вы собираетесь работать с другой машины
или не доверяете сети в плане безопасности.

# mkdir /usr/local/imap-2002e
# mkdir /usr/local/imap-2002e/lib
# mkdir /usr/local/imap-2002e/include
# cp ./c-client/*.c /usr/local/imap-2002e/lib/
# cp ./c-client/*.h /usr/local/imap-2002e/include/
# cp ./c-client/c-client.a /usr/local/imap-2002e/lib/libc-client.a
$ cd ../php-4.3.4
$ ./configure --with-apxs=/usr/local/apache/bin/apxs
--with-mysql=/usr/local/mysql/
--with-gettext --with-pear --with-zlib
--with-imap=/usr/local/imap-2002e/


Конец фрагмента "IMAP и PHP"

Настало время установки PHP:

$ make
# make install


5.1. Настройка: Конфигурация Apache для PHP

FreeBSD:
Это должно сделаться автоматически после установки PHP.

Исходники:
TODO - добавить .php handlers в httpd.conf


6. Установка: ClamAV 0.68

FreeBSD:

# cd /usr/ports/security/clamav && make install clean distclean


Если спросит, не ставьте флажок для "MILTER".

Исходники:

$ wget heanet.dl.sourceforge.net/sourceforge/clamav/clamav-0.68.tar.gz
$ tar zxvf clamav-0.68.tar.gz
$ cd clamav-0.68
# groupadd clamav
# useradd -g clamav clamav
$ ./configure
$ make
# make install


В любом случае:

Редактируем /usr/local/etc/clamav.conf под root'ом в текстовом редакторе:

- Закоментировать строку "Example" с помощью #
- Убрать коментарий со строки "ScanMail" в секции Mail Support


Если вы хотите получать уведомления о любых зараженных письмах, можно
включить функцию логов в этом файле.

FreeBSD:

Добавить строку:

clamav_clamd_enable="YES"


в /etc/rc.conf, и потом запустить:

/usr/local/etc/rc.d/clamav-clamd.sh start


Исходники:

Добавить в ваш rc.local (обычно /etc/rc.d/rc.local) строку:

clamd


для запуска демона ClamAV при загрузке. Вам потребуется запустить
"clamd" с правами root'а сейчас, чтобы заставить демона работать.


6.1. Настройка: Автоматическое обновление баз

Базы антивируса ClamAV распространяются через DNS-систему round-robin,
доступ к которой осуществляется при помощи демона freshclam.

FreeBSD и исходники:

Отредактировать /usr/local/etc/freshclam.conf, где раскоментировать
строку UpdateLogFile и изменить её следующим образом:

UpdateLogFile /var/log/clam-update.log


Сохранить файл и затем запустить:

# freshclam -d


Исходники:

Вам необходимо поместить его в ваш файл rc.local также, как это было
сделано выше для демона clamd.


8. Установка: SpamAssassin

FreeBSD:

# cd /usr/ports/mail/p5-Mail-SpamAssassin && make install clean distclean


Добавить строку:

spamd_enable="YES"


в /etc/rc.conf, затем запустить:

# /usr/local/etc/rc.d/spamd.sh start


8. Установка: Exim 4.30

FreeBSD:
# cd /usr/ports/mail/exim-mysql && make -DWITH_OPENSSL_BASE install clean distclean

Добавить строку: exim_enable="YES"

# pw groupadd vexim -g 90
# pw useradd vexim -u 90 -g vexim -d /usr/local/mail -m -s /nonexistant


Исходники:

$ wget ftp://ftp.demon.co.uk/pub/mirrors/exim/exim4/exim-4.34.tar.bz2


Зеркала на www.exim.org/mirrors.html

$ tar jxvf exim-4.34.tar.bz2
$ wget duncanthrax.net/exiscan-acl/exiscan-acl-4.34-21.patch


Этот патч необходим для фильтрации вирусов и спама. Последняя версия
на duncanthrax.net/exiscan-acl/ и её следует проверить если вам
нужен патч не для 4.34

$ cd exim-4.34
$ patch -p1 < ../exiscan-acl-4.34-21.patch
$ cp src/EDITME Local/Makefile
# groupadd -g 90 vexim
# useradd -g vexim -u 90 -d /usr/local/mail vexim


Теперь нужно отредактировать файл конфигурации для сборки Exim, добавив
туда необходимую нам информацию. Для начала откройте
exim-4.34/Local/Makefile в вашем любимом текстовом редакторе. Следующие
строки должны быть раскоментированы и заменены как показано тут:

Раскоментировать '# SUPPORT_TLS=yes' как 'SUPPORT_TLS=yes'
Раскоментировать '# EXIM_PERL=perl.o' как 'EXIM_PERL=perl.o'
Заменить строку, начинающуюся с 'CONFIGURE_FILE=' на
'CONFIGURE_FILE=/usr/local/etc/exim/configure'

Вам также нужно указать значения переменных 'EXIM_USER' и 'EXIM_GROUP'
согласно вашей системе. Обратитесь к документации по Exim чтобы узнать
что именно там должно быть.

# make
# make install


10. Установка: Vexim 2

$ wget silverwraith.com/vexim/vexim2.tar.gz
$ cd /www
# tar zxvf /PATH/TO/vexim2.tar.gz


Отредактируйте vexim2/setup/mysql.sql, и замените слово 'CHANGE' в
строках 6 и 7 на UID и GID по умолчанию, под которыми должна будет
происходить доставка. Эти UID и GID должны быть существующим
пользователем в вашей системе. Я использую пользователя "vexim",
созданного нами выше. Его UID и GID по умолчанию должны быть 90.

Теперь, в строке 69, начинающейся с "GRANT SELECT,...", измените слово
"CHANGE" на заданный вами пароль. Это пароль который как Exim, так и
веб-интерфейс, будут использовать для доступа к базе данных. Убедитесь
что пароль достаточно безопасен. Ну и наконец, в конце файла есть два
закоментированных параграфа с '-- ' в их началах. Если ваша система
использует пароли MD5 (FreeBSD, некоторые дистрибутивы Linux),
раскоментируйте первый параграф так, как это описано в файле.

Если ваша система использует пароли DES (Как правило Solaris и некоторые
другие дистрибутивы Linux), раскоментируйте второй параграф так, как это
описано в файле.

Сохраните файл и выйдите из редактора.

# mysql -uroot -p vexim < vexim2/setup/mysql.sql


Теперь отредактируем vexim2/vexim/config/variables.php. Там необходимо
поменять следующие параметры:

Изменить '$sqlpass' в строке 17 на пароль пользователя базы данных vexim,
который вы задали во время редактирования 'mysql.sql' в нашем предыдущем шаге.
Если ваша система использует DES-пароли, замените '$cryptscheme' на "des".

Теперь мы настроим Exim для работы с VExim.
Копируем vexim2/docs/configure в /usr/local/etc/exim/configure
Копируем vexim2/docs/vexim* в /usr/local/etc/exim

Отредактируем /usr/local/etc/exim/configure, где в строке 78,
начинающейся с 'hide mysql_servers', также заменим слово 'CHANGE' на
пароль пользователя базы данных vexim.

Конфигурация ACL начинается со строки 268. Тут есть несколько ACL'ов,
которые будут влиять на возможности получения почты. Пробегитесь
по каждому из этих файлов чтобы понять что делает каждый конкретный ACL.

По умолчанию разрешены SpamAssassin, ClamAV, SPF и несколько блок-листов
DNS. Многим из вас, возможно, не придется их трогать вообще, либо внести
туда лишь незначительные изменения. Эти параметры расширяют ваши
возможности по блокированию почты.

Вся (ну или почти вся) почта, удовлетворяющая этим условиям, является
спамом, но необходимо решить хотим мы его блокировать или нет. Если мы
не хотим блокировать вообще никакой почты, тогда удаляем все строки,
которые начинаются с '.include' в секции ACLs.


10.1. Настройка: Первоначальные установки

Теперь по идее уже можно открыть сайт VExim на виртуальном хосте,
который вы настроили в Apache.

При первом подключении следует зайти как:

Username: siteadmin
Domain:
Password: CHANGE


Как только вы войдёте на сайт следует нажать на ссылку 'Site Password'
слева и поменять этот пароль.

Интерфейс в принципе интуитивно простой, так что вполне может
использоваться без каких-либо пошаговых инструкций.

Типовые задачи, такие как добавление доменов и пользователей могут быть
найдены слева.

Если вы хотите удалить пользователя или домен, нажмите на значок корзины
напротив него.

Если хотите поменять настройки для пользователя или домена, то просто
щёлкните по его имени.

Теперь вы должны добавить домен, а затем запустить Exim как показано
ниже:

FreeBSD:

# /usr/local/etc/rc.d/exim.sh start

Исходники:

# exim -bd -q 30m

Opennet.ru
 


© 2008-2010 ITComfort - абонентское обслуживание компьютеров, IT аутсорсинг от профессионалов. Сайт разработан itcomfort.com.ua.

Rambler's Top100