After years of running my own webservers and Mail-servers, I got annoyed by the amount of spam I had to handle and the almost daily task for it. But still I have to stop spam and after some googling I bumped into started using MX GuardDog.
So far I'm quite enthusiastic about the features MX GuardDog provides and the setup was easy.
Since I have some users on the VPS that are not really willing to pay an additional fee, I created a tiny change to the exim config
deny message = Email is handled by MXGuardDog - use the correct MX server according to DNS - https://www.mxguarddog.com/ domains = +protected_domains !hosts = +relay_from_hosts
In the relay_from_hosts I've added the MX GuardDog MTA servers that deliver the mail and the protected_domains is configured at the header of the config file:
domainlist protected_domains = lsearch;/etc/mxguarddog_domains
So the content of /etc/mxguarddog_domains is for example:
So spammers cannot 'connect' directly via the VPS but need to use MX GuardDog
Another cool feature is that users within the domains can create an account theirselves and see the mail that is put in quarantine, release it and modify their preferences