Каталог статей
Приветствую Вас, Гость · Вход · RSS
Меню сайта


Категории раздела
FreeBSD [4]
Актуально для 7.1 RELEASE


Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Главная » Статьи » FreeBSD

Установка Qmail + Vpopmail + QmailAdmin + SquirrelMail

1. Установка Ucspi-tcp


В этом пакете содержится tcpserver (замена inetd), с помощью которого мы и будем запускать Qmail

#cd /usr/ports/sysutils/ucspi-tcp
#make install clean



2-1. Установка Qmail


#cd /usr/ports/mail/qmail
#make install clean



В появившемся меню выбираем

[X]    QMAILQUEUE_PATCH
[X]    BIG_TODO_PATCH


Далее сконфигурируем Qmail

#/var/qmail/configure/config-fast your.domain.ru
#cp /var/qmail/boot/home /var/qmail/rc
#cp /var/qmail/doc/mailer.conf.sample /etc/mail/mailer.conf



Вот что должно быть в /etc/mail/mailer.conf

    sendmail        /var/qmail/bin/sendmail
    send-mail       /var/qmail/bin/sendmail
    mailq           /var/qmail/bin/qmail-qread
    newaliases      /var/qmail/bin/newaliases
    hoststat        /var/qmail/bin/qmail-tcpto
    purgestat       /var/qmail/bin/qmail-tcpok



Затем в файл /etc/rc.conf добавляем следующую строку:

#echo 'sendmail_enable="NO"' >> /etc/rc.conf


Останавливаем sendmail:

#cd /etc/mail && make stop


Создаем файл /etc/tcp.smtp с таким вот содержанием:

    127.0.0.1:allow,RELAYCLIENT=""
    192.168.0.:allow,RELAYCLIENT=""
    :allow


Таким образом мы разрешили отправлять почту с localhost и нашей локальной сети
(более детальную информацию можно почерпнуть в man tcprules)


Затем, с помощью tcprules, конвертируем наш файл в бинарный формат cdb:

#tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp

Это нужно, чтобы tcpserver смог прочитать его.


На этом с Qmail'ом пока все, приступаем к установке vpopmail.


3. Установка VpopMail


#cd /usr/ports/mail/vpopmail
#make PREFIX=/home install clean


Тут PREFIX=/home означает что устанавливаться Vpopmail будет в директорию /home


Нам нужно создать виртуальный домен

#/home/vpopmail/bin/vadddomain your.domain.ru

Будет предложено ввести пароль для postmaster


Добавим учетную запись:

#/home/vpopmail/bin/vadduser test@your.domain.ru

Ну и введем пароль для него.


(По желанию) Spamassassin + ClamAV

Установка Spamassasin

#cd /usr/ports/mail/p5-Mail-SpamAssassin
#make install clean
#cp /usr/local/etc/mail/spamassassin/local.cf.sample /usr/local/etc/mail/spamassassin/local.cf



Добавляем такую строчку в /etc/rc.conf

#echo 'spamd_enable="YES"' >> /etc/rc.conf

И зпускаем spamd, чтобы Qmail-Scanner автоматически его обнаружил


Установка ClamAV

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


В появившемся меню ничего не выбираем

Добавляем такую строчку в /etc/rc.conf

#echo 'clamav_clamd_enable="YES"' >> /etc/rc.conf
#echo 'clamav_freshclam_enable="YES"' >> /etc/rc.conf



Установка Qmail-Scanner

#cd /usr/ports/mail/qmail-scanner
#make install clean



При установке она автоматически обнаружит Spamassassin (если spamd запущен) и ClamAV

#chown -R qscand:qscand /usr/local/qmailscan
#setuidgid qscand /usr/local/bin/qmail-scanner-queue.pl -z
#setuidgid qscand /usr/local/bin/qmail-scanner-queue.pl -g



Затем добавляем переменную QMAILQUEUE в /etc/tcp.smtp теперь он должен выглядеть так:

    127.0.0.1:allow,RELAYCLIENT="",QMAILQUEUE="/usr/local/bin/qmail-scanner-queue.pl"
    192.168.0.:allow,RELAYCLIENT="",QMAILQUEUE="/usr/local/bin/qmail-scanner-queue.pl"
    :allow,QMAILQUEUE="/usr/local/bin/qmail-scanner-queue.pl"



Снова конвертируем файл в бинарный формат

#tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp



Нам нужно чтобы clamd запускался от имени qscand, для это правим /usr/local/etc/clamd.conf
Изменяем параметр User clamav на:

    User qscand


И перезагружаем его

#/usr/local/etc/rc.d/clamav-clamd restart




2-2. Теперь вернемся к Qmail


Нам нужно будет создать для него загрузочный скрипт /usr/local/etc/rc.d/qmail.sh:

#!/bin/sh

# Указываем свой домен
DOMAIN="your.domain.ru"
POPUP="/var/qmail/bin/qmail-popup"

