a spam szűrési rendszer kiadása , amely eszközöket biztosít az üzenetek különböző kritériumok alapján történő értékelésére, beleértve a szabályokat, statisztikai módszereket és feketelista-ellenőrzéseket, amelyek alapján az üzenet végső súlyát képezik, amit a blokkolás döntésének meghozatalához használnak. A Rspamd szinte minden képességet támogat, amelyet a SpamAssassin valósított meg, és számos olyan sajátossággal rendelkezik, amelyek lehetővé teszik az e-mailek szűrését átlagosan 10-szer gyorsabban, mint a SpamAssassin, valamint jobb szűrési minőséget biztosítanak. A rendszer kódját C nyelven írták, és Apache 2.0 licenc alatt.
a Rspamd eseményalapú architektúrára (Event-driven) épül, és eredetileg nagy terhelésű rendszerekben való alkalmazásra tervezték, lehetővé téve e-mailek feldolgozását másodpercenként több száz üzenetig. A spam észlelésére szolgáló szabályok nagy rugalmassággal rendelkeznek, és a legegyszerűbb formájukban reguláris kifejezéseket tartalmazhatnak, míg bonyolultabb helyzetekben Lua nyelven is megfogalmazhatók. A funkcionalitás bővítése és új ellenőrzési típusok hozzáadása modulok révén történik, amelyeket C és Lua nyelveken lehet létrehozni. Például elérhetők SPF-alapú küldőellenőrző modulok, DKIM-alapú küldődomain megerősítése, DNSBL listákhoz való lekérdezések generálása. A beállítások, szabályok létrehozása és a statisztikák nyomon követése érdekében egy adminisztratív webes felület is rendelkezésre áll.
Főbb újítások:
- Megvalósult az új kiadási verziószám-séma bevezetése. Mivel az első szám a verziószámban már évek óta nem változott, és a második szám valójában a verzió indikátorának tekinthető, úgy döntöttek, hogy az «x.y.z» sémáról a «y.z» formátumra váltanak;
- az eseménykezelési ciklus érdekében helyett a , amely megszabadítja a libevent néhány korlátozásától, és lehetővé teszi a magasabb teljesítmény elérését. A
libev használata egyszerűsítette a kódot, javította a jel- és időtúllépés-kezelést, valamint egységesítette a fájlok változásának nyomon követését az inotify mechanizmus segítségével (nem minden, a támogatott platformokhoz kiadott libevent verzió működött az inotify-val); - A támogatás a mélytanulási Torch könyvtárat használó üzenetklasszifikáló modulhoz megszűnt. Az okok között a Torch túlzott bonyolultságát és a karbantartás nagy munkaigényét említik. A gépi tanulási módszerekkel történő klasszifikálás helyett egy teljesen újraírt modult javasoltak. , amelyben a neurális háló működésének biztosításához könyvtárat használnak. , amely mindössze 4000 sor C nyelvű kódot tartalmaz. Az új megvalósítás sok problémát megoldott, amelyek a kölcsönös blokkolások során merültek fel a tanulás alatt;
- Modul helyettesítette a SURBL és Emails modulokat, amely lehetővé tette az összes fekete lista ellenőrzésének egységesítését. Az RBL képességei kibővültek további típusok, például a szelektorok támogatásával, és egyszerűsített rendszerekkel a meglévő szabályok bővítésére. Az email blokkolási szabályok, amelyek map-listákon alapulnak a DNS RBL helyett már nem támogatottak, helyettük a szelektorokkal ellátott multimap használatát ajánlják;
- Az állományok típusainak meghatározásához új Lua Magic könyvtárat használnak, amely Lua-t és Hyperscan-t alkalmaz a libmagic helyett.
A saját könyvtár létrehozásának okaként a magasabb teljesítmény elérésének, a docx fájlok azonosításakor fellépő hibák megszüntetésének, egy megfelelőbb API megszerzésének és új heurisztikák hozzáadásának vágyát említik, amelyek nem korlátozódnak szigorú szabályokra; - Fejlesztették az adatkezelő modult a DBMS-ben. Hozzáadták a LowCardinality mezőket, és lényegesen optimalizálták a memóriafogyasztást;
- A modul lehetőségei kibővültek , amelyben megjelent a támogatás és társításokhoz;
- A Maillist modulban javították a levelezőlisták azonosítását;
- A munkafolyamatokban lehetőség nyílt a főfolyamatnak olyan heartbeat üzenetek küldésére, amelyek igazolják a normál működést. Ha ilyen üzenetek egy bizonyos ideig nem érkeznek be, a főfolyamat kényszerítheti a munkafolyamat befejezését. Alapértelmezés szerint ez a mód egyelőre ki van kapcsolva;
- Új Lua nyelvű ellenőrzők sorozata került hozzáadásra. Például modulok kerültek bevezetésre a Kaspersky ScanEngine, a Trend Micro IWSVA (icap-en keresztül) és
a F-Secure Internet Gatekeeper (icap-en keresztül) üzeneteinek ellenőrzésére, valamint külső ellenőrök ajánlottak a Razor, oletools és P0F számára; - Hozzáadva a lehetőség, hogy a Lua API-n keresztül módosítsuk az üzeneteket. A MIME-blokkok módosítására egy modult javasoltak. ;
- Biztosítva lett a beállítások külön kezelése, amelyeket a „Settings-Id:” segítségével állítottak be; például most már csak bizonyos beállítási azonosítókhoz lehet szabályokat kötni.
- Teljesítményoptimalizációt végeztek a Lua motorban, a base64 dekódolásában és a szöveg nyelvének meghatározásában. Hozzáadva a komplex leképezések (maps) caching támogatása.
HTTP keep-alive támogatás.
Forrás: opennet.ru
