man linux — заметки админа

27 августа 2008

ASSPX — мощная защита от спама, на сервераx с Cpanel

Filed under: Серверы — Метки: , , — admin @ 1:46

ASSP — это мощная, многофункциональная система защиты от спама, распространяемая бесплатно.
ASSP поддерживает фильтрацию спама по большому количеству признаков и имеет большое количество настраиваемых фильтров, в том числе Baesyan, RBL, DNSBL, GreyListing (Delay filter), mailboombing и т.д.

Особенность ASSP заключается в том, что программа работает на сервере, в качестве почтового прокси-сервера и не допускает попадания спама на обработку MTA. Таким образом, ASSP существенно снижает нагрузку на MTA и как следствие общую нагрузку на сервер.
При этом разгружается почтовая очередь, в которой обычно копятся письма от mailer-daemon вашего сервера, что улучшает скорость хождения исходящей почты от вашего сервера и опять же, существенно снижает нагрузку.
Более того, когда на сервере установлен SpamAssassin, нагрузка растет в результате высокой ресурсоемкости spamd, при том, что SpamAssassin является менее эффективным средством, чем ASSP.
Вывод однозначен — ASSP существенно улучшает защиту сервера от спама и ощутимо снижает общую нагрузку на сервере, создаваемую почтовой подсистемой.

Для серверов, с панелью Cpanel, известны два плагина, позволяющие установить ASSP и интегрировать управление фильтрами ASSP непосредственно в Cpanel.
Плагин ASSP Deluxe — распространяется на платной основе. На момент написания данной статьи, стоимость плагина составляет 50 евро в год, либо 150 евро единоразово.

Плагин ASSPX — распространяется на бесплатной основе, хотя в целом, не уступает ASSP Deluxe в функционале и интеграции, а также имеет преимущество, в виде открытого исходного кода. Поэтому, именно о нем, пойдет речь в данной статье.

Установка ASSPX

Установка достаточно проста.
Для начала сделаем резервную копию конфигурации exim’a, командой

cp /etc/exim.conf /etc/exim.conf_old

Если ваш конфигурационный файл находится в другом месте — учтите это при копировании.

Далее, необходимо установить clamv, если он еще не установлен, сделать это можно clamv в WHM > manage plugins > clamavconnector
После установки clamv, идем в WHM в раздел Plugins > Configure ClamAV Scanner и устанавливаем галку на чекбоксе «Scan Mail» (остальные чекбоксы по вашему желанию).

Теперь идем в WHM >> Server Configuration >> Tweak Settings и делаем следующее:
BoxTrapper Spam Trap — отключить (снять галку, если она установлена)
SpamAssassin Spam Filter — отключить

Сохраняем и идем в раздел WHM >> Service Configuration >> Exim Configuration Editor
В секции ACL Options снимаем все галки, за исключением следующих:
Require incoming SMTP connections to send HELO before MAIL [?]
Require incoming SMTP connections to send a HELO that does not appear to be forged
Require incoming SMTP connections to send HELO conforming to internet standards (RFC2821 4.1.1.1)

В секции Access Lists снимаем две нижние галки («Blacklist: Drop connections from defined IP Blocks upon SMTP connection» и «Whitelist: Trusted Mail Hosts/Ip Blocks»), при этом остальные галки в этой секции, начинающиеся со слова «Whitelist» по умолчанию установлены и не могут быть сняты.
В секции Domains and Ips снимаем галку с опции «Send outgoing mail from accounts ip address instead of the main ip address. » (чаще всего, это единственно доступная опция) в данной секции.
В секции Filters снимаем все галки.
В секции Mail устанавливаем галки на опции «Sender Verification», «Skip scanning messages for virii/malware when the scanner is unavailable, and allow mail delivery to continue.» и «Skip scanning messages for spam when the scanner is unavailable and allow mail delivery to continue» и снимаем остальные.
В секциях RBLS и SpamAssassinTM Options снимаем все галки.

Сохраняем настройки.

Теперь идем в WHM > Service Manager и снимаем галки со spamd

Далее создаем sh-скрипт следующего содерждания

