Email Spam Tester

Home › Integraties › Handleidingen › Amazon SES

Handleiding · geen koppeling nodig

Amazon SES-e-mails testen

SES verstuurt precies wat je aanlevert en voegt zelf nauwelijks iets toe. Daardoor is testen eenvoudig, mits je account niet meer in de sandbox zit. Het betekent ook dat je het meeste wat het rapport vindt zelf moet oplossen.

Handleiding · Amazon SES

Test een e-mail van Amazon SES

Eén adres, één e-mail, één uur geldig. Geen account, geen API-sleutel.

Vraag een testadres aan

Stap 1

Authenticeer het domein

Easy DKIM: drie CNAMEs. Een aangepast MAIL FROM-subdomein als je SPF ook wilt uitlijnen.

Stap 2

Stuur één echte e-mail naar een testadres

aws sesv2 send-email vanuit een regio met productietoegang. Eén adres, één bericht, één uur.

Stap 3

Lees het rapport

Verwacht dat SPF slaagt voor amazonses.com en als niet uitgelijnd wordt weergegeven, en dat DMARC slaagt op basis van DKIM. Je moet zelf voor uitschrijfheaders zorgen.

Controleer eerst de sandbox, want die bepaalt of dit überhaupt werkt. Een nieuw SES-account begint in elke Region in de sandbox. Zolang het daarin zit, bezorgt SES alleen e-mails bij geverifieerde adressen, geverifieerde domeinen en de eigen mailboxsimulator. Bovendien geldt een limiet van 200 berichten per 24 uur en één bericht per seconde.

Het verifiëren van een Email Spam Tester-adres omzeilt dit niet. SES verifieert een ontvanger door een e-mail met een link te sturen. Omdat onze adressen precies één bericht accepteren voordat ze worden gesloten, zou het verificatiebericht dat adres meteen verbruiken. In de praktijk heb je dus productietoegang nodig in de Region van waaruit je verzendt. AWS belooft binnen 96 uur een eerste reactie op die aanvraag.

Omdat de sandboxstatus per Region geldt, kan een account dat in productie is in eu-west-1 nog steeds in de sandbox zitten in us-east-1. Identiteiten gelden ook per Region, elk met eigen DKIM-records.

Haal een adres op en stuur één bericht

Open email-spam-tester.com en kopieer het getoonde adres. Je hebt geen account of API-sleutel nodig. Het adres bestaat uit test- plus twintig tekens, gevolgd door t.email-spam-tester.com. Je hebt één uur en kunt één bericht sturen, dus stel de verzendopdracht samen voordat je het adres ophaalt.

De eenvoudigste manier om te verzenden is via de CLI, gebaseerd op het voorbeeld van AWS op de pagina over SES-tenants, maar zonder de opties voor de tenant en configuratieset:

aws sesv2 send-email \
  --from-email-address "sender@yourdomain.com" \
  --destination "ToAddresses=test-xxxxxxxxxxxxxxxxxxxx@t.email-spam-tester.com" \
  --content "Simple={Subject={Data='Test Subject',Charset=utf-8},Body={Text={Data='Test email body',Charset=utf-8}}}"

From moet een geverifieerde identiteit zijn, ook in productie. Een bericht met alleen tekst zoals dit is voldoende om de authenticatie en het IP te testen, maar zegt bijna niets over de inhoud. Voor een echt oordeel stuur je het bericht dat je applicatie daadwerkelijk verstuurt, inclusief het HTML-gedeelte en de headers. Gebruik ook hetzelfde codepad, of dat nu boto3's send_email, een SMTP-bibliotheek of iets anders is. Als je productieomgeving een configuratieset gebruikt, voeg je hier ook --configuration-set-name toe, zodat de test met dezelfde instellingen wordt uitgevoerd.

De inboxplaatsingstest gebruikt dezelfde opdracht. Voeg de inboxen van de providers naast het testadres toe aan ToAddresses en plaats de marker in de Subject-gegevens. Eén aanroep vult dan twee rapporten. Het tweede rapport toont in welke map het bericht bij Gmail, Outlook, Yahoo en andere providers terechtkwam. Ook die inboxen zijn niet geverifieerd, dus hiervoor heb je eveneens productietoegang nodig.

