udgivelse af spamfilter systemet , der giver middel til at vurdere meddelelser efter forskellige kriterier, herunder regler, statistiske metoder og sortlister, baseret på hvilke den endelige vægt af meddelelsen dannes, der bruges til at træffe beslutning om nødvendigheden af blokering. Rspamd understøtter stort set alle funktioner implementeret i SpamAssassin og har en række funktioner, der muliggør filtrering af e-mail i gennemsnit 10 gange hurtigere end SpamAssassin, samt sikrer bedre filtreringskvalitet. Koden til systemet er skrevet i C og er under Apache 2.0-licensen.
Rspamd er bygget med en hændelsesdrevet arkitektur og er oprindeligt designet til brug i højbelastede systemer, hvilket muliggør behandling af hundreder af meddelelser pr. sekund. Reglerne for identificering af spamtegn er meget fleksible og kan i den enkleste form indeholde regulære udtryk, mens de i mere komplekse situationer kan formuleres på Lua-sprog. Udvidelse af funktionaliteten og tilføjelse af nye typer kontroller realiseres gennem moduler, der kan oprettes på C og Lua. For eksempel er der moduler til kontrol af afsenderen ved hjælp af SPF, bekræftelse af afsenderens domæne via DKIM, og dannelse af forespørgsler i DNSBL-lister. For at forenkle konfigurationen, oprettelsen af regler og overvågning af statistik tilbydes et administrativt web-interface.
Hovednyhederne:
- Der er sket en overgang til et nyt versionsnummer system. Da det første tal i versionsnummeret ikke har ændret sig i flere år, og det andet tal fungerer som en reel indikator for versionen, er det besluttet at gå fra formatet «x.y.z» til formatet «y.z»;
- Til hændelsesbehandlingssløjfen i stedet for er bibliotektet , der er blevet befriet for nogle begrænsninger fra libevent og tillader højere ydeevne. Brug af
libev har gjort det muligt at forenkle koden, forbedre signal- og tidsgrænsebehandlingen samt standardisere overvågningen af filændringer ved hjælp af inotify-mekanismen (ikke alle versioner af libevent for understøttede platforme kunne arbejde med inotify); - Støtten til modul til klassificering af beskeder, der bruger dyb læring biblioteket Torch, er blevet ophørt. Årsagen nævnes som den unødvendige kompleksitet af Torch og den store arbejdsbyrde ved at holde det opdateret. Som erstatning for klassificering ved hjælp af maskinlæring foreslås et helt omskrevet modul. , hvori biblioteket bruges til at sikre driften af det neurale netværk. , som kun består af 4000 linjer kode i C. I den nye implementering er mange problemer med deadlocks under træning blevet løst;
- Module har erstattet modulerne SURBL og Emails, hvilket har gjort det muligt at ensarte behandlingen af alle kontroller mod svartelister. RBL's muligheder er udvidet med støtte til yderligere typer, såsom vælgere, og værktøjer til at forenkle udvidelsen af eksisterende regler. E-mail blokkeringsregler baseret på map-lister er ikke længere understøttet; i stedet anbefales det at bruge multimap med vælgere.
- For at bestemme filtyper ud fra indholdet anvendes et nyt Lua Magic bibliotek, der bruger Lua og Hyperscan i stedet for libmagic.
Årsagen til at skabe et eget bibliotek nævnes som ønsket om at opnå højere ydeevne, undgå fejl ved identifikation af docx-filer, få et mere passende API og tilføje nye former for heuristikker, der ikke er begrænset af strenge regler; - Modulet til datalagring i databasesystemet . Felterne LowCardinality er tilføjet, og hukommelsesforbruget er væsentligt optimeret;
- Mulighederne for modulet , der nu har støtte til og sammenligninger;
- I Maillist-modulet er definitionen af mailinglister forbedret;
- I arbejdsprocesserne er muligheden for at sende heartbeat-beskeder til hovedprocessen tilføjet, hvilket bekræfter drift i normal tilstand. I fravær af sådanne beskeder i en given periode kan hovedprocessen tvinge arbejdsprocessen til at afslutte. Som standard er denne funktion endnu ikke aktiveret;
- En række nye scannere i Lua-sproget er blevet tilføjet. Eksempelvis er moduler til scanning af beskeder i antiviruspakkerne Kaspersky ScanEngine, Trend Micro IWSVA (via icap) og
F-Secure Internet Gatekeeper (via icap) blevet tilføjet, ligesom eksterne scannere for Razor, oletools og P0F er blevet tilbudt; - Muligheden for at ændre beskeder via Lua API er blevet tilføjet. Der er foreslået en modul til at foretage ændringer i MIME-blokke. ;
- Der er sikret separat håndtering af indstillinger, der er fastsat gennem «Settings-Id:», for eksempel kan regler nu kun knyttes til bestemte indstillinger;
- Der er foretaget optimeringer af ydeevnen i Lua-motoren, base64-dekodning og sprogdetektion for tekst. Støtte til caching af komplekse kortlægninger (maps) er blevet tilføjet. Implementeret støtte for
HTTP keep-alive.
Kilde: opennet.ru
