Email Spam Tester

Email Spam Tester › Email Spam Tester voor cPanel & WHM

Email Spam Tester voor cPanel & WHM

Een plugin voor hostingproviders. Je klanten vinden deze in cPanel onder Email, sturen een echte e-mail vanuit een van hun mailboxen en krijgen een lijst met wat ze moeten aanpassen, met bij elke bevinding het exacte DNS-record of de juiste cPanel-knop.

Versie 0.1.1, 30 september 2026. Download (94 KB), SHA-256 4909ff8402b3244711bc13bac96cfc22810ee33d48f80885f87e44809572cdd0. De installatiestappen staan aan het einde van deze pagina. Dezelfde tekst staat als INSTALL.md in het archief. De broncode, tests en releases staan op GitHub.

Voor wie het is

Bedrijven die cPanel & WHM-servers voor anderen beheren. Je installeert het één keer als root, waarna het in cPanel » Email verschijnt voor de pakketten die je kiest. Totdat je het inschakelt in Feature Manager, zien klanten niets nieuws.

Zonder deze functie moet een klant die wil weten waarom e-mail in de spammap terechtkomt, een testtool zoeken, een e-mailclient openen en handmatig een e-mail versturen. Met deze functie staat de test als knop naast de mailboxen. De e-mail wordt daadwerkelijk vanaf je server verzonden, met het IP-adres, de HELO-naam, de DKIM-handtekening en elk relais waar de e-mail doorheen gaat.

Wat klanten in cPanel krijgen

Test

De klant kiest een mailbox en verstuurt het standaardtestbericht (een korte persoonlijke e-mail in het Engels, met een tekstdeel en een HTML-deel) of een eigen bericht. Voor een eigen bericht plakt de klant een onderwerp, de HTML en optioneel een versie met platte tekst. Het bericht wordt precies zo verstuurd als het is geplakt. Exim verstuurt het zoals elke andere e-mail van dat account. Ongeveer een minuut later staat het rapport op dezelfde pagina, met alle 42 controles: SPF, DKIM, DMARC en alignment, reverse DNS en HELO, TLS, IP-blokkeerlijsten, SpamAssassin en Rspamd, de afzendervereisten die Gmail en Yahoo publiceren, en de inhoud. Er zijn twee scores: een technische score van maximaal 100 en de klassieke score van 0 tot 10.

"De map bij e-mailproviders controleren" is standaard aangevinkt. Hiermee gaat één kopie van de e-mail ook naar elk van onze testmailboxen, ongeveer 30 e-mails bij 14 providers, waaronder Gmail, Outlook, Yahoo, GMX en Proton. Bij Gmail zijn dit openbare testmailboxen, waar iedereen het onderwerp, de afzendernaam en de map kan zien. De tabel wordt in maximaal 30 minuten gevuld en toont voor elke provider Postvak IN, Spam of Promoties. Als een provider de e-mail direct heeft geweigerd, staat dat in de tabel, samen met het antwoord van de server en de SMTP-code uit het Exim-logboek op uw server.

Onder de scores staat Wat u moet oplossen. Als de DNS van het domein op uw server staat, kan cPanel DKIM, SPF en DMARC met één knop corrigeren. De plugin toont het record zoals het nu is en zoals het zal worden, en vraagt eerst om bevestiging. Als DNS elders wordt gehost, krijgt de klant het exacte record om te kopiëren, inclusief naam, type en waarde. Reverse DNS en het A-record van de server zelf staan in een aparte groep voor de serverbeheerder, met de waarden al ingevuld. Enkele minuten na de controles volgt een geschreven plan van Email Spam Tester. Met "Opnieuw controleren" wordt een nieuwe e-mail verstuurd zodra de records zijn ingesteld.

Geschiedenis

Elke test die het account heeft verstuurd, met de nieuwste eerst, inclusief de datum, de mailbox, welk bericht het was, beide scores en de aantallen per map. Een grafiek toont de score van test tot test. Elke test vermeldt de controles die zijn veranderd sinds de vorige test van hetzelfde domein. Een DKIM-controle die na een correctie van mislukt naar geslaagd ging, staat dus direct in de rij. Als een test wordt geopend, verschijnen het rapport en per provider de antwoorden van de ontvangende servers. De laatste 200 tests van elk account worden op uw server bewaard.

