Uptime: 99.981%
Strony WWW:
Nowe strony WWW dzisiaj:
100 000 Użytkowników w SEOHOST. To dzięki Wam! Czytaj więcej W SEOHOST Użytkownik jest zawsze na pierwszym miejscu! Czytaj więcej Z SEOHOST korzysta już ponad 90 000 Użytkowników! Czytaj więcej Pełna transparencja: uptime naszej infrastruktury Czytaj więcej Wywiad z naszym CEO na bezprawnik.pl Czytaj więcej SEOHOST.pl zdobywa 2 miejsce w rankingu NASK. Czytaj więcej Uwaga: kolejna próba phishingu! Czytaj więcej Dlaczego warto migrować do SEOHOST? Czytaj więcej
Redakcja SEOHOST.pl
Redakcja SEOHOST.pl
02 Maja 2025
4 minuty

Ręczna konfiguracja SpamAssassin za pomocą pliku user_prefs

Nie zawsze wystarczy kliknąć „włącz filtr antyspamowy” w panelu hostingu. Jeśli chcesz naprawdę zapanować nad tym, co trafia do Twojej skrzynki, warto sięgnąć głębiej – do pliku user_prefs. To właśnie w nim możesz określić próg punktowy, zablokować konkretne adresy, nadpisać działanie reguł lub nauczyć filtr SpamAssassin własnych preferencji.

W tym artykule pokażemy Ci, jak działa ten mechanizm, gdzie znaleźć plik user_prefs, jak go edytować i – co najważniejsze – kiedy ta metoda będzie miała sens, a kiedy... kompletnie nie zadziała, bo konfiguracja serwera ją zignoruje. Jeśli zależy Ci na pełnej kontroli nad tym, co jest spamem, a co nie – czytaj dalej.

Czym jest user_prefs i gdzie go umieścić?

Plik user_prefs to lokalna konfiguracja filtrów SpamAssassin, pozwalająca użytkownikowi zmienić sposób oceny wiadomości. Ustawienia w tym pliku mają pierwszeństwo przed domyślną konfiguracją systemową — o ile usługa spamd została uruchomiona w trybie uwzględniającym użytkowników (--username, --virtual-config-dir, itp.).

Typowa lokalizacja pliku:

/home/użytkownik/.spamassassin/user_prefs

Plik ten można utworzyć ręcznie lub automatycznie (np. po pierwszym użyciu spamc). Jeśli katalog .spamassassin nie istnieje, należy go utworzyć i nadać odpowiednie prawa dostępu.

W środowiskach takich jak DirectAdmin lub hosting współdzielony, lokalizacja i działanie pliku user_prefs mogą być ograniczone lub zastąpione konfiguracją panelu. 

Jak włączyć SpamAssassin w DirectAdmin?

  1. Zaloguj się do panelu administratora hostingu DirectAdmin.

  2. Po lewej stronie wybierz Zarządzanie pocztą E-mail, a następnie przejdź do opcji Konfiguracja SpamAssassina.

  3. Kliknij przycisk Włącz SpamAssassina.

  4. Następnie możesz przejść do Edytuj ustawienia SpamAssassin.

W tym samym widoku znajdziesz również możliwość ręcznej edycji pliku konfiguracyjnego i wprowadzania własnych reguł filtrowania wiadomości. Dodatkowe informacje o ręcznej konfiguracji SpamAssassin znajdziesz w dalszej części artykułu. 

Przykładowe ustawienia w user_prefs

required_score 5.0                 # Próg punktowy, po którym wiadomość jest uznana za spam
rewrite_header Subject *****SPAM*****  # Modyfikacja tematu wiadomości spamowych
report_safe 1                     # 1 = załącz spam jako MIME, 0 = przepisz treść
use_bayes 1                       # Włącz uczenie się na podstawie działań użytkownika
bayes_auto_learn 1               # Automatyczne uczenie się spamu i hamu
score HTML_IMAGE_ONLY_28 3.5     # Nadpisanie punktacji konkretnej reguły
blacklist_from spam@zla-domena.pl
whitelist_from faktury@zaufana.pl

Można też dodawać własne reguły, np. blokujące wiadomości zawierające konkretne wyrażenia regularne. Wymaga to jednak dobrego zrozumienia składni Perl regex oraz struktury nagłówków e-maili.

Dlaczego user_prefs bywa ignorowany

To częste pytanie: "Dlaczego SpamAssassin nie bierze pod uwagę moich ustawień w user_prefs?". Odpowiedzią najczęściej jest:

  • SpamAssassin działa jako amavis lub spamd bez obsługi użytkowników,
  • spamc nie przekazuje informacji o użytkowniku,
  • Ścieżka do katalogu ~/.spamassassin/ jest inna niż spodziewana (np. z powodu chroot lub kontenerów),
  • Uprawnienia do katalogu lub pliku są niewłaściwe,
  • System używa wspólnej konfiguracji /etc/mail/spamassassin/ i nie zezwala na nadpisywanie jej lokalnie.

Aby sprawdzić, czy user_prefs działa, warto uruchomić spamassassin -D --lint lub sprawdzić logi spamd

Alternatywy: Amavisd, SQL i DirectAdmin

W bardziej złożonych systemach (np. serwery produkcyjne, hosting resellerów) SpamAssassin jest często zintegrowany z amavisd-new, który trzyma konfigurację w bazie danych SQL lub plikach XML. W takim przypadku user_prefs jest ignorowany, a użytkownicy konfigurują filtry przez web GUI.

W DirectAdmin konfiguracja odbywa się w panelu, a pliki użytkownika mogą być nadpisywane przy każdej zmianie z poziomu interfejsu. Warto to wiedzieć, zanim zaczniemy modyfikować plik ręcznie — zmiany mogą zniknąć.

Bezpieczeństwo i ograniczenia

Pamiętaj, że nie wszystkie opcje są dozwolone w user_prefs.

  • Przykład: nie można ładować zewnętrznych pluginów ani modyfikować globalnych cf z poziomu użytkownika. To zabezpieczenie przed nadużyciami, zwłaszcza w środowiskach współdzielonych.

Warto także, żebyś nie przesadził z whitelistami – nieświadomie można przepuścić spam podszywający się pod zaufaną domenę (np. przez brak SPF/DKIM). Tym samym:

  • user_prefs daje dużą elastyczność, ale tylko gdy jest poprawnie obsługiwany przez system,
  • Dobrze jest najpierw sprawdzić, czy nasza instancja SpamAssassin go uwzględnia,
  • W systemach hostingowych lepiej użyć panelu lub reguł webmaila (np. Roundcube),
  • Regularnie analizuj nagłówki wiadomości, aby lepiej zrozumieć, które reguły miały wpływ na ocenę maila.

Dzięki user_prefs możesz stworzyć własny, dostrojony filtr – ale musisz wiedzieć, gdzie kończą się jego możliwości.

Czy udało Ci się rozwiązać problem?
Nie znalazłeś odpowiedzi na swoje pytanie?