From: Dmitriy Alekseev <1865999+dragoangel@users.noreply.github.com> Date: Sat, 14 Mar 2026 19:44:00 +0000 (+0100) Subject: feat: allow utilize own rspamd mirror via env variable X-Git-Tag: 4.0.0~39^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=688d9b762e6dcfad1d032cbd421dbcc8076b77c4;p=thirdparty%2Frspamd.git feat: allow utilize own rspamd mirror via env variable Signed-off-by: Dmitriy Alekseev <1865999+dragoangel@users.noreply.github.com> --- diff --git a/conf/modules.d/known_senders.conf b/conf/modules.d/known_senders.conf index 80b9239083..3083ba04f8 100644 --- a/conf/modules.d/known_senders.conf +++ b/conf/modules.d/known_senders.conf @@ -17,7 +17,7 @@ known_senders { enabled = false; # Domains to track senders - domains = "https://maps.rspamd.com/freemail/free.txt.zst"; + domains = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/free.txt.zst"; # Maximum number of elements max_senders = 100000; # Maximum time to live (when not using bloom filters) diff --git a/conf/modules.d/mid.conf b/conf/modules.d/mid.conf index e214a715bb..898709d0f7 100644 --- a/conf/modules.d/mid.conf +++ b/conf/modules.d/mid.conf @@ -15,7 +15,7 @@ mid = { source = { url = [ - "https://maps.rspamd.com/rspamd/mid.inc.zst", + "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/rspamd/mid.inc.zst", "$LOCAL_CONFDIR/local.d/maps.d/mid.inc", "$LOCAL_CONFDIR/local.d/mid.inc", "fallback+file://${CONFDIR}/maps.d/mid.inc" diff --git a/conf/modules.d/mime_types.conf b/conf/modules.d/mime_types.conf index 1f67595a7a..21693fe032 100644 --- a/conf/modules.d/mime_types.conf +++ b/conf/modules.d/mime_types.conf @@ -14,7 +14,7 @@ mime_types { file = [ - "https://maps.rspamd.com/rspamd/mime_types.inc.zst", + "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/rspamd/mime_types.inc.zst", "$LOCAL_CONFDIR/local.d/maps.d/mime_types.inc.local", "${DBDIR}/mime_types.inc.local", "fallback+file://${CONFDIR}/maps.d/mime_types.inc" diff --git a/conf/modules.d/multimap.conf b/conf/modules.d/multimap.conf index 0b43b6ca9a..5d0d460fbf 100644 --- a/conf/modules.d/multimap.conf +++ b/conf/modules.d/multimap.conf @@ -16,7 +16,7 @@ multimap { redirector { type = "url"; filter = "tld"; - map = "https://maps.rspamd.com/rspamd/redirectors.inc.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/rspamd/redirectors.inc.zst"; symbol = "REDIRECTOR_URL"; description = "The presence of a redirector in the mail"; score = 0.0; @@ -27,7 +27,7 @@ multimap { freemail_envfrom { type = "from"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/free.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/free.txt.zst"; symbol = "FREEMAIL_ENVFROM"; description = "Envelope From is a Freemail address"; score = 0.0; @@ -36,7 +36,7 @@ multimap { freemail_envrcpt { type = "rcpt"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/free.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/free.txt.zst"; symbol = "FREEMAIL_ENVRCPT"; description = "Envelope Recipient is a Freemail address"; score = 0.0; @@ -47,7 +47,7 @@ multimap { type = "header"; header = "from"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/free.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/free.txt.zst"; symbol = "FREEMAIL_FROM"; description = "From is a Freemail address"; score = 0.0; @@ -57,7 +57,7 @@ multimap { type = "header"; header = "To"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/free.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/free.txt.zst"; symbol = "FREEMAIL_TO"; description = "To is a Freemail address"; score = 0.0; @@ -68,7 +68,7 @@ multimap { type = "header"; header = "Cc"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/free.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/free.txt.zst"; symbol = "FREEMAIL_CC"; description = "To is a Freemail address"; score = 0.0; @@ -79,7 +79,7 @@ multimap { type = "header"; header = "Reply-To"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/free.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/free.txt.zst"; symbol = "FREEMAIL_REPLYTO"; description = "Reply-To is a Freemail address"; score = 0.0; @@ -89,7 +89,7 @@ multimap { type = "header"; header = "Disposition-Notification-To"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/free.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/free.txt.zst"; symbol = "FREEMAIL_MDN"; description = "Disposition-Notification-To is a Freemail address"; score = 0.0; @@ -99,7 +99,7 @@ multimap { disposable_envfrom { type = "from"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/disposable.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/disposable.txt.zst"; symbol = "DISPOSABLE_ENVFROM"; description = "Envelope From is a Disposable e-mail address"; score = 0.0; @@ -108,7 +108,7 @@ multimap { disposable_envrcpt { type = "rcpt"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/disposable.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/disposable.txt.zst"; symbol = "DISPOSABLE_ENVRCPT"; description = "Envelope Recipient is a Disposable e-mail address"; score = 0.0; @@ -119,7 +119,7 @@ multimap { type = "header"; header = "from"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/disposable.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/disposable.txt.zst"; symbol = "DISPOSABLE_FROM"; description = "From a Disposable e-mail address"; score = 0.0; @@ -129,7 +129,7 @@ multimap { type = "header"; header = "To"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/disposable.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/disposable.txt.zst"; symbol = "DISPOSABLE_TO"; description = "To a disposable e-mail address"; score = 0.0; @@ -140,7 +140,7 @@ multimap { type = "header"; header = "Cc"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/disposable.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/disposable.txt.zst"; symbol = "DISPOSABLE_CC"; description = "To a disposable e-mail address"; score = 0.0; @@ -151,7 +151,7 @@ multimap { type = "header"; header = "Reply-To"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/disposable.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/disposable.txt.zst"; symbol = "DISPOSABLE_REPLYTO"; description = "Reply-To a disposable e-mail address"; score = 0.0; @@ -161,7 +161,7 @@ multimap { type = "header"; header = "Disposition-Notification-To"; filter = "email:domain"; - map = "https://maps.rspamd.com/freemail/disposable.txt.zst"; + map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/freemail/disposable.txt.zst"; symbol = "DISPOSABLE_MDN"; description = "Disposition-Notification-To is a disposable e-mail address"; score = 0.5; diff --git a/conf/modules.d/phishing.conf b/conf/modules.d/phishing.conf index 076f5964ff..4bf6ff0a06 100644 --- a/conf/modules.d/phishing.conf +++ b/conf/modules.d/phishing.conf @@ -30,13 +30,13 @@ phishing { # Make exclusions for known redirectors and domains exceptions = { REDIRECTOR_FALSE = [ - "https://maps.rspamd.com/rspamd/redirectors.inc.zst", + "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/rspamd/redirectors.inc.zst", "$LOCAL_CONFDIR/local.d/maps.d/redirectors.inc", "$LOCAL_CONFDIR/local.d/redirectors.inc", "fallback+file://${CONFDIR}/maps.d/redirectors.inc" ]; PHISHED_WHITELISTED = [ - "glob;https://maps.rspamd.com/rspamd/phishing_whitelist.inc.zst", + "glob;{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/rspamd/phishing_whitelist.inc.zst", "glob;$LOCAL_CONFDIR/local.d/maps.d/phishing_whitelist.inc", "glob;$LOCAL_CONFDIR/local.d/phishing_whitelist.inc", ]; diff --git a/conf/modules.d/rbl.conf b/conf/modules.d/rbl.conf index 957c8196c7..2f78e7b2b2 100644 --- a/conf/modules.d/rbl.conf +++ b/conf/modules.d/rbl.conf @@ -17,13 +17,13 @@ rbl { default_unknown = true; url_whitelist = [ - "https://maps.rspamd.com/rspamd/surbl-whitelist.inc.zst", + "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/rspamd/surbl-whitelist.inc.zst", "$LOCAL_CONFDIR/local.d/maps.d/surbl-whitelist.inc.local", "${DBDIR}/surbl-whitelist.inc.local", "fallback+file://${CONFDIR}/maps.d/surbl-whitelist.inc" ]; - disabled_rbl_suffixes_map = "https://maps.rspamd.com/rspamd/disabled_rbls.inc.zst"; + disabled_rbl_suffixes_map = "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/rspamd/disabled_rbls.inc.zst"; attached_maps = [ { diff --git a/conf/modules.d/whitelist.conf b/conf/modules.d/whitelist.conf index 5fad4636bf..8f33f41421 100644 --- a/conf/modules.d/whitelist.conf +++ b/conf/modules.d/whitelist.conf @@ -39,7 +39,7 @@ whitelist { valid_spf = true; valid_dkim = true; domains = [ - "https://maps.rspamd.com/rspamd/spf_dkim_whitelist.inc.zst", + "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/rspamd/spf_dkim_whitelist.inc.zst", "$LOCAL_CONFDIR/local.d/maps.d/spf_dkim_whitelist.inc.local", "${DBDIR}/spf_dkim_whitelist.inc.local", "fallback+file://${CONFDIR}/maps.d/spf_dkim_whitelist.inc" @@ -50,7 +50,7 @@ whitelist { "WHITELIST_DMARC" = { valid_dmarc = true; domains = [ - "https://maps.rspamd.com/rspamd/dmarc_whitelist_new.inc.zst", + "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/rspamd/dmarc_whitelist_new.inc.zst", "$LOCAL_CONFDIR/local.d/maps.d/dmarc_whitelist.inc.local", "${DBDIR}/dmarc_whitelist.inc.local", "fallback+file://${CONFDIR}/maps.d/dmarc_whitelist.inc" diff --git a/test/functional/configs/merged-local.conf b/test/functional/configs/merged-local.conf index fc96199cec..9528a3e08e 100644 --- a/test/functional/configs/merged-local.conf +++ b/test/functional/configs/merged-local.conf @@ -109,7 +109,7 @@ multimap { mid = { source = { url = [ - "https://maps.rspamd.com/rspamd/mid.inc.zst", + "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/rspamd/mid.inc.zst", "fallback+file://{= env.TESTDIR =}/../../../conf/mid.inc", "file://{= env.TESTDIR =}/configs/maps/mid.list" ]; @@ -118,7 +118,7 @@ mid = { mime_types { file = [ - "https://maps.rspamd.com/rspamd/mime_types.inc.zst", + "{= env.MAPS_MIRROR | default "https://maps.rspamd.com" =}/rspamd/mime_types.inc.zst", "fallback+file://{= env.TESTDIR =}/../../../conf/mime_types.inc" ]; extension_map {