Je kunt dit ook via de console doen. Open Configuration > Identities, klik op de identiteit en kies Send test email. Selecteer Raw als je een volledig MIME-bericht met je eigen headers wilt plakken. AWS beschrijft de console als een hulpmiddel dat je doorgaans alleen voor testmails gebruikt. De documentatie vermeldt geen testprefix of andere wijziging van het bericht. In de sandbox moet het veld Custom recipient een geverifieerd adres bevatten, waardoor je weer bij het bovenstaande probleem uitkomt.

Hoe een nieuwe SES-identiteit eruitziet in het rapport

Uit het rapport · Authenticatie

  • SPFgeslaagdniet uitgelijndDe MAIL FROM is een subdomein van amazonses.com, niet van jouw domein.
  • DKIMgeslaagduitgelijndEasy DKIM ondertekent elk bericht met een 2048-bits sleutel op jouw domein.
  • DMARCgeslaagdSlaagt op basis van de uitgelijnde DKIM-handtekening zodra je een DMARC-record publiceert.

Een standaard SES-identiteit: SPF slaagt, maar voor amazonses.com. Met een aangepaste MAIL FROM lijn je dit uit.

DKIM. Easy DKIM is de standaard voor domeinidentiteiten en ondertekent elk bericht met een 2048-bits sleutel. De configuratie bestaat uit drie CNAME-records met de naam token._domainkey.yourdomain.com, die verwijzen naar token.dkim.<region>.amazonses.com. Als de DKIM-controle mislukt, controleer dan eerst twee dingen: of DNS al is bijgewerkt (AWS houdt rekening met maximaal 72 uur) en of jouw DNS-provider het domein aan de naam heeft toegevoegd en token._domainkey.yourdomain.com.yourdomain.com heeft aangemaakt. Met BYODKIM publiceer je in plaats daarvan één TXT-record met je eigen selector. Tijdens de overstap tussen beide kan SES berichten zonder handtekening versturen. Het rapport markeert dit als ontbrekende DKIM. De DKIM-checker gebruikt het token als selector.

SPF en Return-Path. SES gebruikt standaard een subdomein van amazonses.com als MAIL FROM. SPF slaagt, maar voor amazonses.com. Daarom toont het rapport SPF als niet uitgelijnd met je From-adres. Als DKIM is uitgelijnd, kost dit weinig (2 punten op de schaal van 100 punten in plaats van 5) en slaagt DMARC nog steeds op basis van DKIM. Als je ook SPF wilt uitlijnen, stel je een aangepast MAIL FROM-subdomein in met precies één MX-record, 10 feedback-smtp.<region>.amazonses.com, en een TXT-record v=spf1 include:amazonses.com ~all. Kies geen subdomein dat e-mail ontvangt en neem aspf=s niet op in je DMARC-record, omdat SPF-uitlijning met SES volgens AWS niet werkt met een strikt SPF-beleid.

DMARC. SES publiceert geen DMARC-record voor je. Het voorbeeld van AWS is v=DMARC1;p=quarantine;rua=mailto:my_dmarc_report@example.com. Als nog niemand je DMARC-rapporten leest, zou ik beginnen met p=none en het beleid later aanscherpen. De DMARC-checker toont wat je hebt ingesteld en DMARC fail behandelt de veelvoorkomende fouten.

Voorbeeldwaarden. Kopieer de echte waarden uit je account.

NaamTypeWaardeWaarvoor het dientKopiëren
token._domainkey.yourdomain.comCNAMEtoken.dkim.<region>.amazonses.comEasy DKIM. Drie records, één per token.
mail.yourdomain.comMX10 feedback-smtp.<region>.amazonses.comAangepaste MAIL FROM. Precies één MX-record op een subdomein dat geen e-mail ontvangt.
mail.yourdomain.comTXTv=spf1 include:amazonses.com ~allSPF voor de aangepaste MAIL FROM, zodat SPF wordt uitgelijnd met je From-adres.
_dmarc.yourdomain.comTXTv=DMARC1;p=quarantine;rua=mailto:my_dmarc_report@example.comDMARC, het voorbeeld van AWS. Begin met p=none als nog niemand de rapporten leest en laat aspf=s weg.

