spamifiltreerimise süsteemi väljaande , mis pakub vahendeid sõnumite hindamiseks erinevate kriteeriumide, sealhulgas reeglite, statistiliste meetodite ja mustade nimekirjade alusel, mille põhjal moodustatakse sõnumi lõplik kaal, mida kasutatakse otsustamiseks sõnumi blokeerimise vajaduse kohta. Rspamd toetab praktiliselt kõiki võimalusi, mida on rakendatud SpamAssassinis, ja omab mitmeid omadusi, mis võimaldavad filtreerida e-kirju keskmiselt 10 korda kiiremini kui SpamAssassin ning tagada parema filtreerimise kvaliteedi. Süsteemi kood on kirjutatud C keeles ja lisensiga Apache 2.0.
Rspamd on üles ehitatud sündmustele orienteeritud arhitektuurile (Event-driven) ja on algselt kavandatud kasutamiseks suure koormusega süsteemides, võimaldades töödelda sadu sõnumeid sekundi jooksul. Spami tuvastamise reeglid on kõrgelt paindlikud ja võivad lihtsaimal kujul sisaldada regulaaravaldisi, samas kui keerukamates olukordades võib neid vormistada Lua keeles. Funktsionaalsuse laiendamine ja uute kontrollitüüpide lisamine toimub modulite kaudu, mida saab luua C ja Lua keeltes. Näiteks on saadaval moduleid saatja kontrollimiseks SPF kasutades, saatja domeeni kinnitamiseks DKIM kaudu ja päringute koostamiseks DNSBL nimekirjadesse. Seadistamise, reeglite loomise ja statistika jälgimise hõlbustamiseks on saadaval administratiivne veebiliides.
Peamised uuendused:
- On toimunud üleminek uuele väljaannete nummerdamise skeemile. Kuna versiooni numbri esimesel numbril ei ole juba mitu aastat muutusi olnud ja reaalne versiooninäitaja on teine number, otsustati skeemist «x.y.z» minna formaadi «y.z» juurde;
- Sündmuste töötlemise tsükli jaoks on asemel kasutatud raamatukogu , mis on vabanenud mõnedest piirangutest libevent ja võimaldab saavutada suuremat tootlikkust. Kasutades
libev on olnud võimalik koodi lihtsustada, parandada signaalide ja ajutiste ürituste töötlemist ning ühtlustada faili muudatuste jälgimist inotify mehhanismi abil (kõik libevent toetavate platvormide väljaanded ei suutnud töötada inotifyga); - Toetuste lõpetamine teadete klassifitseerimise moodulile, mis kasutab süvaõppe raamatukogu Torch. Põhjuseks nimetatakse Torch'i ülemäärast keerukust ja suurt tööjõu nõudlikkust selle ajakohane hoidmine. Klassifitseerimise jaoks, kasutades masinõppe meetodeid, on pakutud täiesti ümberkirjutatud moodul. , mille puhul kasutatakse närvivõrgu tööle rakendamiseks raamatukogu , mis sisaldab kokku 4000 rida C keeles. Uues rakenduses on lahendatud mitmed probleemid, mis on seotud ummikutega treeningu ajal;
- Moodul asendas moodulid SURBL ja Emails, mis võimaldas ühtlustada kõikide mustade nimekirjade kontrollide töötlemist. RBL võimalusi on laiendatud täiendavate tüüpide, näiteks selektorite, toetamisega ning olemasolevate reeglite lihtsustamise vahenditega. E-maili blokeerimise reeglid, mis põhinevad map-loenditel, ei ole enam toetatud, selle asemel soovitatakse kasutada multimap selektoritega;
- Failitüüpide määramine sisu põhjal on hõlmatud uude raamatukokku Lua Magic, mis kasutab Lua ja Hyperscan'i libmagic'i asemel.
Oma raamatukogu loomise põhjuseks tuuakse välja soov saavutada kõrgem tootlikkus, vältida tõrkeid docx failide tuvastamisel, saada sobivam API ning lisada uusi heuristikate liike, mis ei ole piiratud range reeglistikuga; - Andmete salvestamise moodulit andmebaasis . On lisatud Madal Kardinaalsus väljad ja oluliselt on optimeeritud mälutarbimist;
- Mooduli funktsioone on laiendatud , millel on nüüd tugi ja seosed;
- Maili nimekirja moodulis on paranenud postitusloendite määramine;
- Töövoogudes on lisatud võimalus saata põhiprotsessile töökorralduste heartbeat-sõnumeid, mis kinnitavad tavapärast töörežiimi. Kui selliseid sõnumeid ei ole teatud aja jooksul, võib põhiprotsess sundida tööprotsessi lõpetama. Vaikimisi on see režiim ajutiselt keelatud;
- Lisatud uus skaneerimise seeria keeles Lua. Näiteks on lisatud moodulid Kaspersky ScanEngine, Trend Micro IWSVA (icap'i kaudu) ja
F-Secure Internet Gatekeeper (icap'i kaudu) skaneerimiseks, samuti pakutakse väliseid skaneerijaid Razor, oletools ja P0F jaoks; - Lisatud võimalus muuta sõnumeid läbi Lua API. MIME-blokkide muutmiseks on pakutud moodulit ;
- Tagatud on eraldi seadete töötlemine, mis on määratud 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 keeruliste vastete (maps) salvestamise tugi. Rakendatud on toimetamine
HTTP keep-alive.
Allikas: opennet.ru
