Установка почтовой системы на основе Qmail
Материал из Gentoo Linux Wiki
- Вернуться в раздел руководства
Пожалуйста приведите эту статью в соответствиe с wiki разметкой, и затем удалите {{Wikify}} из текста статьи
1) Проверте то, что установлены все нужные ключи USE:
> nano -w /etc/make.conf add apache2, maildir, and mysql as USE flags.
2) Установите qmail
Для начала удалите ssmtp, sendmail, or postfix:
> emerge -C ssmtp sendmail postfix > emerge qmail > ebuild /var/db/pkg/mail-mta/qmail-1.03-r16/qmail-1.03-r16.ebuild config > ln -s /var/qmail/supervise/qmail-send /service/qmail-send > ln -s /var/qmail/supervise/qmail-smtpd /service/qmail-smtpd
> rc-update add svscan default > /etc/init.d/svscan start
3) Установите vpopmail
> emerge vpopmail
Войдите в консоль mysql как root и проделайте следующие операции:
mysql> create database vpopmail; mysql> use mysql; mysql> grant select, insert, update, delete, create, drop on vpopmail.* to vpopmail@localhost identified by 'your password'; mysql> flush privileges; mysql> quit;
Если ваш почтовик не получает почту, прежде всего удостоверьтесь в том что на файле /etc/vpopmail.conf установлены верные права chmod 600 и владелец vpopmail:vpopmail.
4) Установите courier-imap as imap and pop3 server
> emerge /usr/portage/net-mail/courier-imap/courier-imap-3.0.2-r1.ebuild > nano -w /etc/courier-imap/authdaemonrc authmodulelist="authvchkpw" > nano -w /etc/courier-imap/imapd IMAPDSTART=YES AUTHMODULES="authvchkpw" > nano -w /etc/courier-imap/pop3d POP3DSTART=YES AUTHMODULES="authvchkpw" > rc-update add courier-imapd default > rc-update add courier-pop3d default > /etc/init.d/courier-imapd start > /etc/init.d/courier-pop3d start
5) Измените конфиг smtpd для того чтобы была возможность smtp-аутентификация при помощи vpopmail
> nano -w /var/qmail/control/conf-smtpd QMAIL_SMTP_POST="mail.mydomain.com /var/vpopmail/bin/vchkpw /bin/true" > svc -t /var/qmail/supervise/qmail-smtpd > chmod u+s /var/vpopmail/bin/vchkpw
The following step makes sending mail a lot faster under some circumstances, and I highly recommend that you do the following if you notice delays of 30 to 45 seconds sending mail:
Следущий шаг дает возможность пересылать почту немного быстрее, и если вы замечаете 30-45 секундные задержки в пересылке писем, настоятельно рекомендуется следующее действие:
> nano -w /var/qmail/control/conf-common TCPSERVER_OPTS="-H -R -l 0" (that's lower-case L followed by zero)
6) установите клиенты базы данных, содержащие информацию о спаме:
> emerge pyzor > emerge razor > emerge dcc
7) Установите f-prot и Mail-SpamAssassin, это должно запустится перед инсталляцией qmail-scanner-а
> emerge f-prot > emerge spamassassin > nano -w /etc/conf.d/spamd SPAMD_OPTS="-d -u vpopmail -v -x -C /etc/mail/spamassassin/local.cf" > rc-update add spamd default > /etc/init.d/spamd start
Установите обновление определений f-prot в cron.hourly:
> nano -w /etc/cron.hourly/virus-update.cron #!/bin/bash /opt/f-prot/check-updates.pl -cron -quiet > > crontab -e # min hour day month weekday command 0 * * * * /etc/cron.hourly/virus-update.cron
Определите параметры фильтрации спама:
> nano -w /etc/mail/spamassassin/local.cf required_hits 5.0 rewrite_subject 1 subject_tag *****SPAM***** report_safe 1 report_header 1 use_bayes 1 auto_learn 1 skip_rbl_checks 0 use_razor2 1 use_dcc 1 use_pyzor 1 ok_languages all ok_locales all
8) Установите qmail-scanner. Для того, чтобы он работал у вас должен быть установлен maildrop.
> emerge maildrop > emerge qmail-scanner
От имени пользователя "qmaild" запустите:
/var/qmail/bin/qmail-scanner-queue.pl -g
Если вы видете ошибки "Can't do setuid" или "Permission denied", поищите где-нибуть еще как это сделать :))
(то есть: "setuidgid qmaild "/var/qmail/bin/qmail-scanner-queue.pl -g" or "su qmaild -c "/var/qmail/bin/qmail-scanner-queue.pl -g")
Переменная 'subject_tag' в /etc/mail/sendmail/local.cf должна изменять поле "Тема" в письмах определенных как спам. А делается это так:
> nano -w /var/qmail/bin/qmail-scanner-queue.pl my $spamc_subject='*****SPAM*****';
Теперь измените tcp.smtp для активации сканнера qmail-scanner
> nano -w /etc/tcprules.d/tcp.qmail-smtp # Qmail-Scanner disabled for mail from localhost, relay allowed 127.0.0.1:allow,RELAYCLIENT="",RBLSMTPD="",QMAILQUEUE="/var/qmail/bin/qmail-queue" # Qmail-Scanner enabled (virus only) for mail from local network, relay allowed 192.168.1.:allow,RELAYCLIENT="",RBLSMTPD="",QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl" # Qmail-Scanner enabled (virus and spam) for mail from external internet, relay denied :allow,QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"
Сохраните tcp.smtp и проделайте это:
> tcprules /etc/tcprules.d/tcp.qmail-smtp.cdb /etc/tcprules.d/tcp.qmail-smtp.tmp < /etc/tcprules.d/tcp.qmail-smtp.smtp > chmod 644 /etc/tcprules.d/tcp.qmail-smtp*
9) Инсталлируйте squirrelmail
> emerge /usr/portage/net-mail/squirrelmail/squirrelmail-1.4.2-r5.ebuild > perl /var/www/localhost/htdocs/squirrelmail/config/conf.pl
Вы можете еще установить vpopmail-squirrelmail-плагин. Для этого вы должны запустить Apache с правами vpopmail:vpopmail, это устанавливается в конфиге апача. Но это создает большую опасность взлома.
> wget http://www.squirrelmail.org/plugins/vpopmail.1.00-1.4.0.tar.gz > cd /<your squirrelmail dir>/plugins > tar -zxvf /<location of vpopmail.1.00-1.4.0.tar.gz> > cd vpopmail > nano -w config.php $vpopmail_autorespondpath = '/usr/local/bin'; > perl /var/www/localhost/htdocs/squirrelmail/config/conf.pl activate the vpopmail plugin
10) Инсталлируйте qmailadmin
> emerge /usr/portage/net-mail/ezmlm-idx-mysql/ezmlm-idx-mysql-0.40-r2.ebuild > emerge /usr/portage/net-mail/autorespond/autorespond-2.0.4.ebuild > emerge /usr/portage/net-mail/qmailadmin/qmailadmin-1.2.0_rc2-r1.ebuild
Теперь вы будете иметь доступ к управлению qmail-ом через http://www.youdomain.com/cgi-bin/qmailadmin.