#!/bin/sh
if [ "`perl -e 'use Compress::Zlib; print "$Compress::Zlib::VERSION\n"'`" != "1.42" ]; then
/scripts/perlinstaller --force Compress::Zlib
fi
if [ "`perl -e 'use Digest::MD5; print "$Digest::MD5::VERSION\n"'`" != "2.36" ]; then
/scripts/perlinstaller --force Digest::MD5
fi
if [ "`perl -e 'use Email::Valid; print "$Email::Valid::VERSION\n"'`" != "0.179" ]; then
/scripts/perlinstaller --force Email::Valid
fi
if [ "`perl -e 'use File::ReadBackwards; print "$File::ReadBackwards::VERSION\n"'`" != "1.04" ]; then
/scripts/perlinstaller --force File::ReadBackwards
fi
if [ "`perl -e 'use File::Scan::ClamAV; print "$File::Scan::ClamAV::VERSION\n"'`" != "1.8" ]; then
/scripts/perlinstaller --force File::Scan::ClamAV
fi
if [ "`perl -e 'use Mail::SPF::Query; print "$Mail::SPF::Query::VERSION\n"'`" != "1.999001" ]; then
/scripts/perlinstaller --force Mail::SPF::Query
fi
if [ "`perl -e 'use Mail::SRS; print "$Mail::SRS::VERSION\n"'`" != "0.31" ]; then
/scripts/perlinstaller --force Mail::SRS
fi
if [ "`perl -e 'use Net::DNS; print "$Net::DNS::VERSION\n"'`" != "0.59" ]; then
/scripts/perlinstaller --force Net::DNS
fi
if [ "`perl -e 'use Sys::Syslog; print "$Sys::Syslog::VERSION\n"'`" != "0.18" ]; then
/scripts/perlinstaller --force Sys::Syslog
fi
if [ "`perl -e 'use Net::LDAP; print "$Net::LDAP::VERSION\n"'`" != "0.33" ]; then
/scripts/perlinstaller --force Net::LDAP
fi
if [ "`perl -e 'use Time::HiRes; print "$Time::HiRes::VERSION\n"'`" != "1.9707" ]; then
/scripts/perlinstaller --force Time::HiRes
fi
if [ "`perl -e 'use Tie::DBI; print "$Tie::DBI::VERSION\n"'`" != "1.02" ]; then
/scripts/perlinstaller --force Tie::DBI
fi
/scripts/perlinstaller --force Net::IP::Match::Regexp
/scripts/perlinstaller --force Net::CIDR::Lite
/scripts/perlinstaller --force Net::SenderBase
/scripts/perlinstaller --force Net::CIDR::Lite
/scripts/perlinstaller --force LWP::Simple 
/scripts/perlinstaller --force Mail::CheckUser
exit

и запускаем его

sh имя_скрипта

Этот скрипт установит необходимые модули Perl. Также, данный скрипт можно скачать с сайта разрабочиков ASSP Deluxe.
После того, как скрипт закончит установку, выполняем следующее:

cd /usr/src/
wget http://sultanserver.com/projects/asspx.tar.gz
tar -zxvf asspx.tar.gz
cd asspx
sh install.sh

После того, как скрипт инсталяции отработает, идем в WHM и видим, что в разделе Plugins появился новый пункт — «SultanServer.com ASSP X«.

Переходим по ссылке и видим сообщение о том, что не установлен ASSP.
Для начал жмем на кнопку Install ASSP.
После завершения установки, снова идем в этот раздел, крутим страницу вниз и видим сообщение о том, что не сконфигурирован должным образом exim.
Перекручиваем страницу в самый низ и в секции «Exim configuration install» жмем на кнопку Install Exim Configs, дожидаемся завершения и жмем на кнопку Return внизу страницы.
После этого, идем в List Accouts, заходим в панель первого попавшегося аккаунта и видим новый раздел «ASSP X Spam & Virus Shield«.

Удостоверившись, что новый раздел появился, можно возвращаться в WHM, в настройку ASSPX и отключив опцию «assp.cfg Overwriting» в секции «ASSP X Options», перейти к тонкой настройке ASSP. Попасть в веб-интерфейс настройки ASSP можно вверху страницы, установив предварительно пароль.
Все настройки assp хранятся в файле /usr/local/assp/assp.cfg

Настройка ASSP — это тема для отдельной, большой статьи, здесь же я лишь порекомендую для начала включить Test mode для всех фильтров, что бы исключить потерю почты на первых порах.

Примечание: ASSPX использует опцию шифрования пароля доступа, к веб-интерфейсу настройки ASSP, однако опция у меня заработала только на одном сервере. На других серверах потребовалось открыть файл /usr/local/assp/assp.cfg, найти опцию webAdminPassword и прописать в ней пароль вручную, в открытом виде (ну доступа к файлу все равно ни у кого нет, так-что это не опасно).

Ну и еще, возможно придется править файл
/etc/exim.conf.local
В котором изменить
daemon_smtp_ports = 25 : 465
на
daemon_smtp_ports = 125 : 465
Файл
./addon_asspx.cgi
В котором изменить
my $eximport2 = `ls /etc/chkserv.d/ |grep -c -m1 'exim-'`;
на
my $eximport2 = `ls /etc/chkserv.d/ |grep -c -m1 'exim-[0-9]'`;
после чего заново установить ASSP-X
И последним, файл /etc/chkserv.d/exim-cpanelsync
в котором изменить
service[exim]=25,QUIT,220
на
service[exim]=125,QUIT,220


Автор: Виктор Симон
www.man-linux.ru
Права копирования
Опубликовано 27 августа 2008 - информация могла устареть.

1 комментарий »

  1. Cpanel обновляется довольно быстро, появляются новые опции, в том числе и в разделах Cpanel, к которым относится установка ASSP, поэтому в процессе установки ASSP, меняя опции, например в разделе Exim configuration, читайте описания опций и анализируйте свои действия.

    Комментарий by admin — 25 октября 2009 @ 20:19

RSS feed for comments on this post.

Leave a comment

Для отправки комментария вам необходимо авторизоваться.

Powered by WordPress