Continue monitoring

Een test vanuit een mailbox laat zien hoe e-mail vanuit die mailbox wordt verstuurd. Het klassieke cPanel-probleem zit ergens anders. Een WordPress-site of contactformulier verstuurt met de envelopafzender user@hostname, waardoor SPF-alignment wordt verbroken. Geen enkele test vanuit een mailbox zal dat ooit tonen. Monitoring doet dat wel.

De onzichtbare kopie die monitoring maakt, verlaat uw server via hetzelfde pad als de e-mail, vanaf hetzelfde IP, met dezelfde HELO en dezelfde DKIM-handtekening. Exim maakt deze kopie voor elke e-mail die een gemonitord domein verstuurt en bezorgt de kopie op een privéadres dat bij het domein hoort. Het rapport beschrijft daardoor het werkelijke pad, terwijl de e-mail zelf ongewijzigd bij de ontvangers aankomt.

Het tabblad Monitoring toont de e-mails van het domein als een feed. Elke e-mail vermeldt het domein van de ontvanger, nooit het adres, waar de e-mail vandaan kwam en wat er mislukte. Mogelijke bronnen zijn webmail, een e-mailclient, PHP of WordPress, en scripts die sendmail aanroepen. Boven de feed staan een samenvatting van één regel over de afgelopen 24 uur en de waarschuwingen: DKIM slaagt niet meer, SPF of DMARC mislukt voor één bron, het verzendende IP staat op een blokkeerlijst of ontvangende servers weigeren e-mails. Elke e-mail kan worden geopend als technisch rapport van de controles, zonder de headers van de e-mail. De klant kan hiervoor ook om een AI-plan vragen.

Monitoring blijft uitgeschakeld totdat de beheerder dit op de server toestaat. Daarna schakelt elke klant het in voor de eigen domeinen.

Wat je krijgt in WHM

WHM » Plugins » Email Spam Tester bestaat uit één pagina.

Prijs

Voorlopig gratis, inclusief monitoring. Je hoeft geen account aan te maken op email-spam-tester.com en op dit moment niets te betalen. Als dat ooit verandert, wordt dat eerst in het wijzigingslogboek vermeld.

Gegevens en privacy

Wat uw server verlaat:

Een testrapport werkt hetzelfde als op de site: het blijft beschikbaar via de link en iedereen met de link kan het openen, inclusief het onderwerp en de afzender. De e-mail zelf wordt een uur na ontvangst verwijderd, nadat de controles zijn uitgevoerd. Tot die tijd kan iedereen met de link de volledige e-mail lezen. Het Gmail-gedeelte van de mapcontrole is ook openbaar, zoals hierboven beschreven. Daarom kunt u vertrouwelijke e-mails beter zonder dit onderdeel testen.

Monitoringkopieën zijn echte correspondentie en de bijbehorende rapporten zijn privé. Alleen de plugin op uw server kan ze met de installatiesleutel openen. Er is geen openbare link. Een kopie wordt twee dagen na ontvangst verwijderd en het rapport na 90 dagen. De geschiedenis en de monitoringfeed blijven op uw server.

Op de privacypagina staat het volledige beleid.

Vragen die hostingproviders stellen

Wijzigt de plugin zelf DNS?

Nee. Een record wordt alleen gewijzigd wanneer de klant op de knop naast een bevinding klikt en de situatie voor en na de wijziging bevestigt, en alleen als je server de DNS van het domein host. De knoppen voor SPF en DMARC maken alleen een ontbrekend record aan. Een bestaand record wordt samengevoegd weergegeven, zodat de klant het handmatig kan kopiëren. Een knop vervangt dit nooit. De knop voor DKIM kan een record vervangen dat niet overeenkomt met de sleutel van de server, maar alleen als er precies één record is. Elke wijziging wordt vastgelegd in het logboek van het account en in een logboek onder /var/cpanel/email_spam_tester/ dat alleen root kan wijzigen, samen met het DNS-record dat vóór de wijziging werd aangeboden.

Mijn server verstuurt uitgaande e-mail via een smarthost. Werkt het dan nog steeds?

