Skip to main content

Rspamd instellen op DirectAdmin - pro spamblokkade met Multimap

Deze Nederlandstalige handleiding laat stap voor stap zien hoe je Rspamd op een DirectAdmin server gebruikt om bewezen spam en fraude gericht te blokkeren.

We blokkeren op basis van losse e-mailadressen, afzenderdomeinen, verdachte TLD's en Reply-To misbruik. De opzet is gemaakt voor groei: elke lijst krijgt een eigen map-bestand, zodat het later overzichtelijk en onderhoudbaar blijft.

Werking in het kort:
Exim ontvangt de mail eerst. Als Exim de mail doorlaat, controleert Rspamd de mail met onderstaande regels. Bij een match geeft Rspamd een nette 550-melding terug met een link naar het contactformulier.

Wat deze setup doet

  • Exacte afzenderadressen blokkeren
  • Afzenderdomeinen blokkeren
  • TLD's en domeinpatronen blokkeren met regex
  • Reply-To domeinen blokkeren bij misbruik
  • Reject zo vroeg mogelijk via prefilter = true
  • Eigen SMTP-melding met verwijzing naar https://lodewijk.frl/contact
  • Upgrade-vriendelijk voor DirectAdmin, omdat de configuratie in /etc/rspamd/local.d/ blijft

Waarom Rspamd gebruiken in plaats van alleen Exim blacklists?

DirectAdmin en Exim kunnen mail vroeg blokkeren, maar geven meestal een standaardmelding terug. Met Rspamd Multimap kun je veel gerichter werken: aparte lijsten voor adressen, domeinen, TLD-regex en Reply-To controles.

Het voordeel is dat je bewezen spam en fraude centraal beheert, beter kunt loggen en verzenders bij een foutieve blokkade verwijst naar https://lodewijk.frl/contact.

Mail verwerking stap voor stap

📬
Internet
Afzender
➡️
⚙️
Exim
IP / host blokkades
➡️
🧠
Rspamd
Domeinen, regels, Reply-To
➡️
📥
Resultaat
Inbox of reject
Belangrijk:
Exim blokkeert vóór Rspamd. Alleen als Exim mail doorlaat, worden jouw Rspamd-regels toegepast.

Stap 1 - Mappen en bestanden aanmaken

Maak eerst de map aan waar alle Rspamd map-bestanden in komen. Daarna maken we de losse bestanden aan voor adressen, domeinen, Reply-To domeinen en TLD-regex.

mkdir -p /etc/rspamd/local.d/maps

touch /etc/rspamd/local.d/maps/block_sender_addresses.map
touch /etc/rspamd/local.d/maps/block_sender_domains.map
touch /etc/rspamd/local.d/maps/block_replyto_domains.map
touch /etc/rspamd/local.d/maps/block_tlds.re

Zet daarna de rechten goed. Op sommige systemen heet de Rspamd gebruiker _rspamd, op andere systemen rspamd. Onderstaande blok probeert eerst _rspamd en valt daarna terug op rspamd.

if id _rspamd >/dev/null 2>&1; then
  chown -R _rspamd:_rspamd /etc/rspamd/local.d/maps
elif id rspamd >/dev/null 2>&1; then
  chown -R rspamd:rspamd /etc/rspamd/local.d/maps
else
  echo "Let op: Rspamd gebruiker niet gevonden. Controleer handmatig de eigenaar van /etc/rspamd/local.d/maps"
fi

