spämifiltreerimissüsteemi väljaanne , mis pakub vahendeid sõnumite hindamiseks erinevate kriteeriumide alusel, sealhulgas reeglid, statistilised meetodid ja mustad nimekirjad, mille põhjal moodustatakse lõplik sõnumi kaal, mida kasutakse otsustamisel, kas see blokeerida. Rspamd toetab praktiliselt kõiki funktsioone, mida on rakendatud SpamAssassinis, ning omab mitmeid omadusi, mis võimaldavad filtreerida postkasti keskmiselt 10 korda kiiremini kui SpamAssassin, pakkudes samal ajal paremat filtreerimise kvaliteeti. Süsteemi kood on kirjutatud C keeles ja ainekood on litsentsitud Apache 2.0 all.
Rspamd on ehitatud üritusmudeli arhitektuuril, mida on algselt kavandatud kõrge koormusega süsteemide jaoks, võimaldades töödelda sadu sõnumeid sekundis. Rikkumiste tuvastamise reeglid pakuvad suurt paindlikkust, sisaldades lihtsamas vormis regulaaravaldisi ja keerulisemates olukordades võivad need olla kirjutatud Lua keeles. Funktsionaalsuse laiendamine ja uute kontrollitüüpide lisamine toimub moodulite kaudu, mida saab kirjutada C ja Lua keeltes. Näiteks on saadaval moodulid saatja kontrollimiseks SPF kasutades, saatja domeeni kinnitamine DKIM kaudu ja päringute vormistamine DNSBL nimekirjadele. Administreerimise veebi liides lihtsustab seadistamist, reeglite loomist ja statistika jälgimist.
Põhilised uuendused:
- On toimunud üleminek uuele versioonide numbri skeemile. Kuna versiooni numbri esimene number ei ole juba mitu aastat muutunud ja teine number on tõeline versiooni indikaator, otsustati skeemilt «x.y.z» üle minna formaadile «y.z»;
- Sündmuste töötlemise tsükli asemel kasutatakse raamatukogu , eemaldades mõned libeventi piirangud ja võimaldades saavutada kõrgemat jõudlust. Kasutamine
libev on võimaldanud lihtsustada koodi, parandada signaalide ja ajastuste töötlemist ning ühtlustada failimuudatuste jälgimist inotify mehhanismi abil (mitte kõik libeventi tooted toetatavate platvormide jaoks ei saanud inotifyga töötada); - Toetuse lõpetamine sõnumite klassifitseerimise moodulile, mis kasutas sügava õppimise raamatukogu Torch. Põhjuseks on Torch'i liialt keerukus ja suur töömaht selle üleshoidmiseks. Asenduseks masinõppe meetodite abil klassifitseerimiseks on pakutud täielikult ümber kirjutatud moodul , milles närvivõrgu töö tagamiseks kasutatakse raamatukogu , mis sisaldab vaid 4000 rida C keeles. Uues teostuses on lahendatud mitmed probleemid, mis on seotud lukustusprobleemide tekkimisega koolitamise ajal;
- Modul asemelitas muutusid SURBL ja Emails mooduliteks, mis võimaldas ühendada kõikide mustade nimekirjade kontrollimeetodid. RBL võimalusi on täiustatud täiendavate tüüpide, näiteks selektorite ja olemasolevate reeglite lihtsustatud laiendamise vahendite toetamisega. E-posti blokeerimise reeglid, mis põhinevad map-nimekirjadel DNS RBL asemel, ei ole enam toetatud, soovitatav on kasutada multimap selektoritega;
- Failitüüpide määramiseks sisu põhjal kasutatakse uut Lua Magic teeki, mis kasutab Lua ja Hyperscan libmagic asemel.
Oma teegi loomise põhjuseks tuuakse välja soov saavutada kõrgemat jõudlust, vältida vigu docx-failide tuvastamisel, saada sobivam API ja lisada uusi heuristikate tüüpe, mis ei oleks piiratud range reeglistikuga; - Andmebaasi andmete säilitamise moodulit on parandatud. Lisatud on lahtrid LowCardinality ja oluliselt on optimeeritud mälu tarbimine;
- Mooduli võimalusi on laiendatud; , milles on lisatud tugi ja seoste jaoks;
- Maillisti moodulis on paranenud postitusloendite tuvastamine.
- Tööprotsessidesse on lisatud võimalus saata põhiprotsessile heartbeat-sõnumeid, mis kinnitavad normaalse töö. Kui selliseid sõnumeid kaua ei saadeta, võib põhiprotsess töösse sekkuda ja selle lõpetada. See režiim on vaikimisi välja lülitatud;
- Lisa seeria uusi skaneerijaid Lua keeles. Näiteks on lisatud moodulid Kaspersky ScanEngine, Trend Micro IWSVA (icap kaudu) ja
F-Secure Internet Gatekeeper (icap kaudu) skaneerimiseks, samuti on pakutud väliseid skaneerijaid Razor, oletools ja P0F; - Lisa võimalus muuta sõnumeid läbi Lua API. MIME-plokkide muutmiseks on pakutud moodul ;
- Tagatud on seadete eraldi töötlemine, mida on seadistatud läbi „Settings-Id:”, näiteks saab nüüd reegleid siduda ainult teatud seadete identifikaatoritega;
- Teostatud on Lua mootori, base64 dekodeerimise ja teksti keele määramise jõudluse optimeerimine. Lisatud on keerukate kaardistamiste (maps) vahemälu tugi. Rakendatud on
HTTP keep-alive tugi.
Allikas: opennet.ru
