]> git.ipfire.org Git - thirdparty/rspamd.git/commitdiff
feat: allow utilize own rspamd mirror via env variable
authorDmitriy Alekseev <1865999+dragoangel@users.noreply.github.com>
Sat, 14 Mar 2026 19:44:00 +0000 (20:44 +0100)
committerDmitriy Alekseev <1865999+dragoangel@users.noreply.github.com>
Sat, 14 Mar 2026 19:44:00 +0000 (20:44 +0100)
Signed-off-by: Dmitriy Alekseev <1865999+dragoangel@users.noreply.github.com>
conf/modules.d/known_senders.conf
conf/modules.d/mid.conf
conf/modules.d/mime_types.conf
conf/modules.d/multimap.conf
conf/modules.d/phishing.conf
conf/modules.d/rbl.conf
conf/modules.d/whitelist.conf
test/functional/configs/merged-local.conf

index 80b92390834d4da8621cd946169d34fc084ca17b..3083ba04f82107d06213c1314b6b407cecdf314d 100644 (file)
@@ -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)
index e214a715bb5dadf92224aa9a4c1a1757a7c04d4b..898709d0f79596c18962e9983e357fd90a944ccc 100644 (file)
@@ -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"
index 1f67595a7a386d23c4e7a226b7038728ed84e27c..21693fe032aa93588068513ac4457acb3d393b6d 100644 (file)
@@ -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"
index 0b43b6ca9a6be855ab0959c2ca949456eca17f4f..5d0d460fbfdc4e8f762108efc15a6d87d7ca7160 100644 (file)
@@ -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;
index 076f5964ff7c617c2cc30ddae16618cc93691a4c..4bf6ff0a06f68b0dbbd921a01772574c768db629 100644 (file)
@@ -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",
     ];
index 957c8196c79c60417da2d21b356f50f15f2f9dd5..2f78e7b2b28aabb3e376041db4765a8ecc68f0ee 100644 (file)
@@ -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 = [
     {
index 5fad4636bf9f9241a11eb314243323d7207c3932..8f33f4142149670cf91652228d6b6cb5050509d3 100644 (file)
@@ -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"
index fc96199ceced6e6519bb4ca6077f436d45485acd..9528a3e08e8c03826a9c120c616213cfa0a0eada 100644 (file)
@@ -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 {