K dispozícii je systém filtrovania spamu Rspamd 2.0
Predloženej uvoľnenie systému filtrovania spamu Rspamd 2.0, ktorá poskytuje nástroje na vyhodnocovanie správ podľa rôznych kritérií vrátane pravidiel, štatistických metód a blacklistov, na základe ktorých sa vytvorí konečná váha správy, ktorá sa používa na rozhodnutie o zablokovaní. Rspamd podporuje takmer všetky funkcie implementované v SpamAssassin a má množstvo funkcií, ktoré vám umožňujú filtrovať poštu v priemere 10-krát rýchlejšie ako SpamAssassin a zároveň poskytujú lepšiu kvalitu filtrovania. Systémový kód je napísaný v C a distribuovaný licencovaný pod Apache 2.0.
Rspamd je vytvorený pomocou architektúry riadenej udalosťami a je pôvodne navrhnutý na použitie vo vysoko zaťažených systémoch, čo mu umožňuje spracovať stovky správ za sekundu. Pravidlá na identifikáciu znakov spamu sú vysoko flexibilné a vo svojej najjednoduchšej forme môžu obsahovať regulárne výrazy a v zložitejších situáciách môžu byť napísané v jazyku Lua. Rozširovanie funkčnosti a pridávanie nových typov kontrol je implementované prostredníctvom modulov, ktoré je možné vytvárať v jazykoch C a Lua. K dispozícii sú napríklad moduly na overenie odosielateľa pomocou SPF, potvrdenie domény odosielateľa cez DKIM a generovanie požiadaviek na DNSBL zoznamy. Na zjednodušenie konfigurácie, vytváranie pravidiel a sledovanie štatistík je k dispozícii administračné webové rozhranie.
Hlavné inovácie:
Prešiel sa na novú schému číslovania emisií. Keďže prvé číslo v čísle verzie sa už niekoľko rokov nezmenilo a skutočným indikátorom verzie je druhé číslo, bolo rozhodnuté prejsť na formát „yz“ namiesto schémy „xyz“;
Namiesto toho pre slučku udalostí Libevent zapojená knižnica libev, ktorý odstraňuje niektoré obmedzenia libevent a umožňuje lepší výkon. Použitie
libev umožnil zjednodušiť kód, zlepšiť spracovanie signálov a timeoutov a zjednotiť sledovanie zmien súborov pomocou mechanizmu inotify (nie všetky vydania libevent dodávané pre podporované platformy mohli fungovať s inotify);
Podpora pre modul klasifikácie správ, ktorý používa knižnicu hlbokého strojového učenia Torch, bola ukončená. Uvedeným dôvodom je prílišná zložitosť Torch a vysoká zložitosť jeho aktualizácie. Ako náhrada klasifikácie pomocou metód strojového učenia je navrhnutý kompletne prepísaný modul nervový, v ktorej sa využíva knižnica na zabezpečenie chodu neurónovej siete moci, ktorý obsahuje iba 4000 riadkov kódu C. Nová implementácia rieši mnohé problémy s výskytom zablokovania počas tréningu;
Modul RBL nahradil moduly SURBL a Emaily, čo umožnilo zjednotiť spracovanie všetkých kontrol blacklistov. Možnosti RBL boli rozšírené o podporu pre ďalšie typy, ako sú selektory, a nástroje na jednoduché rozšírenie existujúcich pravidiel. Pravidlá blokovania e-mailov založené na zoznamoch máp namiesto DNS RBL už nie sú podporované, namiesto toho sa odporúča použiť multimapu so selektormi;
Na určenie typov súborov na základe obsahu sa používa nová knižnica Lua Magic, ktorá namiesto libmagic používa Lua a Hyperscan.
Medzi dôvody na vytvorenie vlastnej knižnice patrí túžba dosiahnuť vyšší výkon, zbaviť sa zlyhania pri identifikácii docx súborov, získať vhodnejšie API a pridať nové typy heuristiky, ktoré nie sú obmedzené prísnymi pravidlami;
Vylepšený modul pre ukladanie dát v DBMS clickhouse. Pridané polia LowCardinality a výrazne optimalizovaná spotreba pamäte;
Modul Maillist vylepšil definíciu zoznamov adries;
Pracovné procesy majú teraz možnosť odosielať správy srdcového tepu hlavnému procesu, čím potvrdzujú normálnu prevádzku. Ak po určitú dobu neexistujú žiadne takéto správy, hlavný proces môže násilne ukončiť pracovný proces. V predvolenom nastavení je tento režim zatiaľ zakázaný;
Bola pridaná séria nových skenerov v jazyku Lua. Napríklad boli pridané moduly na skenovanie správ v Kaspersky ScanEngine, Trend Micro IWSVA (cez icap) a
F-Secure Internet Gatekeeper (cez icap) a ponúka aj externé skenery pre Razor, oletools a P0F;
Pridaná možnosť meniť správy cez Lua API. Bol navrhnutý modul na vykonávanie zmien v blokoch MIME lib_mime;
Samostatné spracovanie nastavení cez „Settings-Id:“ bolo poskytnuté, napríklad teraz môžete pravidlá viazať iba na určité identifikátory nastavení;
Boli vykonané optimalizácie pre výkon motora Lua, dekódovanie base64 a detekciu jazyka pre text. Pridaná podpora pre ukladanie zložitých máp do vyrovnávacej pamäte. Podpora implementovaná
HTTP keep-alive.