Skip to main content

Directadmin

Verbeter de prestaties en beveiliging van uw webserver

HOW-TO: Afzender-TLD’s blokkeren met Rspamd

Deze handleiding beschrijft hoe je ongewenste e-mails structureel blokkeert op basis van de domeinextensie (TLD) van de afzender, via Rspamd Multimap.
De blokkade gebeurt zo vroeg mogelijk tijdens de SMTP-fase.

Overzicht
  • Blokkade op basis van afzenderdomein (.ru, .cn, .se, etc.)
  • Controle op zowel SMTP envelope-from als From:-header
  • Optionele extra blokkade via Reply-To domein (bijv. Moneybird-achtige afzenders)
  • Directe SMTP reject waar mogelijk (geen aflevering, geen verdere verwerking)
  • Geen Exim-ACL’s nodig
  • Upgrade-veilig voor DirectAdmin
  • Herkenbare foutcodes per regel (5.7.0, 5.7.1, 5.7.2)
Optioneel: DirectAdmin blokkadelijsten (Exim)

DirectAdmin kan ook blokkades toepassen via Exim-lijsten. Dit is een alternatief of aanvulling op Rspamd. Let op: deze methode werkt anders dan Rspamd (minder flexibel met regex en headers zoals Reply-To).

Belangrijk:
Gebruik bij voorkeur Rspamd als je op headers (zoals Reply-To) wilt filteren. De DirectAdmin lijsten zijn vooral handig voor eenvoudige blokkades op domein, afzender of host/IP.

Bestanden die je vaak tegenkomt:

/etc/virtual/blacklist_domains
/etc/virtual/blacklist_senders
/etc/virtual/bad_sender_hosts
/etc/virtual/bad_sender_hosts_ip

Voorbeeld: domein blokkeren (meestal 1 per regel):

nano /etc/virtual/blacklist_domains
caroptions.nl
inkoopautoworks.com
autoinkoopdirect.com
gmx.com
slimster.nl
energreen.com
advancedigitalweb.com
zjmisgnucctesenuy.com
edmbusinessgoods.com
uniquemax.net
topautobedrijf.com
bedrijfswagenfleet.com
promotrades.nl
sunnicer.help
graspstaging.com
bedrijfswagenzone.com
inkoopautohub.com
treinatec.com
velkimasteragent.com
chescoperta.it
oceanoinformato.it

Voorbeeld: afzender blokkeren (meestal volledig adres):

nano /etc/virtual/blacklist_senders
info@caroptions.nl
info-caroptions@deliver.moneybird.com
administratie@hetnet.nl
rijksdienst.ondernemend@planet.nl
rvo@kpnmail.nl
eherkenningsupport@kpnmail.nl
rashisharma64@hotmail.com
lukas.seo05@outlook.com
rvo@xs4all.nl
rijksdienst.ondernemend@kpnmail.nl
overheid@kpnmail.nl
krutikasharma1@outlook.com
Stap 1 - TLD-regex map aanmaken

Maak een regex-bestand aan met de TLD’s die je wilt blokkeren:

nano /etc/rspamd/local.d/maps/bad_tlds.re

\.(ru|cn|su|kp|xyz|top|icu|work|gr|es|se|tr|watch|ru|company|onl|id|store|jp|store|pro|fr|it)$

Voeg extra extensies toe door ze te scheiden met een | (pipe).

Stap 2 - Optioneel: Reply-To domeinen blokkeren

Als je een specifieke Reply-To wilt blokkeren (bijv. bij leveranciers die via een platform mailen), maak dan een map-bestand aan:

nano /etc/rspamd/local.d/maps/bad_replyto_domains.re

@caroptions\.nl$

Tip: zet hier alleen domeinen in die je echt wilt blokkeren, omdat Reply-To soms bewust afwijkt van de verzendende partij.

Stap 3 - Multimap-regels configureren

Open of maak het multimap-configuratiebestand aan:

nano /etc/rspamd/local.d/multimap.conf

Voeg de volgende regels toe:

# Reject op basis van SMTP envelope-from domein (MAIL FROM)
BAD_TLD_ENVFROM {
  type = "from";
  extract_from = "smtp";
  filter = "email:domain";
  map = "regexp;/etc/rspamd/local.d/maps/bad_tlds.re";

  prefilter = true;
  action = "reject";
  message = "550 5.7.1 Delivery rejected: sender domain extension is blocked by policy. Please use a different email provider or contact us via our website.";
}

# Optioneel: ook reject op basis van From:-header domein (zichtbare afzender)
BAD_TLD_FROMHDR {
  type = "from";
  extract_from = "mime";
  filter = "email:domain";
  map = "regexp;/etc/rspamd/local.d/maps/bad_tlds.re";

  prefilter = true;
  action = "reject";
  message = "550 5.7.0 Delivery rejected: sender identity violates local policy. Please use a different email provider or contact us via our website.";
}

# Reject mails met Moneybird-achtige afzender die Reply-To naar een geblokkeerd domein zetten
BAD_REPLYTO_CAROPTIONS {
  type = "header";
  header = "Reply-To";
  filter = "email:domain";
  map = "regexp;/etc/rspamd/local.d/maps/bad_replyto_domains.re";

  prefilter = true;
  action = "reject";
  message = "550 5.7.2 Delivery rejected: Reply-To domain is blocked by policy. If this is legitimate, ask the sender to use their own mail system.";
}
Waarom verschillende 5.7.x codes?
Zo zie je in logs en bij tests direct welke regel de reject veroorzaakte: 5.7.1 = envelope-from, 5.7.0 = From:-header, 5.7.2 = Reply-To.
Stap 4 - Configuratie testen
rspamadm configtest

Stap 5 - Rspamd herladen
systemctl reload rspamd

Resultaat:
E-mails waarvan het afzenderdomein eindigt op een geblokkeerde TLD, of waarvan Reply-To naar een geblokkeerd domein wijst, worden geweigerd met een duidelijke foutmelding. Door de verschillende 5.7.x codes kun je snel zien welke controle de blokkade heeft veroorzaakt.