chmod 750 /etc/rspamd/local.d/maps
chmod 640 /etc/rspamd/local.d/maps/*

Stap 2 - Exacte e-mailadressen blokkeren

Deze adressen zijn gebaseerd op daadwerkelijk ontvangen spam/fraude. Dit bestand gebruikt exacte matches, dus hier hoeft geen regex in.

nano /etc/rspamd/local.d/maps/block_sender_addresses.map

Plak daarna deze inhoud:

abnarnro.omgeving@kpnplanet.nl # phishing / nep bank mail
administratie@hetnet.nl # spam ontvangen
akleskw@hificond.club # random spam account
alaina.brooks@eindhoventransmissie.com # spam ontvangen via dit adres
alison.fisher@almerecarrosserie.com # spam ontvangen via dit adres
alsofsq@es-race.boats # spam via vreemde TLD
anjalisharma729090@gmail.com # gmail spam
aopincuoqgtwaqiknascesn@s.hrufhs.org # random string spam
arya.developers.2017@gmail.com # gmail spam
ava@worldsevey2.com # spam domein
belasting@live.nl # spoof / nep belasting mail
billy18065080@outlook.com # outlook spam
carderello364@gmail.com # gmail spam
crystalcarephysio@gmail.com # gmail spam
daniel@samonlinemarketing.nl # spam ontvangen via dit adres
dapierre25@gmail.com # gmail spam
denhelder@anicura.nl # spam ontvangen via dit adres
fi9l7@outlook.com # random outlook spam
info-caroptions@deliver.moneybird.com # misbruik via facturatie systeem
info@caroptions.nl # slechte ervaring / spam / niet volgens wens
info@email.qredits.nl # spam ontvangen via dit adres
info@project-nestle.com # phishing / merk misbruik
info@shjy-kj.com # spam domein
info@t-mobilethuis.nl # spoof / nep provider mail
info@weareblox.com # spam ontvangen via dit adres
infodido@xs4all.nl # spam ontvangen
infos@ladirection.cloud # spam / bulk mail
infos@pourtoutenfin.cloud # spam / bulk mail
klantenservice@hetnieuwewozbureau.nl # spam / opdringerige mail
krutikasharma1@outlook.com # outlook spam
leo.webmanagemet25@outlook.com # spam account
LodhiSingh.web@hotmail.com # hotmail spam
lukas.seo05@outlook.com # SEO spam
martin@mailer.verkeersboete.nl # marketing / spam
marketing@greenmax.eu # marketing spam
matthew66773237@outlook.com # outlook spam
mz@shjy-kj.com # spam domein
noreply@alphavilleanapolis.com.br # bulk spam
noreply@comercializadoraig.com # phishing / scam
noreply@wftelecompi.com.br # bulk spam
office@chatdesk.nl # spam ontvangen via dit adres
ombilbk@maxis-hostel.homes # random spam
patrickprosee@techneanederland.nl # spam ontvangen via dit adres
paypal01@entreepl.com # phishing / nep paypal
postmaster@anicuragroup.com # spam ontvangen via dit adres
prod@auralink-9.com # spam domein
prod@elix-2025.com # spam domein
prod@fusionnetworks3491.com # spam domein
prod@lucentra-2.com # spam domein
prod@mailcloudlead.com # lead spam
prod@matrixconsulting2485.com # spam domein
prod@nex-bridge3.com # spam domein
prod@nuvolanote-5.com # spam domein
prod@optiwave-3.com # spam domein
prod@reachspark21.com # spam domein
prod@titaniumtech9517.com # spam domein
prod@torquepost5.com # spam domein
prod@zorven21.com # spam domein
rashisharma64@hotmail.com # hotmail spam
rijksdienst.ondernemend@kpnmail.nl # spoof overheid
rijksdienst.ondernemend@planet.nl # spoof overheid
rvo@kpnmail.nl # spoof overheid
rvo@xs4all.nl # spoof overheid
ryumaster8@gmail.com # gmail spam
sales@accountor.nl # spam ontvangen via dit adres
server.infodesk@skynet.nl # spam ontvangen
service@shjy-kj.com # spam domein
sophia.nl@campaignanchor.pt # marketing spam
support@ideologic.org # marketing spam
thrtfbgrter@shjy-kj.com # random spam account
vutienduc26122002@gmail.com # gmail spam
welkomstbonus@wedofollows.com # social spam / nep actie
Let op: voor een exact map-bestand zijn comments met # bedoeld als notitie. Gebruik geen /* comment */ achter regels.

Stap 3 - Afzenderdomeinen blokkeren

Deze domeinen worden geblokkeerd omdat er concreet spam of fraude vanaf is gezien. Ook dit bestand gebruikt exacte domeinmatches.

nano /etc/rspamd/local.d/maps/block_sender_domains.map

Plak daarna deze inhoud:

advancedigitalweb.com # marketing spam / lead rotzooi
aeroclub-gravenchon.fr # spam ontvangen vanaf/namens dit domein
af-grupa.com # onduidelijk / mogelijk misbruik
amwarnerinsurance.com # spam ontvangen vanaf/namens dit domein
auralink-9.com # duidelijk spam domein
autoinkoopdirect.com # auto inkoop spam / opdringerig
bedrijfswagenfleet.com # commerciële spam
bedrijfswagenverkoop.com # commerciële spam
bedrijfswagenzone.com # commerciële spam
caroptions.nl # slechte ervaring / spam / niet volgens wens
chescoperta.it # buitenlandse spam
comercializadoraig.com # phishing / scam achtig
edmbusinessgoods.com # pure spam
elix-2025.com # fake domein / spam
energreen.com # spam ontvangen vanaf/namens dit domein
es-race.boats # verdachte TLD / spam
firebaseapp.com # platform misbruikt voor phishing
fusionnetworks3491.com # spam domein
graspstaging.com # test/staging misbruikt voor spam
hificond.club # spam / troep domein
ideologic.org # marketing spam
inkoopautohub.com # auto lead spam
inkoopautoworks.com # auto lead spam
ladirection.cloud # spam / bulk mail
lucentra-2.com # spam domein
mailcloudlead.com # lead spam platform
matrixconsulting2485.com # spam domein
nayven73.com # spam domein
nex-bridge3.com # spam domein
nuvolanote-5.com # spam domein
oceanoinformato.it # buitenlandse spam
optiwave-3.com # spam domein
pourtoutenfin.cloud # spam / marketing troep
project-nestle.com # phishing / merk misbruik
promotrades.nl # commerciële spam
reachspark21.com # marketing spam
shjy-kj.com # random spam domein
slimster.nl # spam ontvangen / ongewenste commerciële mail
student.swc.ac.uk # spam ontvangen vanaf/namens dit domein
sunnicer.help # spam TLD / rotzooi
tilburgkoeling.com # spam ontvangen vanaf/namens dit domein
titaniumtech9517.com # spam domein
topautobedrijf.com # commerciële spam
torquepost5.com # spam domein
treinatec.com # onduidelijk / spam
uniquemax.net # marketing spam
velkimasteragent.com # spam domein
wedofollows.com # social spam / nep volgers
worldsevey2.com # typo spam domein
zephyr-mail7.com # spam domein
zjmisgnucctesenuy.com # random garbage domein
zndnedicom.com # spam domein
zorven21.com # spam domein

Stap 4 - Reply-To domeinen blokkeren

Deze lijst is bedoeld voor situaties waarin de zichtbare verzender bijvoorbeeld via een extern systeem mailt, maar de Reply-To naar een geblokkeerd of misbruikt domein wijst.

nano /etc/rspamd/local.d/maps/block_replyto_domains.map

Plak daarna deze inhoud:

caroptions.nl # Reply-To misbruik / spamervaring
project-nestle.com # phishing / merk misbruik
shjy-kj.com # spam domein

Stap 5 - TLD-regex blokkade

Gebruik dit bestand alleen voor regex. Hiermee blokkeer je domeinen die eindigen op bepaalde TLD's of second-level extensies zoals .com.br.

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

Plak daarna deze inhoud:

\.(ru|cn|su|kp|xyz|top|icu|work|gr|es|se|tr|watch|company|onl|id|store|jp|pro|fr|it|tech|in|ca|io|art|kr|services|pt|email|boats|homes)$
\.(ac\.kr|or\.id|com\.br)$

Stap 6 - Rspamd Multimap configureren

Open de Rspamd multimap-configuratie. Deze regels zorgen ervoor dat jouw lijsten ook echt worden gebruikt.

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

Plak deze volledige configuratie:

# /etc/rspamd/local.d/multimap.conf
#
# Lodewijk.FRL - lokale Rspamd mail policy
#
# Doel:
# - Reject op basis van exacte afzenderadressen
# - Reject op basis van afzenderdomeinen
# - Reject op basis van TLD / regex patronen
# - Reject op basis van Reply-To domeinen
#
# Maps:
# - /etc/rspamd/local.d/maps/block_sender_addresses.map
# - /etc/rspamd/local.d/maps/block_sender_domains.map
# - /etc/rspamd/local.d/maps/block_replyto_domains.map
# - /etc/rspamd/local.d/maps/block_tlds.re
#
# Contact bij foutieve blokkade:
# - https://lodewijk.frl/contact
#
# Let op:
# - prefilter = true zorgt voor een vroege reject in de SMTP-fase waar mogelijk
# - action = reject geeft een permanente weigering 550

# 1. Exacte afzenderadressen blokkeren - SMTP MAIL FROM
BLOCK_SENDER_ADDR_ENVFROM {
  type = "from";
  extract_from = "smtp";
  filter = "email";
  map = "/etc/rspamd/local.d/maps/block_sender_addresses.map";

  prefilter = true;
  action = "reject";
  message = "550 5.7.1 Rejected: sender address is blocked due to abuse. If this is incorrect, contact https://lodewijk.frl/contact";
}