Dat zou moeten, maar ik heb het nog niet achter een smarthost getest. De testmail wordt op dezelfde manier verzonden als alle andere e-mail van het account. Het rapport toont daarom het IP-adres en de naam van de relay, want dat is wat ontvangers zien. Het corrigeren van de reverse DNS of verwijderen van een blokkeerlijst is dan de verantwoordelijkheid van de beheerder van de relay. Eén onderdeel gaat verloren. De redenen die een provider geeft voor het weigeren van een e-mail komen uit het Exim-logboek op je server. Bij een relay bevat dat logboek alleen het antwoord van de relay. Een e-mail die door de relay is geaccepteerd en later door een provider is geweigerd, kan als "Niet ontvangen" worden weergegeven. Kopieën voor monitoring worden ook via de relay verzonden.

Heeft monitoring invloed op de afleverbaarheid?

De e-mail van de klant wordt zoals voorheen en ongewijzigd verzonden. De ontvangers merken niets, omdat de kopie afzonderlijk naar ons adres wordt verzonden. Monitoring telt wel mee voor de verzendlimiet per uur. Elke kopie telt één keer mee voor het "maximale aantal e-mails per uur" van het domein. Een domein dat dicht bij de limiet zit, bereikt die daardoor eerder, met de standaardinstelling maximaal 20 e-mails per uur eerder. Nadat dat aantal kopieën binnen een uur is bereikt, worden e-mails zonder kopie verzonden.

Telt de mapcontrole ook mee voor de limiet per uur?

Ja, deze verstuurt ongeveer 30 e-mails. Voordat de controle begint, kijkt de plugin hoeveel e-mails het domein dit uur nog kan versturen en laat de klant weten als dat niet genoeg is.

Wat is in een liveomgeving getest?

cPanel & WHM 134 of nieuwer wordt ondersteund. Tot nu toe heb ik versie 138 (11.138) live getest op Ubuntu 24.04. Dit omvat de installatie en een upgrade, registratie, de functieschakelaar, tests met en zonder mapcontrole, de geschiedenis en monitoring van e-mails uit alle vier de bronnen. Nog niet live getest zijn de andere besturingssystemen, CloudLinux met CageFS, de knoppen voor DKIM, SPF en DMARC (de DNS van de testserver wordt elders gehost), een server die via een smarthost verstuurt en het uitschakelen van monitoring voor de hele server. Voor dat laatste is alleen een proefrun uitgevoerd. Als je de plugin in een van deze situaties gebruikt, hoor ik graag hoe het ging.

Installatie, stap voor stap

Deze handleiding gaat ervan uit dat je roottoegang tot de server hebt en nog niet eerder WHM-plugins hebt gebruikt. Elke onderstaande opdracht kun je ongewijzigd kopiëren en plakken.

1. Wat je nodig hebt

Je kunt beide verbindingen controleren voordat je de plugin installeert. De eerste opdracht moet een regel tonen die begint met 220, de tweede moet 200 tonen:

timeout 10 bash -c 'exec 3<>/dev/tcp/t.email-spam-tester.com/25 && head -1 <&3'
curl -s -o /dev/null -w '%{http_code}\n' https://email-spam-tester.com/health

2. Installatie

Log via SSH in als root en voer deze opdrachten één voor één uit.

Ga naar de homedirectory van root, waar de plugin komt te staan:

cd /root

Download het archief en de controlesom. Als dit werkt, wordt er niets getoond:

curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz
curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz.sha256

Controleer of de download intact is. Je moet latest.tar.gz: OK zien. Als je FAILED ziet, download het bestand dan opnieuw en ga niet verder:

sha256sum -c latest.tar.gz.sha256

Pak het uit naar /root/email-spam-tester-cpanel. Ook nu wordt er niets getoond:

mkdir -p email-spam-tester-cpanel
tar -xzf latest.tar.gz -C email-spam-tester-cpanel --strip-components=1

Voer het installatieprogramma uit. Het controleert eerst elk bestand en kopieert de bestanden daarna naar de juiste locatie:

cd /root/email-spam-tester-cpanel && ./install.sh

Je moet Checking Perl syntax…, Root module…, cPanel pages…, enkele regels van het plugin-installatieprogramma van cPanel, Switching the feature off in all feature lists… en WHM page… zien. De laatste regels moeten zijn:

Installed. Next: WHM » Plugins » Email Spam Tester » Register this server.
Customers do not see it yet: turn on email_spam_tester in WHM » Feature Manager
for the feature lists (packages) that should have it.

Bewaar de directory /root/email-spam-tester-cpanel. Upgrades en uninstall.sh worden vanuit deze directory uitgevoerd.

3. De server registreren in WHM

  1. Log als root in bij WHM.
  2. Open Plugins in het linkermenu en klik op Email Spam Tester.
  3. In het vak Registration staat "Not registered". Het veld voor het e-mailadres van de beheerder eronder is optioneel.
  4. Klik op Register this server.

Bovenaan verschijnt een groene regel, "Registered. Installation #…", en in het vak staat nu Status: Registered, met het installatienummer en het begin van de sleutel. Bij de registratie worden de hostnaam van de server, de cPanel-versie, de pluginversie, het aantal accounts en, als je dit hebt opgegeven, het e-mailadres verzonden. De sleutel wordt bewaard in /var/cpanel/email_spam_tester/config.json en is alleen leesbaar voor root.

Op dezelfde pagina kun je de dagelijkse limieten wijzigen. Standaard zijn dit 20 tests per account en 500 per server.

4. De plugin inschakelen voor klanten

Na de installatie ziet niemand de plugin. Je kiest zelf voor welke pakketten deze beschikbaar is.

  1. Zoek uit welke functielijst je pakketten gebruiken: WHM » Packages » Edit a Package, kies een pakket en bekijk het veld Feature List. Op veel servers is dit default.
  2. Open WHM » Packages » Feature Manager.
  3. Selecteer onder Manage feature list die lijst en klik op Edit.
  4. Zoek Email Spam Tester in de lijst (de zoekfunctie van je browser helpt als de lijst lang is), vink het selectievakje aan en klik op Save.
  5. Herhaal dit voor elke functielijst waarin de plugin beschikbaar moet zijn.

Klanten met deze pakketten zien nu Email Spam Tester in cPanel, in de sectie Email. Vergeet niet de plugin ook aan te vinken in functielijsten die je later maakt.

5. De eerste test versturen als klant

Log in bij cPanel als een van deze klanten. Vanuit WHM kun je Account Information » List Accounts gebruiken en op het cPanel-pictogram naast het account klikken.

  1. Open Email » Email Spam Tester. De pagina heeft drie tabbladen: Test, History en Monitoring.
  2. Kies op het tabblad Test een mailbox. Als het account nog geen mailbox heeft, maak er dan eerst een aan via Email » Email Accounts.
  3. Laat Standard test email geselecteerd en laat Check the folder at email providers aangevinkt.
  4. Klik op Send test.

De pagina laat zien wat er gebeurt: DNS-records controleren, de e-mail verzenden en wachten tot deze aankomt. Ongeveer een minuut later verschijnt het rapport. Het bevat twee scores, een technische score van maximaal 100 en de klassieke score van 0 tot 10. Daaronder staat What to fix. Deze lijst bevat een knop als cPanel een record op deze server kan corrigeren, het exacte record dat je moet kopiëren als DNS elders wordt gehost en reverse DNS-waarden voor jou als serverbeheerder. Daarna volgen alle controles. Where the email landed wordt in de volgende 30 minuten per e-mailprovider ingevuld met Inbox, Spam of Promotions, en met het antwoord van de provider als deze de e-mail heeft geweigerd. Enkele minuten na de controles volgt een geschreven plan.

De mapcontrole verstuurt ongeveer 30 e-mails. Als de uurlimiet voor uitgaande e-mail van het domein daarvoor niet genoeg ruimte heeft, meldt de pagina dit voordat er iets wordt verzonden.

6. Continue monitoring (optioneel)

Als monitoring voor een domein is ingeschakeld, stuurt Exim een onzichtbare kopie van elke e-mail die het domein verzendt naar een privéadres bij Email Spam Tester. De klant ziet voor elke e-mail een technisch rapport. Ontvangers zien niets. Elke kopie telt één keer mee voor de uurlimiet van het domein, standaard met een maximum van 20 kopieën per uur.

  1. Zoek in WHM » Plugins » Email Spam Tester het vak Constant monitoring en klik op Allow constant monitoring on this server. De plugin controleert je Exim-configuratie, voegt de regel toe, bouwt Exim opnieuw op en start Exim opnieuw. Als een stap mislukt, maakt de plugin alle wijzigingen ongedaan. Als het werkt, zie je "Constant monitoring is allowed on this server: the Exim rule is in, Exim was rebuilt and restarted." en wordt de regel in het vak weergegeven als Active.
  2. De klant opent het tabblad Monitoring in cPanel, klikt naast een domein op Turn on en bevestigt dit. E-mails die daarna worden verzonden, verschijnen binnen één of twee minuten op het tabblad.

