Установка антиспама SpamAssassin на Postfix
- Информация о материале
- Категория: Servers (ru)
- Опубликовано: 08.02.2011, 17:42
- Автор: Super User
- Просмотров: 1660
SpamAssassin пожалуй одно из наиболее распространенных ПО для борьбы со спамом. А точнее определения спама. Данный продукт присутствует в официальном репозитории, так что установка трудностей не вызовет.
#aptitude install spamassassin
Создадим пользователя, под которым бужет работать SpamAssassin:
#adduser virtual
Теперь настроим SpamAssassin. Для этого отредактируем файл /etc/spamassassin/local.cf:
rewrite_header Subject *****SPAM*****
report_safe 0
trusted_networks 192.168.0.0/24
required_score 5.0
use_bayes 1
bayes_auto_learn 1
bayes_ignore_header X-Bogosity
bayes_ignore_header X-Spam-Flag
bayes_ignore_header X-Spam-Status
bayes_min_ham_num 1
bayes_min_spam_num 1
report_charset koi8-r
ok_locales ru en uk
bayes_path /var/spool/bayes/bayes
bayes_file_mode 0666
score SUBJ_FULL_OF_8BITS 0
score FROM_ILLEGAL_CHARS 0
score SUBJ_ILLEGAL_CHARS 0
score HEAD_ILLEGAL_CHARS 0
score HABEAS_SWE 0
score FORGED_IMS_TAGS 1
score BAYES_00 0.0001 0.0001 -2.312 -2.599
score BAYES_05 0.0001 0.0001 -1.110 -1.110
score BAYES_20 0.0001 0.0001 -0.740 -0.740
score BAYES_40 0.0001 0.0001 -0.185 -0.185
score BAYES_50 0.0001 0.0001 0.001 0.001
score BAYES_60 0.0001 0.0001 2.0 2.0
score BAYES_80 0.0001 0.0001 3.0 3.0
score BAYES_95 0.0001 0.0001 3.5 3.5
score BAYES_99 0.0001 0.0001 5.0 5.0
score ALL_TRUSTED -3.360 -3.440 -3.665 -3.800
Пришло время подключить SpamAssassin к серверу Postfix.
В файл /etc/postfix/master.cf после строки
smtp inet n - - - - smtpd
добавим строчку:
-o content_filter=spamassassin
И в конец этого файла вставим:
spamassassin unix - n n - - pipe
user=virtual argv=/usr/bin/spamc -f -e /usr/sbin/sendmail -oi -f ${sender} ${recipient}
Теперь необходимо перезапустить сервисы postfix и SpamAssassin:
#service postfix restart
#service spamassassin restart
Система антиспама у нас уже работает.
Однако на старте SpamAssassin не очень хорошо различает спам. Ему требуется обучение.
Для этого копируем письма, которые были нераспознаны как спам в папку /home/virtual/spam,
а письма которые были ложно распознаны как спам в /home/virtual/nospam,
и выполним команды:
#sa-learn --ham /home/virtual/nospam/
#sa-learn --spam /home/virtual/spam/
Таким образом мы обучаем байесовский фильтр.
Делать это стоит по мере необходимости.