List-Unsubscribe. SES voegt List-Unsubscribe en List-Unsubscribe-Post alleen toe als je verzendt met ListManagementOptions die naar een contactenlijst en onderwerp verwijzen. Zelfs dan gebeurt dit alleen voor berichten aan één ontvanger en alleen met Easy DKIM. SES overschrijft bovendien alle uitschrijfheaders die je zelf instelt. Alle andere berichten worden zonder uitschrijfheaders verzonden. Voor een nieuwsbrief betekent dit dat de List-Unsubscribe-controle en de één-klik-controle mislukken, tenzij je de headers zelf toevoegt. Sinds maart 2024 accepteert de v2 API aangepaste headers zonder raw MIME. Deze twee headers, aangepast op basis van de blogpost van AWS over uitschrijven met één klik, zien er zo uit:

"Headers": [
  { "Name": "List-Unsubscribe",
    "Value": "<https://yourdomain.com/unsub?address=x&topic=x>, <mailto:unsubscribe@yourdomain.com>" },
  { "Name": "List-Unsubscribe-Post",
    "Value": "List-Unsubscribe=One-Click" }
]

Je endpoint moet daarna de POST verwerken. Wachtwoordresets en ontvangstbewijzen zonder lijstheaders zijn een ander geval. Hiervoor markeert het rapport de groep voor bulkverzenders als overgeslagen. Meer informatie over de header vind je op onze pagina over List-Unsubscribe.

IP's en blokkeerlijsten

Nieuwe accounts verzenden vanaf IP's die met andere SES-gebruikers worden gedeeld. AWS raadt aan deze te blijven gebruiken, tenzij je volume groot en regelmatig is. Het rapport controleert 21 blokkeerlijsten voor het verzendende IP. Bij gedeelde adressen geldt een vermelding voor de hele pool. Dedicated IPs zijn beschikbaar als Standard, waarbij je ze handmatig opwarmt, of Managed, waarbij SES het opwarmen regelt. In dat geval is een vermelding gekoppeld aan je eigen verzendingen. Elk IP dat je op het tabblad Headers vindt, kun je direct invoeren in de blokkeerlijstcontrole.

AWS houdt ook je account in de gaten. In de FAQ over handhaving staat dat je moet testen met echte adressen die e-mail kunnen ontvangen, of met de simulator, zodat niet-bestaande ontvangers je bouncepercentage niet verhogen. AWS beoordeelt een account opnieuw bij een bouncepercentage van 5% of een klachtenpercentage van 0,1%.

Het verbeterplan onderaan vermeldt maximaal acht wijzigingen, elk met het te kopiëren DNS-record als dat van toepassing is. De punten naast elke oplossing zijn de huidige strafpunten van de controles waarop deze betrekking heeft. Het model kiest en verklaart oplossingen. Het bepaalt niet hoeveel punten ze waard zijn. Als de naam van een controle je niets zegt, vind je in de documentatie uitleg over alle 42 controles.

Vragen

Kan ik testen vanuit de SES-sandbox?

Niet met ons adres. In de sandbox bezorgt SES alleen bij geverifieerde ontvangers. Als je ons adres verifieert, wordt het ene bericht dat het accepteert al gebruikt. Vraag productietoegang aan voor de Region en controleer ondertussen je records met de gratis controles voor DKIM, SPF en DMARC.

Geeft de SES-mailboxsimulator dezelfde informatie?

Nee. Deze laat zien hoe SES een bounce, klacht of bezorging afhandelt en wordt in rekening gebracht als een normale verzending. De simulator analyseert je headers, authenticatie of inhoud niet.

Moet ik SES opnemen in het SPF-record van mijn hoofddomein?

Ontvangers controleren SPF aan de hand van het MAIL FROM-domein. Dit is standaard een subdomein van amazonses.com of je aangepaste MAIL FROM-subdomein. Het SPF-record voor SES hoort op dat subdomein te staan. Volgens de MAIL FROM-pagina is op het hoofddomein niets vereist.

Handleidingen voor andere platforms

Alle integraties en handleidingen →

Test nu een e-mail

Eén adres, één e-mail, één uur geldig. Geen account. Het rapport wordt automatisch opgebouwd zodra de controles zijn afgerond.

Vraag een testadres aan