Rspamd
| Rspamd | |
|---|---|
| Original author | Vsevolod Stakhov |
| Developers | Vsevolod Stakhov, Alexander Moisseev, Andrew Lewis |
| Initial release | May 8, 2008 |
| Stable release | 3.13.2[1] |
| Repository | |
| Written in | C, C++, Lua |
| Operating system | GNU/Linux, BSD |
| Type | Spam filter |
| License | Apache License 2.0 |
| Website | rspamd |
Rspamd is a spam filter for use with mail servers. Released in 2008 under the Apache License, this free software offers a wide range of functions and a fail-safe, clusterable architecture.
History
[edit]Rspamd was founded in May 2008 by Vsevolod Stakhov, who was dissatisfied with SpamAssassin, written in Perl, due to its excessive runtime and resource consumption.[2] Stakhov wrote initially a speed-optimised parser for SpamAssassin rules in C. The first release, version 0.2.7, followed in 2009. In 2015, Stakhov was hired by a provider and devoted himself full-time to further development, expanding the open-source tool with a variety of modules and approaches.[3][4] Version 1.0.0 was released in September of the same year.[5] Rspamd replaced Amavis in many places from 2016 onwards[6] and has been in use at mailbox since 2018, for example. Version 2.0.0 followed in October 2019[7] and 3.0.0 in October 2021.[8] Stakhov founded Rspamd Ltd, based in Cambridge, where he has been employed since December 2023 and is primarily responsible for further development,[9][10] with the core gradually being migrated to C++.[11]
The software is part of the official repositories of Linux distributions such as Debian, Ubuntu, CentOS and others.[12] Email and groupware solutions integrate Rspamd, such as Zimbra,[13] Mailu[14] and Mailcow.[15]
Functionality
[edit]
Rspamd evaluates emails using a series of rules, such as regular expressions, statistical analyses or other services. Based on the analysis, the message is assigned symbols and scores and, if certain thresholds are reached, is marked as spam, is greylisted or rejected, for example.[16] While the core and internal modules are written in C and C++, external modules are implemented in Lua. Rspamd uses an event-driven architecture.[17] An important component are dynamic data sources such as allow- or denylist of all kinds.[18] Custom rules can be written as regular expressions and/or as Lua code.[19] Rspamd uses Redis as its cache[20] and offers cluster capability for monitoring as well as a web interface.
Rspamd connects to mail transfer agents such as Postfix or Exim via the Milter interface or HTTP-REST.[21] Additional services can be integrated via modules, such as virus scanners (ClamAV, Kaspersky, VirusTotal and others), blackhole lists, DCC, Razor or ChatGPT. Common authenticity protocols such as SPF, DKIM, ARC, DMARC and Authentication-Results are also supported. In addition to the native parser for SpamAssassin rules, it is also possible to access the SpamAssassin process directly.
In addition to a Bayesian spam filter based on Markov chains,[2] which is trained automatically[22] or by users using Sieve,[23] a neural network can also be trained. Rspamd uses fuzzy hashing to recognise recurring patterns.[24]
Literature
[edit]- Deimeke, Dirk; Kania, Stefan; von Soest, Daniel; Heinlein, Peer; Miesen, Axel (2021). "Anti-Spam/Anti-Virus mit Rspamd". Linux-Server: Das umfassende Handbuch (in German) (6., aktualisierte Auflage ed.). Bonn: Rheinwerk Computing. p. 344-367. ISBN 978-3-8362-8088-4.
References
[edit]- ^ rspamd. "Release Rspamd 3.13.2 · rspamd/rspamd". Retrieved 7 October 2025.
- ^ a b Stakhov, Vsevolod (2016-01-30). "Rspamd - fast opensource spam filter". FOSDEM. Retrieved 2025-09-27. Recording, a at 0:40-0:60, b at 16:15
- ^ Rosenberg, Carsten (2025-04-26). "Open Source Mail-Security mit Rspamd" (in German). Grazer Linuxtage. Retrieved 2025-08-22. at 08:50
- ^ Hollants, Pieter (2018). "rspamd aus der Perspektive des Hobbyadmins" (in German). FrOSCon. Retrieved 2025-09-27. at 10:40
- ^ Deimeke, Dirk; Kania, Stefan; von Soest, Daniel; Heinlein, Peer; Miesen, Axel (2021). Linux-Server: Das umfassende Handbuch (in German) (6., aktualisierte Auflage ed.). Bonn: Rheinwerk Computing. p. 344. ISBN 978-3-8362-8088-4.
- ^ "Rspamd 2.0 has been released". lists.rspamd.com. Retrieved 2025-09-27.
- ^ "Rspamd 3.0". Github. Retrieved 2025-09-27.
- ^ Rosenberg, Carsten; Zurmuehl, Manu (2024). "Enterprise Mail-Security mit Open-Source? Rspamd - Mail-Security-Framework" (in German). FrOSCon. Retrieved 2025-09-27. at 41:14
- ^ "Vsevolod Stakhov". LinkedIn. Retrieved 2025-09-28.
- ^ Stakhov, Vsevolod (2024-02-04). "[Operations] Rspamd's 15-Year Odyssey: From Hobby to Open Source Impact". FOSDEM. Retrieved 2025-09-30. at 11:50
- ^ Deimeke, Dirk; Kania, Stefan; von Soest, Daniel; Heinlein, Peer; Miesen, Axel (2021). Linux-Server: Das umfassende Handbuch (in German) (6., aktualisierte Auflage ed.). Bonn: Rheinwerk Computing. p. 346. ISBN 978-3-8362-8088-4.
- ^ "RSPAMD - Fast, free and open-source spam filtering system". Retrieved 2025-08-22.
- ^ Förster, Moritz (2023-04-05). "E-Mail-Server im Eigenbetrieb: Mailu 2.0 jetzt auch für den Raspberry Pi" (in German). iX. Retrieved 2025-08-22.
- ^ Mahn, Jan (2021-04-23). "Mailcow: Mailserver einrichten und Spam-arm betreiben" (in German). c't. Retrieved 2025-08-22.
- ^ "Documentation". docs.rspamd.com. Retrieved 2025-09-25.
- ^ "Rspamd architecture". docs.rspamd.com. Retrieved 2025-09-25.
- ^ "Rspamd Maps: A Comprehensive Guide". docs.rspamd.com. Retrieved 2025-09-25.
- ^ "Rule Writing Workshop". docs.rspamd.com. Retrieved 2025-09-25.
- ^ "Redis configuration for Rspamd". docs.rspamd.com. Retrieved 2025-09-25.
- ^ "MTA integration". docs.rspamd.com. Retrieved 2025-09-25.
- ^ "Rspamd statistic settings". docs.rspamd.com. Retrieved 2025-09-25.
- ^ "Getting feedback from users with IMAPSieve". docs.rspamd.com. Retrieved 2025-09-25.
- ^ "Usage of fuzzy hashes". docs.rspamd.com. Retrieved 2025-09-25.