Sendmail + DSPAM + cyrus-imap + ClamAV

Настроил связку Sendmail + DSPAM + cyrus-imap + ClamAV. Работает великолепно, настраивается с полпинка. Очень приятной плюшкой в такой связке является то, что конечному почтовому пользователю очень легко обучать спамфильтр.
Алгоритм работы простой:

  1. Sendmail принимает почту и по LMTP отдает ее DSPAM.
  2. DSPAM передает письмо на проверку антивирусу ClamAV.
  3. Если это нормальное письмо, DSPAM помещает его в INBOX, если spam — в папку quarantine.
  4. Если пользователь считает, что письмо не является spam, он перетаскивает письмо из папки quarantine в папку ham. Если письмо является spam, то он перетаскивает его из папки INBOX в папку spam.
  5. Папки ham и spam очищаются автоматически в течении 30-60 минут (значение настраивается). Папка quarantine очищается автоматически раз в N суток (значение настраивается).

Естественно, все это работает, если пользователь использует протокол imap.
Инструкции по установке брал тут. Внутри архива есть PDF в котором все написано. Единственное НО — если использовать DSPAM версии 3.8.0, при компиляции следует добавлять параметр —disable-trusted-user-security.
Так же существуют некоторые нюансы при использовании Thunderbird. Если папки quarantine, spam и ham делать при помощи cyradm на стороне сервера, Thunderbird их по умолчанию не показывает. Если эти папки делать в самом Thunderbird, то все прекрасно видно. В первом случае в параметрах почтового ящика надо: Параметры сервера -> Дополнительно -> убрать галку с «Показывать только папки на которые подписаны». Тут надо поиграться с настройками Thunderbird, я еще в нем не до конца разобрался.

Ссылки:
DSPAM, ClamAV, cyrus-imap, установка и настройка cyrus-imap в Slackware Linux, установка и настройка ClamAV в Slackware Linux, про настройку Sendmail я рассказываю на курсе «Расширенное администрирование и безопасность UNIX (Linux)» и продолжение тут.