Klik in hetzelfde vak op Disable monitoring on the whole server om monitoring voor de hele server te stoppen.

7. Upgraden

Download de nieuwe versie, pak deze over de oude versie uit en voer het installatieprogramma opnieuw uit:

cd /root
curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz
curl -fsSLO https://email-spam-tester.com/cpanel/latest.tar.gz.sha256
sha256sum -c latest.tar.gz.sha256
tar -xzf latest.tar.gz -C email-spam-tester-cpanel --strip-components=1
cd /root/email-spam-tester-cpanel && ./install.sh

Het proces moet eindigen met "Updated. The registration, limits and feature settings are unchanged." Als monitoring is toegestaan, werkt het installatieprogramma ook de Exim-regel bij.

8. Verwijderen

cd /root/email-spam-tester-cpanel && ./uninstall.sh

Dit verwijdert de monitoringregel uit Exim, schakelt monitoring voor elk domein uit en verwijdert de plugin uit cPanel en WHM. Het proces eindigt met "Removed. The key is kept in /var/cpanel/email_spam_tester (use --purge to delete it)." Voer in plaats daarvan ./uninstall.sh --purge uit om ook de sleutel te verwijderen.

DNS-records worden nooit gewijzigd, ook niet als klanten ze met de knoppen van de plugin hebben aangemaakt.

9. Als er iets mis is gegaan

Klanten zien het pictogram niet. De functie is uitgeschakeld in de functielijst van hun pakket. Voer stap 4 opnieuw uit en controleer welke functielijst hun pakket werkelijk gebruikt.

Op de pagina staat "The server administrator has not activated Email Spam Tester in WHM yet". De server is niet geregistreerd. Voer stap 3 uit.

De registratie mislukt. Het rode bericht bovenaan de WHM-pagina geeft de reden. Meestal kan de server email-spam-tester.com niet via HTTPS bereiken. Voer de curl-controle uit stap 1 uit, die 200 moet tonen, en controleer de firewallregels voor uitgaand verkeer.

Volgens de test is het bericht niet binnen 3 minuten aangekomen. De e-mail staat vast in de wachtrij of is geweigerd. Voer de controle van poort 25 uit stap 1 uit. Als deze niets toont of een time-out geeft, blokkeert je provider uitgaand verkeer via poort 25. Vraag de provider om deze poort te openen of verstuur e-mail via een relay. Zo controleer je wat Exim met de e-mail heeft gedaan:

grep 't.email-spam-tester.com' /var/log/exim_mainlog | tail -5

De klant kan voor de mailbox ook kijken in Email » Track Delivery.

Pagina's op cpanel.<domain> geven soms een 502-fout. Dit komt door de proxy van Apache voor de servicesubdomeinen van cPanel en treft elke cPanel-pagina, niet alleen deze plugin. Het rechtstreekse adres https://<domain>:2083 ondervindt dit probleem niet. Open om dit op te lossen WHM » Service Configuration » Apache Configuration » Include Editor, kies Pre VirtualHost Include voor alle versies, voeg deze regels toe en sla de wijzigingen op:

<IfModule setenvif_module>
    SetEnvIfNoCase Host "^(cpanel|webmail|whm|webdisk|cpcalendars|cpcontacts)\." proxy-nokeepalive=1 proxy-initial-not-pooled=1
</IfModule>

Pas de wijzigingen daarna toe:

apachectl configtest && /scripts/rebuildhttpdconf && /scripts/restartsrv_httpd

10. Ondersteuning

Schrijf naar hi@email-spam-tester.com. Voeg de uitvoer van ./install.sh toe als de installatie is mislukt, of de link naar het rapport als een test niet lijkt te kloppen. Meer informatie over de plugin staat op https://email-spam-tester.com/cpanel-integration/.