# Dokumentacja Spam Scanner

Spam Scanner to filtr antyspamowy dla Node.js i wiersza poleceń, z kodem źródłowym na GitHub. Czyta surową wiadomość e-mail i rozstrzyga, czy jest spamem, phishingiem, oszustwem lub czy zawiera złośliwe oprogramowanie, w dowolnym języku. Działa jako biblioteka, narzędzie wiersza poleceń, milter dla Postfix lub Sendmail, filtr treści Postfix, serwer spamd zgodny ze SpamAssassin, HTTP API lub serwer TCP.

Tworzy go [Forward Email](https://forwardemail.net) na potrzeby własnych serwerów pocztowych.


## Jak oceniana jest wiadomość

Każda kontrola dodaje lub odejmuje punkty. O wyniku decyduje suma:

| Wynik        | Akcja    | Co robi serwer pocztowy          |
| ------------ | -------- | -------------------------------- |
| Poniżej 5    | `accept` | Dostarcza wiadomość              |
| Od 5 do 14,9 | `tag`    | Dostarcza ją oznaczoną jako spam |
| 15 i więcej  | `reject` | Odrzuca ją w trakcie sesji SMTP  |

Oba progi można zmienić. Każdy wynik wymienia testy, które zadziałały, z ich punktami i powodem, więc każdą decyzję zawsze da się wyjaśnić.

Kontrole:

* **Wytrenowany klasyfikator** czyta słowa wiadomości w dowolnym piśmie, kształt jej linków, nadawcę i załączniki. Jest dostarczany wytrenowany na publicznych zbiorach danych i uczy się z twojej własnej poczty. [Jak działa klasyfikator](https://spamscanner.net/pl/docs/how-it-works/#the-classifier)
* **Kontrole phishingu** wyłapują podobne domeny (`paypa1.com`, `pаypal.com` z cyrylickim а), linki, których tekst pokazuje jeden adres, a cel jest inny, oraz nazwy wyświetlane podające się za markę. [Phishing](https://spamscanner.net/pl/docs/how-it-works/#phishing)
* **Kontrole załączników** znajdują pliki wykonywalne, pliki wykonywalne przemianowane na dokumenty, podwójne rozszerzenia, sztuczki z nazwami plików pisanymi od prawej do lewej, pliki wykonywalne w plikach ZIP, makra Office i aktywną zawartość PDF. ClamAV może skanować załączniki w poszukiwaniu wirusów. [Załączniki](https://spamscanner.net/pl/docs/how-it-works/#attachments)
* **Uwierzytelnianie**: SPF, DKIM, DMARC i ARC, gdy znany jest adres IP klienta. [Uwierzytelnianie](https://spamscanner.net/pl/docs/how-it-works/#authentication)
* **Czarne listy DNS** dla adresu IP klienta i domen w linkach oraz filtrujące resolvery Cloudflare dla znanych witryn ze złośliwym oprogramowaniem i treściami dla dorosłych. [Czarne listy](https://spamscanner.net/pl/docs/how-it-works/#blocklists)
* **Reguły** dla wzorców, których żaden klasyfikator nie musi się uczyć: ciąg testowy GTUBE, tematy sextortion, oszustwa na faktury PayPal, podszywanie się pod własną domenę i instrukcje ukryte dla filtrów AI. [Reguły](https://spamscanner.net/pl/docs/scoring/#rules)
* **Model językowy**, opcjonalny, daje drugą opinię w trudnych przypadkach: lokalny model przez Ollama lub dowolny serwer zgodny z OpenAI, model decyzyjny, taki jak Clef od Cloudflare, albo Claude, ChatGPT, Gemini i inne. Domyślnie zwraca prawdopodobieństwo każdego werdyktu w jednym kroku, zamiast pisać odpowiedź. [Modele językowe](https://spamscanner.net/pl/docs/llm/)


## Od czego zacząć

* [Pierwsze kroki](https://spamscanner.net/pl/docs/getting-started/): instalacja i skanowanie pierwszej wiadomości.
* [Wiersz poleceń](https://spamscanner.net/pl/docs/cli/): wszystkie polecenia i opcje.
* [Postfix i Sendmail](https://spamscanner.net/pl/docs/postfix/): filtrowanie serwera pocztowego przez milter lub filtr treści.
* [Inne serwery pocztowe](https://spamscanner.net/pl/docs/mail-servers/): Exim, Haraka, Dovecot, procmail i wszystko, co potrafi wywołać HTTP API.
* [Trenowanie](https://spamscanner.net/pl/docs/training/): nauka na twojej własnej poczcie i pomiar wyniku.
* [Modele językowe](https://spamscanner.net/pl/docs/llm/): decyzje i generowanie, zmierzona trafność i szybkość, modele decyzyjne, dostawcy, zalecane otwarte modele, prywatność i prompt injection.
* [Języki](https://spamscanner.net/pl/docs/languages/): jak czyta chiński, arabski, tajski i każde inne pismo.
* [Forward Email](https://spamscanner.net/pl/docs/forward-email/): jak korzysta z niego Forward Email i jak przejść z wersji 5 lub 6.
* [Dokumentacja API](https://spamscanner.net/pl/docs/api/) oraz [testy i punkty](https://spamscanner.net/pl/docs/scoring/).
* [Bezpieczeństwo i prywatność](https://spamscanner.net/pl/docs/security/): co opuszcza komputer i jak to zatrzymać.