# 2. Exacte afzenderadressen blokkeren - zichtbare From-header
BLOCK_SENDER_ADDR_FROMHDR {
  type = "from";
  extract_from = "mime";
  filter = "email";
  map = "/etc/rspamd/local.d/maps/block_sender_addresses.map";

  prefilter = true;
  action = "reject";
  message = "550 5.7.0 Rejected: sender identity is blocked due to abuse. If this is incorrect, contact https://lodewijk.frl/contact";
}

# 3. Afzenderdomeinen blokkeren - SMTP MAIL FROM
BLOCK_SENDER_DOMAIN_ENVFROM {
  type = "from";
  extract_from = "smtp";
  filter = "email:domain";
  map = "/etc/rspamd/local.d/maps/block_sender_domains.map";

  prefilter = true;
  action = "reject";
  message = "550 5.7.1 Rejected: sender domain is blocked due to abuse. If this is incorrect, contact https://lodewijk.frl/contact";
}

# 4. Afzenderdomeinen blokkeren - zichtbare From-header
BLOCK_SENDER_DOMAIN_FROMHDR {
  type = "from";
  extract_from = "mime";
  filter = "email:domain";
  map = "/etc/rspamd/local.d/maps/block_sender_domains.map";

  prefilter = true;
  action = "reject";
  message = "550 5.7.0 Rejected: sender domain is blocked due to abuse. If this is incorrect, contact https://lodewijk.frl/contact";
}

# 5. TLD / regex blokkade - SMTP MAIL FROM
BLOCK_TLDS_ENVFROM {
  type = "from";
  extract_from = "smtp";
  filter = "email:domain";
  map = "regexp;/etc/rspamd/local.d/maps/block_tlds.re";

  prefilter = true;
  action = "reject";
  message = "550 5.7.1 Rejected: sender domain extension is blocked due to abuse. If this is incorrect, contact https://lodewijk.frl/contact";
}

# 6. TLD / regex blokkade - zichtbare From-header
BLOCK_TLDS_FROMHDR {
  type = "from";
  extract_from = "mime";
  filter = "email:domain";
  map = "regexp;/etc/rspamd/local.d/maps/block_tlds.re";

  prefilter = true;
  action = "reject";
  message = "550 5.7.0 Rejected: sender domain extension is blocked due to abuse. If this is incorrect, contact https://lodewijk.frl/contact";
}

# 7. Reply-To domeinen blokkeren
BLOCK_REPLYTO_DOMAIN {
  type = "header";
  header = "Reply-To";
  filter = "email:domain";
  map = "/etc/rspamd/local.d/maps/block_replyto_domains.map";

  prefilter = true;
  action = "reject";
  message = "550 5.7.2 Rejected: Reply-To domain is blocked due to abuse. If this is incorrect, contact https://lodewijk.frl/contact";
}

Stap 7 - Configuratie testen

Test altijd eerst of Rspamd de configuratie accepteert voordat je herlaadt.

rspamadm configtest

Stap 8 - Rspamd herladen

Als de configtest syntax OK geeft, kun je Rspamd herladen.

systemctl reload rspamd

Stap 9 - Logs controleren

Gebruik onderstaande commando's om te kijken of Rspamd goed draait en of er rejects plaatsvinden.

journalctl -u rspamd -n 100 --no-pager
journalctl -u rspamd -f

Optioneel zoeken naar jouw symbolen:

grep -R "BLOCK_SENDER\|BLOCK_TLDS\|BLOCK_REPLYTO" /var/log/rspamd/ 2>/dev/null

Stap 10 - Testen met swaks (optioneel)

Als swaks aanwezig is, kun je een testmail simuleren vanaf een geblokkeerd domein.

swaks --from test@elix-2025.com --to info@jouwdomein.nl --server localhost
Resultaat:
Mail vanaf geblokkeerde adressen, domeinen, TLD's of Reply-To domeinen wordt geweigerd met een duidelijke SMTP-melding. Bij een foutieve blokkade wordt de verzender verwezen naar https://lodewijk.frl/contact.

DirectAdmin / Exim blokkadelijsten

DirectAdmin gebruikt ook eigen Exim-blokkadelijsten. Deze worden vóór Rspamd toegepast. Als een mail hier wordt geblokkeerd, bereikt deze Rspamd niet meer en wordt jouw nette melding dus niet gebruikt.

