Прикручиваение спамообороны к личной почте
У меня есть мой личный email — ivan@bessarabov.ru. Мне безумно нравится то, что у меня есть ящик вида имя@фамилия. Почтовй сервер, которы обслуживает этот ящик, я настраивал сам. Я совершенно не профессиональный админ, но чтобы иметь представление о работе почтовых серверов и как все это функционироует, я базовенько разобрался с postfix-ом и настроил сервер.
Как все работает — меня абсолютно устраивает, кроме одного — спам. На мой ящик приходит невороятное количество спама. Просто феерическое количество спама.
- Сначала я разгребал спам вручную
- Потом прикрутил spamassassin
- Spamassassin резко уменьших количество спама, но писем по 200-300 в день, все равно проскакивали. Я честно учил spamassassin, но он, собака, все равно пропускал очень много спама (Не хочу его ругать, я скорее всего просто не умею его “готовить”).
- Я уже реально подумывал прикрутить свой ящик к google apps (я уже давно прикрутил свой другой домен, bessarabova.ru, к этой системе), но мне все не хотелось это делать
- Но тут натыкаюсь на пост Тёмы, что он юзает « Спамооборону» и очень ей доволен.
- Чуть больше меняца я обдумывал идею о том, как прикрутить спамооборону к моему почтовому серверу, а потом взял и сделал.
Далее в этом посте я отпишу, как я все это настраивал, а пока могу сказать, что я мега доволен результатом. За несколько дней ни одно спамовское письмо (ни одно!) не пришло, и лишь три были по ошибки помечены как спам (как выясняется не любит yandex mon.itor.us).
Как я все это настраивал
Из всех 3-х вариантов, которые предлагает «
Спамооборона», мне больше всего нравится 3-ий:

Первая попытка
Мне очень не хочется заводить какой-то секретный ящик, как рекомендует яндекс, поэтому я придумал (ну не совсем придумал, конечно, Тёма как раз об этом-то и писал) такую схему:
- Приходит письмо на мой почтоывй сервер, на мой ящик ivan@bessarabov.ru
- Если письмо еще яндексом не проверялось, то оно отправляется на мой ящик на yandex (проверка осуществется по специальному флагу в заголовке писмьа)
- Если же писмьо проверилось яндексом, то положить его ко мне в почту, в тот же самый ящик ivan@bessarabov.ru
На моем почтовом сервере работает procmail - чтобы раскладывать письма по папочкам. В файл ~/.procmailrc я создал следющее правило:
# В том случае, если нет хедера X-Yandex-Spam, перекидываю письмо на yandex
:0
* ! ^X-Yandex-Spam:
! ivanbessarabov@yandex.ru
В настройках же ivanbessarabov@yandex.ru я прописал правило форвардить все на мой ящик ivan@bessarabov.ru.
Все настроил — запускаю — такая схема не работает. Ошибка: “mail forwarding loop for ivan@bessarabov.ru”, что вполне логично.
Вторая попытка, она же успешная и, соответственно, последняя
Почта на моем почтовом сервере настроена очень просто — нет никаких виртуальных юзеров, почта доставляется реальным пользователям сервера. Мой логин на сервере — bessarabov (что не удивительно, зная мою любовь к своей фамилии =). Т.е. почта приходит на ivan@bessarabov.ru, а на сервере для ivan прописан алиса bessarabov. Я настроил пересылку писем с ящика ivanbessarabov@yandex.ru на ящик bessarabov@bessarabov.ru и все заработало как надо!
При такой настроки возникла проблема, что поломалась доставка почты для bessarabov. Теперь отправка сообщений на bessarabov@bessarabov.ru вызывает ошибку “mail forwarding loop”, но это для меня не важно =)
Обнаружилась одна интересное свойсво почты яндекса: мой сервер пытается переслать спамовское письмо на яндекс ящик, а яндекс каким-то образом уже на этапе получения знает, что это спам и не принимает это письмо:
This is the mail system at host bessarabov.ru.
I’m sorry to have to inform you that your message could not
be delivered to one or more recipients. It’s attached below.
For further assistance, please send mail to postmaster.
If you do so, please include this problem report. You can
delete your own text from the attached returned message.
The mail system
Content-Policy reject msg: Message rejected under suspicion of spam.;
S3768472AbZBKNnm (in reply to end of DATA command)
Из множества писем, которые я пропускаю через яндекс, достаточно много генерят письмо с такой ошибкой, поэтому я написал правило procmail, которое убивает такого рода письма:
# Сразу удаляю письма, которые яндекс не принял
:0B:
* Diagnostic-Code: smtp; 554 5.7.1 Content-Policy reject msg: Message rejected
/dev/null
После того, как я все это дело настроил и денечек посмотрел, как это работает, мне стало страшно, что яндекс меня забанит (я пропускаю через яндекс около двух тысяч писем в день), поэтому отписал в support, но получил очень позитивненький ответ, что мне не стоит беспокоится.
Итак все работет, спама нет. Ура, товарищи!
Еще раз выражаю свой респект создателям яндексу, за то, что предоставлили миру такой чудестный инструмент и подарили мне немного времени, которое я раньше тратил на разгребание спама. Спасибо! =)
| M | T | W | T | F | S | S |
|---|---|---|---|---|---|---|
| « Jun | ||||||
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 | ||||