aboutsummaryrefslogtreecommitdiffstats
path: root/conf
diff options
context:
space:
mode:
Diffstat (limited to 'conf')
-rw-r--r--conf/modules.d/gpt.conf6
-rw-r--r--conf/modules.d/ratelimit.conf4
-rw-r--r--conf/modules.d/rbl.conf22
-rw-r--r--conf/scores.d/policies_group.conf5
-rw-r--r--conf/scores.d/rbl_group.conf94
-rw-r--r--conf/statistic.conf1
6 files changed, 123 insertions, 9 deletions
diff --git a/conf/modules.d/gpt.conf b/conf/modules.d/gpt.conf
index 7a2e11d40..c76a08c92 100644
--- a/conf/modules.d/gpt.conf
+++ b/conf/modules.d/gpt.conf
@@ -18,13 +18,11 @@ gpt {
# Your key to access the API (add this to enable this plugin)
#api_key = "xxx";
# Model name
- model = "gpt-3.5-turbo";
+ model = "gpt-4o-mini";
# Maximum tokens to generate
max_tokens = 1000;
# Temperature for sampling
- temperature = 0.7;
- # Top p for sampling
- top_p = 0.9;
+ temperature = 0.0;
# Timeout for requests
timeout = 10s;
# Prompt for the model (use default if not set)
diff --git a/conf/modules.d/ratelimit.conf b/conf/modules.d/ratelimit.conf
index d1a91d3d0..e5df5be68 100644
--- a/conf/modules.d/ratelimit.conf
+++ b/conf/modules.d/ratelimit.conf
@@ -18,7 +18,7 @@ ratelimit {
#to = {
# bucket = {
# burst = 100;
- # rate = 0.01666666666666666666; # leak 1 message per minute
+ # rate = 0.01666666666666666666; # 1 message per minute
# }
#}
# or define it with selector
@@ -26,7 +26,7 @@ ratelimit {
# selector = 'rcpts:addr.take_n(5)';
# bucket = {
# burst = 100;
- # rate = "1 / 1m"; # leak 1 message per minute
+ # rate = "1 / 1m"; # 1 message per minute
# }
#}
#}
diff --git a/conf/modules.d/rbl.conf b/conf/modules.d/rbl.conf
index c3594dbc9..d8db05ecc 100644
--- a/conf/modules.d/rbl.conf
+++ b/conf/modules.d/rbl.conf
@@ -79,9 +79,29 @@ rbl {
}
senderscore {
- symbol = "RBL_SENDERSCORE";
+ symbol = "RBL_SENDERSCORE_UNKNOWN";
checks = ['from'];
rbl = "bl.score.senderscore.com";
+ returncodes {
+ RBL_SENDERSCORE_BOT = "127.0.0.1";
+ RBL_SENDERSCORE_NA = "127.0.0.2";
+ RBL_SENDERSCORE_NA_BOT = "127.0.0.3";
+ RBL_SENDERSCORE_PRST = "127.0.0.4";
+ RBL_SENDERSCORE_PRST_BOT = "127.0.0.5";
+ RBL_SENDERSCORE_PRST_NA = "127.0.0.6";
+ RBL_SENDERSCORE_PRST_NA_BOT = "127.0.0.7";
+ RBL_SENDERSCORE_SUS_ATT = "127.0.0.8";
+ RBL_SENDERSCORE_SUS_ATT_NA = "127.0.0.10";
+ RBL_SENDERSCORE_SUS_ATT_NA_BOT = "127.0.0.11";
+ RBL_SENDERSCORE_SUS_ATT_PRST_NA = "127.0.0.14";
+ RBL_SENDERSCORE_SUS_ATT_PRST_NA_BOT = "127.0.0.15";
+ RBL_SENDERSCORE_SCORE = "127.0.0.16";
+ RBL_SENDERSCORE_SCORE_NA = "127.0.0.18";
+ RBL_SENDERSCORE_SCORE_PRST = "127.0.0.20";
+ RBL_SENDERSCORE_SCORE_PRST_NA = "127.0.0.22";
+ RBL_SENDERSCORE_SCORE_SUS_ATT_NA = "127.0.0.26";
+ RBL_SENDERSCORE_BLOCKED = "127.255.255.255";
+ }
}
sem {
diff --git a/conf/scores.d/policies_group.conf b/conf/scores.d/policies_group.conf
index 4a8bdb6b7..712c61523 100644
--- a/conf/scores.d/policies_group.conf
+++ b/conf/scores.d/policies_group.conf
@@ -55,6 +55,11 @@ symbols = {
description = "SPF record is malformed or persistent DNS error";
groups = ["spf"];
}
+ "R_SPF_PLUSALL" {
+ weight = 4.0;
+ description = "SPF record allows to send from any IP";
+ groups = ["spf"];
+ }
# DKIM
"R_DKIM_REJECT" {
diff --git a/conf/scores.d/rbl_group.conf b/conf/scores.d/rbl_group.conf
index ef29ed2fa..741552a17 100644
--- a/conf/scores.d/rbl_group.conf
+++ b/conf/scores.d/rbl_group.conf
@@ -162,9 +162,99 @@ symbols = {
groups = ["spamhaus", "blocked"];
}
- "RBL_SENDERSCORE" {
+ "RBL_SENDERSCORE_UNKNOWN" {
+ weight = 0.0;
+ description = "Unrecognised result from SenderScore RPBL";
+ }
+ "RBL_SENDERSCORE_BOT" {
+ weight = 2.0;
+ description = "From address is listed in SenderScore RPBL - botnet";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_NA" {
+ weight = 0.0;
+ description = "From address is listed in SenderScore RPBL - noauth";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_NA_BOT" {
+ weight = 1.0;
+ description = "From address is listed in SenderScore RPBL - noauth+botnet";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_PRST" {
+ weight = 2.0;
+ description = "From address is listed in SenderScore RPBL - pristine";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_PRST_BOT" {
+ weight = 3.0;
+ description = "From address is listed in SenderScore RPBL - pristine+botnet";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_PRST_NA" {
weight = 2.0;
- description = "From address is listed in senderscore.com BL";
+ description = "From address is listed in SenderScore RPBL - pristine+noauth";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_PRST_NA_BOT" {
+ weight = 3.0;
+ description = "From address is listed in SenderScore RPBL - pristine+noauth+botnet";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_SUS_ATT" {
+ weight = 1.0;
+ description = "From address is listed in SenderScore RPBL - suspect_attachments";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_SUS_ATT_NA" {
+ weight = 1.0;
+ description = "From address is listed in SenderScore RPBL - suspect_attachments+noauth";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_SUS_ATT_NA_BOT" {
+ weight = 1.5;
+ description = "From address is listed in SenderScore RPBL - suspect_attachments+noauth+botnet";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_SUS_ATT_PRST_NA" {
+ weight = 3.0;
+ description = "From address is listed in SenderScore RPBL - suspect_attachments+pristine+noauth";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_SUS_ATT_PRST_NA_BOT" {
+ weight = 3.5;
+ description = "From address is listed in SenderScore RPBL - suspect_attachments+pristine+noauth+botnet";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_SCORE" {
+ weight = 2.0;
+ description = "From address is listed in SenderScore RPBL - sender_score";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_SCORE_NA" {
+ weight = 2.0;
+ description = "From address is listed in SenderScore RPBL - sender_score+noauth";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_SCORE_PRST" {
+ weight = 4.0;
+ description = "From address is listed in SenderScore RPBL - sender_score+pristine";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_SCORE_PRST_NA" {
+ weight = 4.0;
+ description = "From address is listed in SenderScore RPBL - sender_score+pristine+noauth";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_SCORE_SUS_ATT_NA" {
+ weight = 3.0;
+ description = "From address is listed in SenderScore RPBL - sender_score+suspect_attachments+noauth";
+ groups = ["senderscore"];
+ }
+ "RBL_SENDERSCORE_BLOCKED" {
+ weight = 0.0;
+ description = "Excessive number of queries to SenderScore RPBL, more info: https://knowledge.validity.com/hc/en-us/articles/20961730681243";
+ groups = ["senderscore", "blocked"];
}
"MAILSPIKE" {
diff --git a/conf/statistic.conf b/conf/statistic.conf
index 0ba8302e8..36d418935 100644
--- a/conf/statistic.conf
+++ b/conf/statistic.conf
@@ -19,6 +19,7 @@
# Module documentation: https://rspamd.com/doc/configuration/statistic.html
classifier "bayes" {
+ # name = "custom"; # 'name' parameter must be set if multiple classifiers are defined
tokenizer {
name = "osb";
}