Documentação do Spam Scanner
O Spam Scanner é um filtro de spam para Node.js e para a linha de comando, com o código-fonte no GitHub. Ele lê uma mensagem de e-mail bruta e decide se ela é spam, phishing, um golpe ou se carrega malware, em qualquer idioma. Ele roda como biblioteca, ferramenta de linha de comando, milterMail filter: um protocolo do Sendmail, também usado pelo Postfix, que permite que um programa separado inspecione cada mensagem durante a sessão SMTP. para Postfix ou Sendmail, filtro de conteúdo do Postfix, servidor spamdO daemon do SpamAssassin. Seu protocolo é usado pelo spamc, Exim, Haraka e outros clientes do SpamAssassin. compatível com o SpamAssassin, API HTTP ou servidor TCP.
Ele é desenvolvido pelo Forward Email para os seus próprios servidores de e-mail.
Como uma mensagem é avaliada#
Cada verificação adiciona ou remove pontos. O total decide o resultado:
| Pontuação | Ação | O que um servidor de e-mail faz |
|---|---|---|
| Abaixo de 5 | accept | Entrega a mensagem |
| De 5 a 14,9 | tag | Entrega a mensagem marcada como spam |
| 15 ou mais | reject | Recusa a mensagem durante a sessão SMTP |
Os dois limites podem ser alterados. Cada resultado lista os testes acionados, com os seus pontos e um motivo, então uma decisão sempre pode ser explicada.
As verificações:
- Um classificador treinado lê as palavras da mensagem em qualquer sistema de escrita, a forma dos seus links, o remetente e os anexos. Ele vem treinado com conjuntos de dados públicos e aprende com os seus próprios e-mails. Como o classificador funciona
- As verificações de phishing pegam domínios parecidos (
paypa1.com,pаypal.comcom um а cirílico), links cujo texto mostra um endereço e cujo destino é outro e nomes de exibição que alegam ser uma marca. Phishing - As verificações de anexos encontram executáveis, executáveis renomeados como documentos, extensões duplas, truques de nome de arquivo da direita para a esquerda, executáveis dentro de arquivos ZIP, macros do Office e conteúdo ativo em PDF. O ClamAVUm mecanismo antivírus de código aberto. Seu daemon, o clamd, analisa arquivos enviados por um socket. pode analisar os anexos em busca de vírus. Anexos
- Autenticação: SPFSender Policy Framework: um registro DNS que lista os servidores autorizados a enviar e-mails por um domínio., DKIMDomainKeys Identified Mail: uma assinatura sobre a mensagem, verificada com uma chave pública publicada no DNS do remetente., DMARCUma política no DNS que diz aos destinatários o que fazer quando um e-mail que alega vir de um domínio falha no alinhamento de SPF e DKIM. e ARCAuthenticated Received Chain: assinaturas que levam os resultados de autenticação através de servidores de encaminhamento., quando o endereço IP do cliente é conhecido. Autenticação
- Listas de bloqueio no DNS para o endereço IP do cliente e os domínios dos links, e os resolvedores com filtragem da Cloudflare para sites conhecidos de malware e de conteúdo adulto. Listas de bloqueio
- Regras para padrões que nenhum classificador precisa aprender: a sequência de teste GTUBEGeneric Test for Unsolicited Bulk Email: uma sequência fixa que todo filtro de spam trata como spam, usada para testes., assuntos de sextorsão, golpes de fatura do PayPal, autofalsificação e instruções escondidas para filtros de IA. Regras
- Um modelo de linguagem, opcional, dá uma segunda opinião nos casos duvidosos: um modelo local através do OllamaUm programa que baixa e executa modelos de linguagem abertos na sua própria máquina, com uma API HTTP. ou de qualquer servidor compatível com a OpenAI, um modelo de decisão como o Clef da Cloudflare, ou Claude, ChatGPT, Gemini e outros. Por padrão, ele devolve uma probabilidade para cada veredito em um único passo, em vez de escrever uma resposta. Modelos de linguagem
Por onde começar#
- Primeiros passos: instale e analise uma primeira mensagem.
- Linha de comando: todos os comandos e opções.
- Postfix e Sendmail: filtre um servidor de e-mail com o milter ou com um filtro de conteúdo.
- Outros servidores de e-mail: Exim, Haraka, Dovecot, procmail e qualquer coisa que consiga chamar uma API HTTP.
- Treinamento: ensine os seus próprios e-mails ao modelo e meça o resultado.
- Modelos de linguagem: decisão e geração, precisão e velocidade medidas, modelos de decisão, provedores, modelos abertos recomendados, privacidade e injeção de prompt.
- Idiomas: como ele lê chinês, árabe, tailandês e todos os outros sistemas de escrita.
- Forward Email: como o Forward Email o usa e como atualizar a partir da versão 5 ou 6.
- Referência da API e testes e pontuações.
- Segurança e privacidade: o que sai da máquina e como impedir isso.