Nel seguente tutorial tratteremo la procedura di installazione e integrazione di SpamAssassin con Exim su un VPS Linux CentOS 7 . Una volta completata la configurazione, SpamAssassin sarà in grado di scansionare e contrassegnare le email rilevate come SPAM.
Cos'è SpamAssassin?
È un programma software rilasciato sotto la licenza Apache 2.0 utilizzato per il filtro antispam della posta elettronica sulla base di regole di corrispondenza dei contenuti. È un filtro email molto intelligente che utilizza una vasta gamma di test per identificare le email collettive non richieste e applicare i test alle intestazioni e ai contenuti delle email per classificare la posta elettronica utilizzando metodi statistici avanzati.
Prima di procedere oltre, assicurati di avere un server di posta con Exim configurazione sul tuo server virtuale SSD. Puoi seguire il nostro fantastico articolo su come configurare un server di posta con Exim e Dovecot su un VPS CentOS 7 se non hai già configurato Exim sul tuo VPS Linux.
AGGIORNAMENTO DEL SISTEMA
ssh
sul tuo server e avvia una screen
sessione utilizzando il comando seguente:
## screen -U -S exim-spamd
una volta che sei in una screen
sessione, aggiorna il tuo CentOS 7 VPS utilizzando yum
come in:
## yum update
INSTALLA SPAMASSASSIN
SpamAssassin è disponibile in CentOS 7 base
repository, così puoi installarlo facilmente usando yum
:
## yum install spamassassin
Una volta installato, modifica /etc/mail/spamassassin/local.cf
utilizzando il tuo editor preferito e imposta quanto segue:
## vim /etc/mail/spamassassin/local.cf required_hits 5 report_safe 0 rewrite_header Subject [SPAM] required_score 5.0
con tutto ciò a posto, procedi con l'avvio di spamassassin e aggiungendolo all'avvio del tuo sistema utilizzando systemctl
## systemctl start spamassassin ## systemctl status spamassassin ## systemctl enable spamassassin
aggiorna le regole di spamassassin utilizzando:
## sa-update --nogpg
quindi, controlla se spamassassin è in ascolto su localhost (127.0.0.1) sulla porta 783 usando ss
da iproute2
:
## ss -tnlp | grep spamd LISTEN 0 0 127.0.0.1:783 *:* users:(("spamd child",1207,5),("spamd child",1206,5),("/usr/bin/spamd ",1205,5))
CONFIGURA EXIM CON SPAMASSASSIN
OK, la prossima cosa da fare è configurare Exim per utilizzare Spamassassin per scansionare e contrassegnare come SPAM le email non richieste. Quindi, fai un backup del tuo attuale file di configurazione di Exim usando:
## cp /etc/exim/exim.conf{,.backup-no-spamd}
Quindi, modifica exim.conf
e aggiungi la seguente riga all'inizio del file:
## vim /etc/exim/exim.conf system_filter = /etc/exim/filters
Successivamente, aggiungi o decommenta il spamd_address
riga come in:
## vim /etc/exim/exim.conf spamd_address = 127.0.0.1 783
e aggiungi quanto segue all'interno degli ACLs
sezione nel file di configurazione di Exim:
## vim /etc/exim/exim.conf # Bypass SpamAssassin checks if the message is too large. # accept condition = ${if >={$message_size}{100000} {1}} add_header = X-Spam-Note: SpamAssassin run bypassed due to message size # Run SpamAssassin, but allow for it to fail or time out. Add a warning message # and accept the mail if that happens. Add an X-Spam-Flag: header if the SA # score exceeds the SA system threshold. # warn spam = nobody/defer_ok add_header = X-Spam-Flag: YES add_header = X-Spam-Subject: [SPAM] $h_Subject accept condition = ${if !def:spam_score_int {1}} add_header = X-Spam-Note: SpamAssassin invocation failed # Unconditionally add score and report headers # warn add_header = X-Spam-Score: $spam_score ($spam_bar)\n\ X-Spam-Report: $spam_report
Quindi, crea i seguenti filtri di sistema Exim in /etc/exim/filters
:
## vim /etc/exim/filters if $h_X-Spam-Flag: contains "YES" then headers add "Old-Subject: $h_subject" headers remove "Subject" headers add "Subject: [SPAM] $h_old-subject" headers remove "Old-Subject" endif
e riavvia Exim per rendere effettive le modifiche utilizzando:
## systemctl restart exim ## systemctl status exim
PROVA SPAMASSASSIN
Per testare la configurazione, è sufficiente inviare un'e-mail di prova con oggetto XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X
a qualsiasi account e-mail disponibile sul server di posta e dovresti vedere le seguenti righe nell'intestazione dell'e-mail:
X-Spam-Flag: YES X-Spam-Subject: [SPAM] XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X X-Spam-Score: 1000.0 (+++++++++++++++++++++++++++++++++++++++++++++++++++) X-Spam-Report: Spam detection software, running on the system "mail.mydomain.com", has identified this incoming email as possible spam. The original message has been attached to this so you can view it (if it isn't spam) or label similar future email. If you have any questions, see @@CONTACT_ADDRESS@@ for details. Content preview: nov spam email [...] Content analysis details: (1000.0 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 T_RP_MATCHES_RCVD Envelope sender domain matches handover relay domain 1000 GTUBE BODY: Generic Test for Unsolicited Bulk Email
FACCIAMO QUESTO PER TE?
Ovviamente non devi fare nulla di tutto questo se utilizzi uno dei nostri servizi di hosting VPS Linux, nel qual caso puoi semplicemente chiedere ai nostri esperti amministratori Linux di installare e integrare SpamAssassin con Exim . Sono disponibili 24 ore su 24, 7 giorni su 7 e si prenderanno immediatamente cura della tua richiesta.
PS. Se questo post ti è piaciuto condividilo con i tuoi amici sui social network utilizzando i pulsanti a sinistra o semplicemente lascia una risposta qui sotto. Grazie.