SpamAssassin

SpamAssassin. У терміналі або для пакетів зазвичай використовується в нижньому регістрі, тобто:

spamassassin

Або для служби:

spamd

Для Debian/Ubuntu назва пакету:

spamassassin

Перевірити чи встановлений:

dpkg -l | grep spamassassin

Запустити ручну перевірку файлу:

spamassassin -t < email.txt

Якщо буде треба — можу розписати, як налаштувати його разом із Postfix чи як daemon (spamd).

скільки оперативки він потребує?

SpamAssassin може бути досить ненажерливим до оперативної пам’яті, особливо в режимі демона (spamd) або при великому навантаженні. Приблизні орієнтири:

1. У режимі сканування вручну (spamassassin -t)

  • Кожен запуск процесу: 50–100 МБ RAM

  • В залежності від:

    • кількості правил

    • використання Bayes-фільтра

    • підключених плагінів (наприклад, Pyzor, Razor, DCC)

2. У режимі демона (spamd)

  • Один процес spamd: 30–100 МБ

  • У типових налаштуваннях spamd запускає кілька дочірніх процесів.

    • Наприклад, --max-children=5 → можливе споживання 300–500 МБ і більше.

3. З MySQL або Bayesian навчанням

  • Якщо використовується база для навчання (Bayes), ще +100 МБ і більше.

  • Якщо ще й razor2, pyzor, dcc — кожен із них може трохи додати.


Мінімальні системні вимоги (реальні, не маркетингові):

Рівень навантаження
RAM
Примітка

Низьке (1-5 листів/хв)

256–512 МБ

Якщо spamd + без heavy-плагінів

Середнє (до 20/хв)

1 ГБ

З базовим Bayesian + кілька плагінів

Високе (пошта-сервер)

2+ ГБ

Якщо багато листів, розширення, DNSBL, тощо


Якщо дуже обмежена пам’ять:

  • Вимикай демона — використовуй spamc/spamd лише при потребі.

  • Вимкни непотрібні плагіни.

  • Не запускай більше 1-2 spamd дочірніх процесів (--max-children=2)

  • Розглянь альтернативу: Rspamd, який працює значно швидше й легше.

Якщо скажеш скільки у тебе ОЗП і яка схема перевірки пошти — скажу точніше.

Схеми ще нема, віртуальний сервер Ubuntu 24.04 - 3.5 Гб

З 3.5 ГБ оперативної пам’яті у тебе досить хороший запас для розгортання SpamAssassin, навіть на середнє навантаження. Ось що ти можеш дозволити:


Рекомендована конфігурація під твою RAM:

1. SpamAssassin як демон (spamd)

  • Працює постійно в фоні, обробляє запити через spamc

  • Запускається із параметрами:

    spamd -d -c -m 5

    де:

    • -d — запуск у фоновому режимі

    • -c — завершує дочірній процес після одного запиту

    • -m 5 — максимум 5 дочірніх процесів одночасно (≈ 400–500 МБ максимум)

2. Підключення до Postfix

  • Через spamc, безпосередньо або через amavisd-new

  • Найкраще — інтегрувати через amavis (керує ресурсами й кешами)

3. Bayesian фільтрація

  • Ввімкни навчання: у файлі local.cf

    use_bayes 1
    bayes_auto_learn 1
  • База байєса буде зберігатися в домашній директорії (або спільній, якщо налаштовано)

4. Плагіни

  • Поки не вмикай razor2, pyzor, dcc — вони корисні, але DNS-залежні та забирають додаткову пам’ять

  • Можна буде додати пізніше, коли стабілізуєш систему


Інші компоненти, які ще з’їдять пам’ять:

Компонент
RAM (орієнтовно)

postfix

20–50 МБ

spamd + діти

200–500 МБ

amavisd-new

150–300 МБ

clamav (антивірус)

300–700 МБ (!!!)

mysql або mariadb

100–300 МБ

Тобто якщо все включити, буде близько 1.2–2 ГБ зайнято. У тебе ще залишиться для кешів, ssh, Apache/nginx, FTP.


Висновок:

  • Так, SpamAssassin тобі підходить.

  • Можеш запускати в режимі spamd з обмеженням -m 5.

  • Якщо пізніше буде багато трафіку — варто глянути на Rspamd, він легший і швидший.

  • Для початку рекомендую не використовувати антивірус, а тільки спам-фільтрацію — спростить конфігурацію й економитиме ресурси.

Якщо захочеш приклад конфігурації з postfix + spamassassin — можу скласти по кроках.

Last updated