Rapid spam filtering system https://rspamd.com/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Vsevolod Stakhov 824b6ebacf
[Fix] Copy all install directories to proper system locations in Dockerfile
23 hours ago
.claude [Project] Add Claude Code and Cursor AI assistant configuration 2 weeks ago
.cursor/rules Merge branch 'master' into vstakhov-aliases-rewamp 2 weeks ago
.github [Test] Use locally built Rspamd in integration tests instead of prebuilt image 1 day ago
clang-plugin [Rework] Further types conversion (no functional changes) 2 years ago
cmake [Feature] Add ED25519 support for DKIM signing with OpenSSL version checks 3 weeks ago
conf Merge branch 'master' into vstakhov-fuzzy-tcp-rework 2 weeks ago
contrib [Fix] Use C++20 standard consistently to resolve ODR violations 2 months ago
debian [Minor] Fix Debian package build 5 months ago
doc Modify rspamc doc to clarify that control password can also be passed by path 5 months ago
docker [Minor] Replace Dockerfile with advertisement for image 2 years ago
freebsd [Fix] remove obsolete rspamd-redirector files 3 years ago
interface [Minor] Update CodeJar to version 4.3.0 1 week ago
lualib Merge pull request #5679 from fatalbanana/bayes_autolearn_localauth 6 days ago
rpm [Minor] Further RPM changes for EL10 2 months ago
rules Merge branch 'master' into vstakhov-html-fuzzy 2 weeks ago
src [Fix] Fix critical TCP fuzzy protocol bugs 1 day ago
test [Fix] Copy all install directories to proper system locations in Dockerfile 23 hours ago
utils [Minor] Tidy utils/fuzzy_redis_migrate.pl 3 days ago
.clang-format [Rework] Use clang-format to unify formatting in all sources 2 years ago
.gitignore [Test] Use actions/setup-node 1 year ago
.luacheckrc [Project] Add classify redis script 2 years ago
.overcommit.yml [Fix] Use a more straightforward approach for learn cache 3 months ago
.stylelintrc.json [Test] Remove deprecated Stylelint rule 2 years ago
.tidyallrc [Minor] Remove tidy checks as they are crap 6 years ago
AUTHORS.md Update AUTHORS.md 7 months ago
CMakeLists.txt [Minor] Update version of rspamd to 3.13.3 3 weeks ago
CONTRIBUTING.md [Minor] Some neats 2 years ago
ChangeLog Release 3.13.2 3 weeks ago
LICENSE.md [Minor] Proper license format 7 years ago
README.md Merge pull request #5000 from spithash/patch-1 1 year ago
blas-config.h.in [Feature] Support BLIS blas library 5 years ago
config.h.in [Feature] Add ED25519 support for DKIM signing with OpenSSL version checks 3 weeks ago
dist.sh [Minor] Simplify creation of dist tarball that is reproducible 6 years ago
eslint.config.mjs [Test] Update JS linters 2 weeks ago
lua_style.md Spelling (#4086) 4 years ago
package-lock.json [Test] Update JS linters 2 weeks ago
package.json [Test] Update JS linters 2 weeks ago
rspamd.service [Minor] Require network-online target as well 8 years ago
set-version.sh [Minor] Update Debian and RPM package versions 6 years ago

README.md

Rspamd

GHA

Introduction

Rspamd is an advanced spam filtering system and email processing framework that allows evaluation of messages by a number of rules including regular expressions, statistical analysis and custom services such as URL black lists. Each message is analysed by Rspamd and given a verdict that might be used by MTA for further processing (e.g. to reject a message, or add a special header indicating spam) along with other information, such as possible DKIM signature or modifications suggested for a message.

Rspamd can act as a Milter allowing direct interaction with popular MTA systems, such as Postfix or Sendmail.

Rspamd is designed to process hundreds of messages per second simultaneously, and provides a number of useful features including a comprehensive Lua API that allows access to messages processing in various aspects as well as asynchronous network API to access external resources, such as DNS, HTTP or even generic TCP/UDP services.

Getting Started

A good starting point to study how to install and configure Rspamd is the quick start guide.

Rspamd is packaged for the major Linux distributions, and is also available via FreeBSD ports, NetBSD pkgsrc and OpenBSD ports.

We advice to use packages provided by Rspamd project if available for your OS instead of packages that might be provided by some Linux distributives, as they are usually out of date and does not provide the desired spam filtering quality nor supported by Rspamd project.

Spam filtering features

Rspamd is shipped with various spam filtering modules and features enabled just out of the box. The full list of built-in modules could be found in the Rspamd documentation.

If that is not enough, Rspamd provides an extensive Lua API to write your own rules and plugins: https://rspamd.com/doc/developers/writing_rules.html

License

This project is licensed under the Apache 2.0 License - see the LICENSE.md file for details

Contributing

Please read CONTRIBUTING.md for details on the process for submitting pull requests to us.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in rspamd by you, as defined in the APACHE 2.0 license, shall be licensed as above, without any additional terms or conditions.

Authors

See also the list of contributors who participated in this project.

References