For rspamd you can define symbols/multimap to trigget on specific mail headers.
By giving a small score (1.5) you don't block everything from groups.
Adding a bad domains list helps to further define what the groups headers actually are. Good groups or bad groups.
Then use the combination to block groups spam from specific domains.
# /etc/rspamd/local.d/multimap.conf
Code:
GOOGLE_GROUPS_LIST {
type = "content";
filter = "headers";
map = "/etc/rspamd/maps.d/google_groups_headers.map";
regexp = true;
score = 1.5;
description = "Mail has Google Groups / mailing-list headers";
}
ABUSE_SENDER_DOMAIN {
type = "from";
filter = "email:domain";
map = "/etc/rspamd/maps.d/abuse_sender_domains.map";
score = 6.0;
description = "Known abuse sender domain";
}
Next you add the headers to check:
/etc/rspamd/maps.d/google_groups_headers.map
Code:
/^X-Google-Group-Id:/i
/^List-Help:/i
/^List-Subscribe:/i
/^List-Unsubscribe:/i
/^X-Original-Sender:/i
And a list of bad domains:
/etc/rspamd/maps.d/abuse_sender_domains.map
Code:
capturesoul.com
deyan365.com
... etc ...
Next you hit the combo harder:
# /etc/rspamd/local.d/composites.conf
Code:
GOOGLE_GROUPS_ABUSE {
expression = "GOOGLE_GROUPS_LIST & ABUSE_SENDER_DOMAIN";
score = 12.0;
description = "Google Groups mail combined with known abuse source";
}
P.S. I'm very good in typo's and not so much in documenting.