Który plik Zimbra SpamAssassin powinieneś edytować?
W przypadku pakietu Zimbra Collaboration Suite 8.5 i nowszych, dokumentacja Zimbra umieszcza lokalne dostosowania SpamAssassin w /opt/zimbra/data/spamassassin/localrules. Plik reguły z .cfrozszerzeniem może się tam znajdować; przykład Zimbra używa osobnego pliku dla reguły niestandardowej. Starsze wersje Zimbra korzystały z innych lokalizacji, dlatego przed edycją sprawdź wersję i katalog na serwerze. Aktualny układ pakietu może się również różnić w zależności od wersji lub wdrożenia.
Ten przewodnik dodaje małą, odwracalną regułę dla całej witryny, sprawdza jej składnię, przeładowuje usługę skanowania poczty i weryfikuje dostarczoną wiadomość. Zakłada on, że administrujesz serwerem MTA Zimbra. Jeśli korzystasz z wielu serwerów MTA, zastosuj plik i przeładuj SpamAssassin na każdym serwerze, który skanuje pocztę przychodzącą.
Niestandardowy przewodnik Zimbra SpamAssassin dokumentuje ścieżkę i zmamavisdctl restartpolecenie localrules. Wskazówki dotyczące ochrony przed spamem odróżniają starszą konfigurację ZCS 8 od ZCS 8.5 i nowszych.
Co zmienia reguła niestandardowa?
Reguła SpamAssassin wykrywa cechę wiadomości, przypisuje jej symboliczną nazwę i nadaje wynik. SpamAssassin łączy ten wynik z wynikami innych testów. Następnie Zimbra stosuje skonfigurowane progi obsługi spamu. Sama reguła nie gwarantuje, że wiadomość trafi do spamu lub zostanie odrzucona: liczy się reszta wyniku wiadomości i ustawienia serwera.
To rozróżnienie ma znaczenie przy wyborze wyniku. Zacznij od niskiej wartości, sprawdź fałszywe alarmy i podnieś ją tylko wtedy, gdy testy wykażą wiarygodność sygnału. Unikaj kopiowania wysokiego wyniku z przykładu bez sprawdzenia własnego wymaganego wyniku spamu i progu odrzucenia.
Zanim cokolwiek edytujesz, co powinieneś potwierdzić?
- Wersja i ścieżka: Sprawdź swoją wersję Zimbry i czy
/opt/zimbra/data/spamassassin/localrulesistnieje. Ścieżka w tym przewodniku dotyczy ZCS 8.5 i nowszych wersji, zgodnie z dokumentacją Zimbry. Nie zakładaj, że dotyczy ona starszych wersji.
- Który host skanuje pocztę: Zidentyfikuj wszystkie MTA, które uruchamiają Amavis/SpamAssassin. Reguła zainstalowana na jednym serwerze nie pojawia się automatycznie na innym niezależnym MTA.
- Intencja reguły: Wybierz konkretny, powtarzalny sygnał wiadomości. Unikaj reguł, które pasują do ogólnych słów, takich jak „darmowy” lub „oferta”, bez dodatkowych dowodów.
- Cofnij: Zapisz istniejący plik przed jego zmianą. Użyj nowej, opisowej nazwy pliku dla nowej reguły i nie nadpisuj
.cfprzypadkowo istniejącego pliku.
Są to dostosowania na poziomie serwera, a nie filtry skrzynek pocztowych. Mogą one dotyczyć wszystkich użytkowników, których poczta przechodzi przez skonfigurowany skaner.
Jak napisać prostą regułę?
SpamAssassin obsługuje takie typy reguł, jak header, body, urii meta. Reguła nagłówka jest przydatna, gdy sygnałem jest charakterystyczny temat lub wartość nagłówka. Reguła treści wiadomości przeszukuje treść wiadomości tekstowej; dokumentacja SpamAssassin wskazuje, że zwykłe reguły treści wiadomości działają na zdekodowanym tekście i domyślnie traktują temat jako część treści. Użyj reguły URI, gdy warunek dotyczy konkretnie linków.
Oto celowo zawężony przykład, który dodaje niewielką liczbę punktów, gdy temat wiadomości testowej zawiera unikalną frazę. Zastąp tę frazę sygnałem, który zweryfikowałeś we własnej poczcie; ten przykład nie jest ogólnym podpisem spamu.
header LOCAL_SUBJECT_REVIEW Subject =~ /\bExample Vendor Alert\b/i
score LOCAL_SUBJECT_REVIEW 2.0
describe LOCAL_SUBJECT_REVIEW Subject contains the review phrase
Nazwa symboliczna powinna być unikatowa i zawierać litery, cyfry oraz znaki podkreślenia. Linia headerdefiniuje dopasowanie, scorekontroluje punkty dodawane przy trafieniu i describedostarcza wyjaśnienia w raporcie SpamAssassina. Opis powinien być krótki i jasno wyjaśnić innemu administratorowi, dlaczego test istnieje.
Dokumentacja konfiguracji SpamAssassin zawiera informacje na temat składni reguł nagłówka i treści, zachowania wyników oraz szczegółów wyrażeń regularnych. Zainstalowana wersja Zimbra SpamAssassin może różnić się od najnowszej dokumentacji Apache, dlatego należy unikać korzystania z nowszych funkcji reguł, dopóki nie zostanie potwierdzone lokalne wsparcie.
Jak zainstalować regułę w systemie Zimbra 8.5 i nowszych?
- Połącz się z MTA przy użyciu konta administratora, które może przełączyć się na konto usługi Zimbra.
- Sprawdź katalog instalacyjny i katalog zasad lokalnych. Na przykład:
su - zimbra
ls -ld /opt/zimbra/data/spamassassin/localrules
- Wybierz nazwę pliku, która jeszcze nie istnieje, np
local_subject_review.cf. . Sprawdź najpierw:
ls -l /opt/zimbra/data/spamassassin/localrules/local_subject_review.cf
jeśli plik istnieje, sprawdź go i wybierz inną nazwę zamiast go nadpisywać.
- Utwórz nowy plik jako
zimbraużytkownik edytora i dodaj trzy powyższe wiersze reguł:
vi /opt/zimbra/data/spamassassin/localrules/local_subject_review.cf
- Zapisz plik, a następnie potwierdź właściciela i zawartość:
ls -l /opt/zimbra/data/spamassassin/localrules/local_subject_review.cf
cat /opt/zimbra/data/spamassassin/localrules/local_subject_review.cf
Jeśli brakuje katalogu, zatrzymaj się i sprawdź wersję Zimbra oraz udokumentowany układ konfiguracji. Nie twórz katalogu o podobnej nazwie w zgadywanej lokalizacji; SpamAssassin niekoniecznie go załaduje.
Jak należy je zweryfikować i ponownie załadować?
Przed ponownym załadowaniem uruchom sprawdzanie składni SpamAssassina. Dokumentacja wiersza poleceń Apache opisuje to --lintjako sprawdzanie składni zestawu reguł i konfiguracji. Jako użytkownik Zimbra uruchom to polecenie, spamassassin --lintjeśli ten plik wykonywalny jest dostępny w środowisku Zimbra. Jeśli polecenie nie zostanie znalezione lub nie załaduje konfiguracji Zimbra, znajdź dołączony plik wykonywalny i użyj ścieżki konfiguracji odpowiedniej dla danej wersji, zamiast testować na innej instalacji systemowej. Czysty wynik lint sprawdza składnię; nie dowodzi, że wybrany wzorzec będzie pasował do oczekiwanych komunikatów.
Opis poleceń SpamAssassina wyjaśnia opcję lint. Po pomyślnej walidacji zrestartuj Amavis jako zimbraużytkownik, aby skaner załadował zmienione reguły:
zmamavisdctl restart
Przykład reguł niestandardowych Zimbry wykorzystuje to polecenie usługi. W przypadku instalacji z wieloma MTA powtórz wdrożenie pliku i ponowne uruchomienie usługi dla każdego odpowiedniego skanera. Jeśli Twoja wersja używa innego polecenia usługi, postępuj zgodnie z dokumentacją Zimbry dla tej wersji.
Jak można stwierdzić, czy reguła działa?
Wyślij kontrolowaną wiadomość testową tą samą trasą przychodzącą, z której korzystają użytkownicy. Użyj dokładnego tematu z reguły dla jednej wiadomości, a następnie wyślij podobną wiadomość bez niej. Sprawdź oryginalne nagłówki dostarczonej wiadomości, zwłaszcza X-Spam-Status, LOCAL_SUBJECT_REVIEWi wkład w wynik. Porównaj obie wiadomości i sprawdź, gdzie Zimbra dostarczyła każdą z nich.
Wynik jest przydatny, jeśli reguła pojawia się tylko w zamierzonym teście, a wynik całkowity zapewnia oczekiwaną obsługę. Jeśli nazwa testu jest niedostępna, sprawdź, czy wiadomość przekroczyła ten MTA, nazwa pliku kończy się na .cf, plik znajduje się we właściwym katalogu localrules, skaner został pomyślnie zrestartowany i próbka faktycznie pasuje do wyrażenia regularnego. Pamiętaj, że klienci poczty mogą ukrywać nagłówki diagnostyczne w normalnym widoku; otwórz źródło wiadomości lub pełne nagłówki.
Co się stanie, jeśli reguła da fałszywie pozytywne wyniki lub nie będzie zgodna?
- Zbyt wiele prawidłowych wiadomości spełnia kryteria: obniż wynik lub zawęź wyrażenie regularne. Przetestuj na przykładach zarówno pożądanej, jak i niechcianej poczty przed podniesieniem wyniku.
- Brak pasujących wiadomości: Sprawdź dokładną nazwę nagłówka, wyrażenie regularne bez uwzględniania wielkości liter, znak ucieczki, rozszerzenie pliku, ścieżkę i ponowne uruchomienie usługi. W przypadku adresów URL,
urizamiast zakładać, że najlepszym testem jest reguła treści, oceń regułę.
- Lint zgłasza błąd: popraw wskazany wiersz i uruchom ponownie Lint przed ponownym uruchomieniem. Nieprawidłowo sformatowana reguła niestandardowa może powodować problemy z konfiguracją lub uniemożliwiać załadowanie oczekiwanych testów.
- Reguła pojawia się, ale poczta pozostaje w skrzynce odbiorczej: To może być normalne, jeśli dodane punkty nie przekraczają skonfigurowanego progu spamu. Sprawdź pełny
X-Spam-Statuswynik i lokalne progi obsługi.
Aby przywrócić poprzednią wersję, usuń tylko dodany plik niestandardowy, a następnie ponownie uruchom Amavis. Jeśli zmieniłeś istniejący plik, przywróć jego zapisaną kopię i sprawdź poprawność konfiguracji przed ponownym załadowaniem. Prowadź krótki dziennik zmian z celem reguły, wynikiem, komunikatami testowymi i nazwą pliku przywracania, aby przyszli administratorzy mogli go ponownie ocenić.
Ograniczenia wersji i zachowania
Opublikowane wytyczne Zimbra dotyczące ścieżki wyraźnie obejmują ZCS 8.5 i nowsze, a także dokumentują inny układ dla starszych wersji. Dokładna wersja SpamAssassin i progi są zależne od instalacji. Prawidłowa reguła może również zachowywać się inaczej w przypadku różnych formatów wiadomości, przekaźników i ścieżek przepływu poczty. Sprawdź dokumentację zainstalowanej wersji, przetestuj na kontrolowanej ścieżce i oceń wyniki na podstawie nagłówków wiadomości i rzeczywistych próbek fałszywie pozytywnych, a nie tylko na podstawie tekstu reguły.