#Демон авторизации
VCHKPW="/home/vpopmail/bin/vchkpw"

#POP3 и SMTP демоны
POP3D="/var/qmail/bin/qmail-pop3d"
SMPTD="/var/qmail/bin/qmail-smtpd"

start () {
           /var/qmail/rc start &
           /usr/local/bin/tcpserver -v -R -D 0 pop3 ${POPUP} ${DOMAIN} ${VCHKPW} ${POP3D} Maildir &
           /usr/local/bin/tcpserver -x /etc/tcp.smtp.cdb -v -u 98 -g 98 0 smtp ${SMPTD}  &
    #здесь парметр -u 98 uid пользователя qscand, а -g 98 gid группы qscand
           #можно посмотреть в /etc/passwd и /etc/group
}
stop () {
           /var/qmail/rc stop &
           killall tcpserver
}

case "$1" in
start)
           echo "Starting qmail ..."
           start
           ;;
stop)
           echo "Stopping qmail ..."
           stop
           ;;
stat)
           echo "qmail stat:"
           /var/qmail/bin/qmail-qstat
           ;;
restart)
           echo "Restarting qmail ..."
           stop
           sleep 2
           start
           echo "qmail restarted"
           ;;
cdb)
           tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
           chmod 644 /etc/tcp.smtp*
           echo "Reloaded /etc/tcp.smtp."
    ;;
*)
           echo "Usage: `basename $0` {start|stop|restart|stat|cdb}" >&2
           ;;
esac



Ну и наконец запускаем наш Qmail

#chmod +x /usr/local/etc/rc.d/qmail.sh
#/usr/local/etc/rc.d/qmail.sh start



4. Установка QmailAdmin


Теперь прикрутим нашему почтовому серверу веб-интерфейс для адмнистрирования и пользователей
для этого нам понадобится (считается, что apache с php уже установлены и настроены):

qmailadmin-1.2.10,1
courier-imap-4.1.1,1
squirrelmail-1.4.8


#cd /usr/ports/mail/qmailadmin
#make VPOPMAIL_DIR=/home/vpopmail WITH_MODIFY_QUOTA=yes CGIBINDIR="www/cgi-bin/" WEBDATADIR="www/data/" install



Если возникают проблемы с установкой зависимостей делаем следующее:

#make clean
#make NO_DEPENDS=1 VPOPMAIL_DIR=/home/vpopmail WITH_MODIFY_QUOTA=yes CGIBINDIR="www/cgi-bin/" WEBDATADIR="www/data/" install

Недостающие зависимости необходимо будет установить вручную


Убедимся что QmailAdmin установился удачно, зайдем на http://local_ip/cgi-bin/qmailadmin/qmailadmin


5. Установка Courier-Imap


Imap-сервер нам нужен для SquirrelMail (web-интерфейс для пользователей)

#cd /usr/ports/mail/courier-imap
#make install clean


Зависимости:

===> courier-authlib-base-0.62.2
===> courier-authlib-userdb-0.62.2
===> courier-authlib-vchkpw-0.62.2
===> libltdl-1.5.26
===> sysconftool-0.15_2
===> vpopmail-5.4.27

Если при сборке возникнут проблемы с установкой VpopMail делаем:

#make clean && make NO_DEPENDS=1 install clean

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


В появившемся меню нам нужно выбрать:

[X]    AUTH_VCHKPW


Ну и небольшие натройки:

В /etc/rc.conf добавить следующие строчки:

#echo 'courier_imap_imapd_enable="YES"' >> /etc/rc.conf
#echo 'courier_authdaemond_enable="YES"' >> /etc/rc.conf



В /usr/local/etc/authlib/authdaemonrc изменяем параметр authmodulelist:

    authmodulelist="authvchkpw"


Запускаем демона авторазации

#/usr/local/etc/rc.d/courier-authdaemond start


Запускаем Imap-сервер

#/usr/local/etc/rc.d/courier-imap-imapd start


6. Установка SquirrelMail


#cd /usr/ports/mail/squirrelmail
#make install clean


По умолчанию он установится в /usr/local/www/squirrelmail
Нужно будет в httpd.conf указать что он там:

Alias /mail "/usr/local/www/squirrelmail"
    <Directory "/usr/local/www/squirrelmail">
        AddHandler cgi-script .cgi
        AllowOverride All
    </Directory>



Далее изменяем владельца и группу (считается что apache запущен под пользователем www)

#chown -R www:www /usr/local/www/squirrelmail

Затем нужно будет сконфигурировать его, для этого существует очень удобный скрипт:

#/usr/local/www/squirrelmail/configure



На этом все, Qmail установлен и готов к работе.

Категория: FreeBSD | Добавил: sowl (26.06.2009)
Просмотров: 4368 | Рейтинг: 5.0/2 |
Всего комментариев: 0
Copyright Sowltech © Сайт управляется системой uCoz