Documentazione di Spam Scanner
Spam Scanner è un filtro antispam per Node.js e per la riga di comando, con il codice sorgente su GitHub. Legge un messaggio email grezzo e decide se è spam, phishing, una truffa o se contiene malware, in qualsiasi lingua. Funziona come libreria, come strumento da riga di comando, come milterMail filter: un protocollo nato con Sendmail, usato anche da Postfix, che permette a un programma separato di esaminare ogni messaggio durante la sessione SMTP. per Postfix o Sendmail, come content filter di Postfix, come server spamdIl demone di SpamAssassin. Il suo protocollo è usato da spamc, Exim, Haraka e altri client SpamAssassin. compatibile con SpamAssassin, come API HTTP o come server TCP.
È sviluppato da Forward Email per i propri server di posta.
Come viene giudicato un messaggio#
Ogni controllo aggiunge o toglie punti. Il totale decide l'esito:
| Punteggio | Azione | Cosa fa un server di posta |
|---|---|---|
| Sotto 5 | accept | Consegna il messaggio |
| Da 5 a 14,9 | tag | Lo consegna segnato come spam |
| 15 e oltre | reject | Lo rifiuta durante la sessione SMTP |
Entrambe le soglie si possono modificare. Ogni risultato elenca i test scattati, con i loro punti e un motivo, quindi una decisione si può sempre spiegare.
I controlli:
- Un classificatore addestrato legge le parole del messaggio in qualsiasi sistema di scrittura, la forma dei suoi link, il mittente e gli allegati. Viene distribuito già addestrato su dataset pubblici e impara dalla tua posta. Come funziona il classificatore
- I controlli antiphishing intercettano i domini sosia (
paypa1.com,pаypal.comcon una а cirillica), i link il cui testo mostra un indirizzo e la cui destinazione è un altro, e i nomi visualizzati che si spacciano per un marchio. Phishing - I controlli sugli allegati trovano eseguibili, eseguibili rinominati come documenti, doppie estensioni, trucchi con i nomi file da destra a sinistra, eseguibili dentro file ZIP, macro di Office e contenuti PDF attivi. ClamAVUn motore antivirus open source. Il suo demone, clamd, analizza i file inviati tramite un socket. può analizzare gli allegati alla ricerca di virus. Allegati
- Autenticazione: SPFSender Policy Framework: un record DNS che elenca i server autorizzati a inviare posta per un dominio., DKIMDomainKeys Identified Mail: una firma su un messaggio, verificata con una chiave pubblica pubblicata nel DNS del mittente., DMARCUna policy DNS che indica ai destinatari cosa fare quando la posta che dichiara un dominio non supera l'allineamento SPF e DKIM. e ARCAuthenticated Received Chain: firme che trasportano i risultati dell'autenticazione attraverso i server di inoltro., quando l'indirizzo IP del client è noto. Autenticazione
- DNS blocklist per l'indirizzo IP del client e per i domini nei link, e i resolver con filtraggio di Cloudflare per i siti noti di malware e per adulti. Blocklist
- Regole per gli schemi che nessun classificatore ha bisogno di imparare: la stringa di test GTUBEGeneric Test for Unsolicited Bulk Email: una stringa fissa che ogni filtro antispam tratta come spam, usata per i test., gli oggetti delle sextortion, le truffe con fatture PayPal, l'auto-spoofing e le istruzioni nascoste per i filtri IA. Regole
- Un modello linguistico, facoltativo, dà un secondo parere sui casi dubbi: un modello locale tramite OllamaUn programma che scarica ed esegue modelli linguistici aperti sulla tua macchina, con un'API HTTP. o qualsiasi server compatibile con OpenAI, un modello decisionale come Clef di Cloudflare, oppure Claude, ChatGPT, Gemini e altri. Per impostazione predefinita restituisce una probabilità per ogni verdetto in un solo passaggio, invece di scrivere una risposta. Modelli linguistici
Da dove iniziare#
- Primi passi: installarlo e analizzare un primo messaggio.
- Riga di comando: ogni comando e opzione.
- Postfix e Sendmail: filtrare un server di posta con il milter o un content filter.
- Altri server di posta: Exim, Haraka, Dovecot, procmail e qualsiasi cosa possa chiamare un'API HTTP.
- Addestramento: insegnargli la tua posta e misurare il risultato.
- Modelli linguistici: decisioni e generazione, precisione e velocità misurate, modelli decisionali, provider, modelli aperti consigliati, privacy e prompt injection.
- Lingue: come legge il cinese, l'arabo, il thailandese e ogni altro sistema di scrittura.
- Forward Email: come lo usa Forward Email, e l'aggiornamento dalla versione 5 o 6.
- Riferimento API e test e punteggi.
- Sicurezza e privacy: cosa lascia la macchina e come impedirlo.