Ce fișier Zimbra SpamAssassin ar trebui să editez?
Pentru Zimbra Collaboration Suite 8.5 și versiunile ulterioare, documentația Zimbra plasează personalizările locale SpamAssassin în /opt/zimbra/data/spamassassin/localrules. Un fișier de reguli cu o .cfextensie poate fi găsit acolo; exemplul Zimbra folosește un fișier separat pentru o regulă personalizată. Versiunile mai vechi de Zimbra foloseau locații diferite, așadar verificați versiunea și directorul de pe server înainte de a edita. Aspectul actual al pachetului poate varia, de asemenea, în funcție de versiune sau implementare.
Acest ghid adaugă o regulă mică, reversibilă, la nivel de site, verifică sintaxa acesteia, reîncarcă serviciul de scanare a e-mailurilor și verifică un mesaj livrat. Presupune că administrați Zimbra MTA. Dacă rulați mai multe servere MTA, aplicați fișierul și reîncărcați SpamAssassin pe fiecare server care scanează e-mailurile primite.
Ghidul de reguli personalizate SpamAssassin al Zimbra documentează calea și zmamavisdctl restartcomanda localrules. Ghidul său anti-spam distinge configurația ZCS 8 mai veche de ZCS 8.5 și versiunile ulterioare.
Ce modifică o regulă personalizată?
O regulă SpamAssassin detectează o caracteristică a mesajului, atribuie un nume simbolic regulii și contribuie cu un scor. SpamAssassin combină acel scor cu alte rezultate ale testelor. Zimbra aplică apoi pragurile configurate de gestionare a spamului. O regulă nu garantează, în sine, că un mesaj ajunge în Junk sau este respins: restul scorului mesajului și setările serverului dvs. contează.
Această distincție contează atunci când alegeți un scor. Începeți cu o valoare modestă, inspectați falsurile pozitive și creșteți-o doar atunci când testele arată că semnalul este fiabil. Evitați să copiați un scor mare dintr-un exemplu fără a verifica propriul scor de spam necesar și pragul de eliminare.
Înainte să editezi ceva, ce ar trebui să confirmi?
- Versiune și cale: Verificați versiunea Zimbra și dacă
/opt/zimbra/data/spamassassin/localrulesexistă. Calea din acest ghid se aplică la ZCS 8.5 și versiuni ulterioare, conform documentației Zimbra. Nu presupuneți că se aplică și versiunilor mai vechi.
- Ce gazdă scanează e-mailul: Identificați fiecare MTA care rulează Amavis/SpamAssassin. O regulă instalată pe un server nu apare automat pe un alt MTA independent.
- Intenția regulii: Alegeți un semnal de mesaj specific, repetabil. Evitați regulile care corespund unor cuvinte generale precum „gratuit” sau „ofertă” fără dovezi suplimentare.
- Revenire: Înregistrați orice fișier existent înainte de a-l modifica. Folosiți un nume de fișier nou, descriptiv, pentru o regulă nouă și nu suprascrieți
.cfaccidental un fișier existent.
Acestea sunt personalizări la nivel de server, nu filtre pentru cutiile poștale. Toți utilizatorii ale căror e-mailuri trec prin scanerul configurat pot fi afectați.
Cum scrii o regulă simplă?
SpamAssassin acceptă tipuri de reguli precum header, body, uri, și meta. O regulă de antet este utilă atunci când semnalul este un subiect distinct sau o valoare distinctă a antetului. O regulă de corp caută în conținutul mesajului text; documentația SpamAssassin menționează că regulile obișnuite de corp operează asupra textului decodificat și tratează Subiectul ca parte a corpului în mod implicit. Folosiți o regulă URI atunci când condiția se referă în mod specific la linkuri.
Iată un exemplu deliberat restrâns care adaugă un scor mic atunci când subiectul unui mesaj de test conține o frază unică. Înlocuiți fraza cu un semnal pe care l-ați verificat în propriul mesaj; acest exemplu nu este o semnătură spam generală.
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
Numele simbolic trebuie să fie unic și să utilizeze litere, cifre și sublinieri. Linia headerdefinește potrivirea, scorecontrolează punctele adăugate atunci când apare și describeoferă o explicație în raportul SpamAssassin. Descrierea trebuie să fie scurtă și să explice clar unui alt administrator de ce există testul.
Referința de configurare a SpamAssassin documentează sintaxa regulilor pentru antet și corp, comportamentul scorului și detaliile expresiilor regulate. Versiunea instalată de Zimbra SpamAssassin poate diferi de cea mai recentă documentație Apache, așadar evitați să vă bazați pe funcții de reguli mai noi până când nu confirmați suportul local.
Cum instalezi regula pe Zimbra 8.5 și versiuni ulterioare?
- Conectați-vă la MTA cu un cont de administrator care poate comuta la contul de serviciu Zimbra.
- Verificați directorul de instalare și directorul local-rules. De exemplu:
su - zimbra
ls -ld /opt/zimbra/data/spamassassin/localrules
- Alegeți un nume de fișier care nu există deja, cum ar fi
local_subject_review.cf. Verificați mai întâi:
ls -l /opt/zimbra/data/spamassassin/localrules/local_subject_review.cf
Dacă există, inspectați-l și selectați un alt nume în loc să îl suprascrieți.
- Creați noul fișier ca
zimbrautilizator cu editorul dvs. și adăugați cele trei linii de regulă de mai sus:
vi /opt/zimbra/data/spamassassin/localrules/local_subject_review.cf
- Salvați fișierul, apoi confirmați proprietarul și conținutul:
ls -l /opt/zimbra/data/spamassassin/localrules/local_subject_review.cf
cat /opt/zimbra/data/spamassassin/localrules/local_subject_review.cf
Dacă directorul lipsește, opriți și confirmați versiunea Zimbra și configurația documentată. Nu creați un director cu nume similar într-o locație ghicită; SpamAssassin nu îl va încărca neapărat.
Cum ar trebui să îl validezi și să îl reîncarci?
Rulați verificarea sintaxei SpamAssassin înainte de reîncărcare. Documentația liniei de comandă Apache descrie --lintaceastă verificare ca fiind o verificare a sintaxei seturilor de reguli și a configurației. În calitate de utilizator Zimbra, rulați comanda spamassassin --lintdacă executabilul respectiv este disponibil în mediul Zimbra. Dacă comanda nu este găsită sau nu încarcă configurația Zimbra, localizați executabilul inclus și utilizați calea de configurare corespunzătoare versiunii, în loc să testați cu o instalare de sistem fără legătură. Un rezultat lint curat verifică sintaxa; nu dovedește că modelul dvs. se va potrivi cu mesajele pe care le intenționați.
Referința comenzilor din SpamAssassin explică opțiunea lint. După ce validarea are succes, reporniți Amavis ca zimbrautilizator, astfel încât scanerul să încarce regulile modificate:
zmamavisdctl restart
Exemplul de reguli personalizate din Zimbra utilizează această comandă de service. Într-o instalare multi-MTA, repetați implementarea fișierelor și repornirea serviciului pe fiecare scaner aplicabil. Dacă versiunea dvs. utilizează o comandă de service diferită, urmați documentația Zimbra a versiunii respective.
Cum poți spune dacă regula funcționează?
Trimiteți un mesaj de test controlat prin aceeași rută de intrare utilizată de utilizatori. Folosiți exact sintagma subiect din regulă pentru un mesaj, apoi trimiteți un mesaj similar fără aceasta. Verificați anteturile originale ale mesajului livrat, în special X-Spam-Status, pentru LOCAL_SUBJECT_REVIEWși contribuția la scor. Comparați cele două mesaje și verificați unde a fost livrat fiecare mesaj Zimbra.
Rezultatul este util dacă regula apare doar la testul dorit, iar scorul total produce gestionarea așteptată. Dacă numele testului lipsește, verificați dacă mesajul a trecut prin acest MTA, numele fișierului se termină în .cf, fișierul se află în directorul localrules corect, scanerul a repornit cu succes și exemplul se potrivește de fapt cu expresia regulată. Rețineți că este posibil ca clienții de e-mail să ascundă anteturile de diagnosticare în vizualizarea lor normală; deschideți sursa mesajului sau anteturile complete.
Ce se întâmplă dacă regula creează rezultate fals pozitive sau nu se potrivește?
- Prea multe mesaje legitime corespund: Reduceți scorul sau restrângeți expresia regulată. Testați cu exemple de mesaje dorite și nedorite înainte de a crește scorul.
- Niciun mesaj nu se potrivește: Verificați numele exact al antetului, expresia regulată care nu ține cont de majuscule, caracterele escape, extensia de fișier, calea și repornirea serviciului. Pentru adresele URL, evaluați o
uriregulă în loc să presupuneți că o regulă de corp este cel mai bun test.
- Lint raportează o eroare: Corectați linia indicată și rulați din nou lint înainte de a reporni. O regulă personalizată incorectă poate cauza probleme de configurare sau poate împiedica încărcarea testelor așteptate.
- Apare o regulă, dar e-mailul rămâne în Inbox: Acest lucru poate fi normal dacă punctele adăugate nu depășesc scorul total peste pragul de spam configurat. Verificați
X-Spam-Statusscorul complet și pragurile de gestionare locală.
Pentru a reveni la versiunea anterioară, eliminați doar fișierul personalizat adăugat, apoi reporniți Amavis. Dacă ați modificat un fișier existent, restaurați copia salvată și validați configurația înainte de a reîncărca. Păstrați un scurt jurnal de modificări cu scopul, scorul, mesajele de testare și numele fișierului de revenire la versiunea anterioară a regulii, astfel încât viitorii administratori să o poată reevalua.
Limite de versiune și comportament
Ghidul publicat de Zimbra privind căile de acces acoperă în mod explicit ZCS 8.5 și versiunile ulterioare și documentează un aspect diferit pentru versiunile anterioare. Versiunea și pragurile exacte de SpamAssassin incluse în pachet sunt specifice instalării. O regulă validă se poate comporta diferit și cu diferite formate de mesaje, relee și căi de flux de e-mail. Verificați documentația versiunii instalate, testați pe o rută controlată și evaluați rezultatele pe baza anteturilor mesajelor și a eșantioanelor reale fals pozitive, mai degrabă decât doar pe baza textului regulii.