/etc/virtual/blacklist_domains
/etc/virtual/blacklist_senders
/etc/virtual/bad_sender_hosts
/etc/virtual/bad_sender_hosts_ip
Belangrijk:
Gebruik je deze lijsten actief? Dan wordt mail hier al geweigerd en ziet de verzender niet jouw Rspamd-melding.

Wil je volledig overstappen naar Rspamd (aanbevolen voor nette meldingen en beter beheer), dan kun je deze lijsten leegmaken.

Stap 1 - Backup maken (aanbevolen)
cp /etc/virtual/blacklist_domains /etc/virtual/blacklist_domains.bak
cp /etc/virtual/blacklist_senders /etc/virtual/blacklist_senders.bak
cp /etc/virtual/bad_sender_hosts /etc/virtual/bad_sender_hosts.bak
cp /etc/virtual/bad_sender_hosts_ip /etc/virtual/bad_sender_hosts_ip.bak
Stap 2 - Lijsten leegmaken
> /etc/virtual/blacklist_domains
> /etc/virtual/blacklist_senders
> /etc/virtual/bad_sender_hosts
> /etc/virtual/bad_sender_hosts_ip
Stap 3 - Exim herladen
systemctl reload exim
Resultaat:
Exim laat mail door en Rspamd handelt de filtering af. Hierdoor krijgen verzenders jouw duidelijke en nette melding inclusief contactmogelijkheid.
Uitzondering (optioneel):
Je kunt ervoor kiezen om bad_sender_hosts_ip te blijven gebruiken. Dit is soms handig voor:
  • brute bots
  • DDoS mail floods
Alternatief:
# alleen deze laten bestaan indien nodig
bad_sender_hosts_ip
Extra check:
Controleer na het leegmaken of de lijsten echt leeg zijn:
grep . /etc/virtual/blacklist_*
Dit commando hoort geen output te geven.

Veelgemaakte fouten bij Rspamd Multimap

Bij dit soort mailserver filtering gaan meestal dezelfde dingen mis. Controleer deze punten als een blokkade niet werkt zoals verwacht.

Probleem Gevolg Oplossing
Exim blacklist is nog gevuld Rspamd wordt overgeslagen Leegmaken of bewust alleen voor IP-blokkades gebruiken
Regex gebruikt in een .map bestand Matches werken niet zoals verwacht Gebruik .map voor exacte waarden en .re voor regex
Rspamd niet herladen Nieuwe configuratie is nog niet actief Voer rspamadm configtest en daarna systemctl reload rspamd uit
Verkeerde rechten op map-bestanden Rspamd kan de lijsten niet lezen Controleer eigenaar en rechten van /etc/rspamd/local.d/maps/

Veelgestelde vragen

Moet ik adressen en domeinen in aparte bestanden zetten?

Het hoeft technisch niet altijd, maar voor groei is het veel netter. Exacte e-mailadressen horen in block_sender_addresses.map, domeinen in block_sender_domains.map en regex patronen in block_tlds.re.

Waarom gebruik je prefilter = true?

Daarmee kan Rspamd de mail zo vroeg mogelijk weigeren. Dat scheelt verwerking en geeft direct een duidelijke SMTP 550-melding terug.

Kan ik comments achter regels gebruiken?

Ja, gebruik # voor opmerkingen. Gebruik geen /* comment */, want dat is niet geschikt voor deze map-bestanden.

Waarom niet alles in DirectAdmin of Exim blokkeren?

Dat kan, maar dan krijgt de verzender meestal niet jouw nette Rspamd-melding. Voor beleid, uitleg en beheer is Rspamd daarom duidelijker.

Aanvullende tips voor later

Deze setup is een goede basis. Als de lijsten groter worden, kun je later nog uitbreiden met extra lagen.

  • Maak een aparte whitelist voor uitzonderingen die nooit geblokkeerd mogen worden.
  • Gebruik scoring voor twijfelgevallen in plaats van directe reject.
  • Log periodiek welke regels het meest afgaan, zodat je ziet waar de meeste spam vandaan komt.
  • Houd bij elke regel een korte reden of datum bij met een # comment.
  • Blijf voorzichtig met brede TLD-blokkades, omdat daar ook legitieme mail tussen kan zitten.

Hulp nodig met Rspamd, DirectAdmin of mail filtering?

Komt een legitieme mail onterecht niet aan, of wil je hulp bij het instellen van spamfiltering op een DirectAdmin server? Neem dan contact op.

Contact opnemen