Naar hoofdinhoud springen

Checklist voor succesvolle verificatie van het verzenden en afleveren van mail

De volgende software is vereist voor verdere controles:

  • De host-hulpprogramma

    • Debian/Ubuntu: apt-get install bind9-host
    • CentOS: yum install bind9-host
  • Telnet-hulpprogramma

    • Debian/Ubuntu: apt-get install telnet
    • CentOS: yum install telnet

MX-record

Een MX-record is een type DNS-record dat is ontworpen om mailservers te registreren die het SMTP-protocol gebruiken. Dit record is verantwoordelijk voor het bepalen naar welke server een e-mail moet worden afgeleverd door de mailagent van de afzender. Er zijn meerdere recordtypen met verschillende prioriteiten op één domein.

U kunt controleren of de mail lokaal werkt of een mailserver van derden gebruikt door het host-commando te gebruiken:

host -t MX example.com

Wanneer u met de lokale mailserver werkt, wordt de uitvoer als volgt weergegeven:

mail voor example.com wordt afgehandeld door 10 mail.example.com.

Het is vermeldenswaard dat de vermelding mail.example.com ook naar een andere server kan verwijzen. Daarnaast is het nodig op te merken dat mail.example.com een bestaand A-record moet zijn dat verwijst naar de server waarvan u mails verzendt.

U kunt voor controle ook deze commando's uitvoeren:

host example.com
host mail.example.com

En vergelijk de IP-adressen waarnaar het primaire domein, in dit geval example.com, en mail.example.com verwijzen.

belangrijk

Een MX-record moet zijn ingesteld zodat mailservers uw e-mail kunnen ontvangen.

Voorbeeld van een MX-record:

Naam: example.com.
Type: MX
Waarde: mail.example.com.
Prioriteit: 10

DKIM-handtekening

Met behulp van FASTPANEL® kan de DKIM-handtekening worden verkregen in het beheermenu → sectie "Mail" door op "DKIM" te klikken voor het vereiste maildomein

DKIM inschakelen in FASTPANEL

Aan de DNS-kant moet het record als volgt worden toegevoegd:

Naam: dkim._domainkey
Type: TXT
Waarde: v=DKIM1; k=rsa; p=public_key

Hier is een voorbeeld van het juiste DKIM-record

dkim._domainkey TXT v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCpbBQ0T2xO3/SwziunIC/IFbsxBRub6WXiu8Kc2w7uB4GVw+SAB5wSEslDJbFXQRbdV9i/Duu8EQ9xik8dbqdLVyP4iAtw34g4j6QWKcfocgK4hEkwlPFff1dzUlNQONh2riNE5KVJXuWcizm8hub7nPnl36e7OnxiL0qIU7tT1QIDAQAB

Meer informatie over DKIM is te vinden op https://wikipedia.org/wiki/DomainKeys_Identified_Mail

SPF-record

De aanwezigheid van een SPF-record kan worden gecontroleerd door het commando host uit te voeren. In dit geval ziet het commando er als volgt uit:

host -t TXT example.com

Met de volgende uitvoer:

example.com beschrijvende tekst "v=spf1 ip4:ipv4_of_your_server ip6:ipv6_of_your_server a mx ~all"

Merk op dat ipv6 mogelijk niet aanwezig is in deze vermelding. In dit geval ziet de SPF-handtekening er als volgt uit:

example.com beschrijvende tekst "v=spf1 ip4:ipv4_of_your_server a mx ~all"

opmerking

Het is belangrijk op te merken dat er slechts één SFP-record mag zijn

Aan de DNS-kant moet het record als volgt worden toegevoegd:

Naam: example.com.
Type: TXT
Waarde:
v=spf1 ip4:ipv4_of_your_server ip6:ipv6_of_your_server a mx ~all
of (als ipv6 niet wordt gebruikt)
v=spf1 ip4:ipv4_of_your_server a mx ~all

Bijvoorbeeld:

example.com TXT v=spf1 ip4:1.2.3.4 a mx ~all

Meer informatie over SPF is te vinden op https://wikipedia.org/wiki/Sender_Policy_Framework

DMARC-record

In de meeste gevallen is de waarde van het DMARC-record hetzelfde.

Aan de DNS-kant moet het record als volgt worden toegevoegd:

Naam: _dmarc
Type: TXT
Waarde: v=DMARC1; p=none

Bijvoorbeeld:

_dmarc.example.com. TXT v=DMARC1; p=none

Meer informatie over DMARC is te vinden op https://wikipedia.org/wiki/DMARC

PTR-record en hostnaam van de server

Het PTR-record is een omgekeerd DNS-record dat een IP-adres omzet in een naam. Het hoofddoel van dit record voor de mailserver is het elimineren van het grootste deel van de spam. Met dit record kan de naam worden bepaald van een host waarvan een e-mail afkomstig is. Meestal bevat een PTR-record een domeinnaam die op de server wordt gebruikt.

Een PTR-record koppelt een ip-adres aan een hostnaam. Als het PTR-record niet correct is opgegeven, worden uw mails geweigerd en bereiken ze de geadresseerde niet.

De hostnaam moet worden opgegeven als de naam van het daadwerkelijke domein dat naar de server verwijst, en de PTR moet verwijzen naar het domein dat op zijn beurt naar de server verwijst.

U hebt bijvoorbeeld een domein example.com op uw server.

Door het commando uit te voeren:

host example.com

kunt u de volgende uitvoer krijgen:

example.com heeft adres 1.2.3.4
mail voor example.com wordt afgehandeld door 10 mail.example.com.

Om mogelijke problemen te voorkomen, wordt aanbevolen om de hostnaam en het PTR-record in te stellen als een bestaand subdomein op het tweede niveau, bijvoorbeeld mail.example.com

Beschikbaarheid van SMTP-poorten

Sommige hostingproviders blokkeren de mogelijkheid om poorten te gebruiken die worden gebruikt om mail te verzenden of te ontvangen. Poorten voor mailservices kunnen 25, 587, 465, 143 en 993 zijn.

Een van de eenvoudigste manieren om de beschikbaarheid van deze poorten te controleren is het gebruik van het telnet-commando.

Om de inkomende verbinding vanaf een server van derden te controleren

Voer het commando uit:

telnet ip_adress port

Als u bijvoorbeeld probeert via telnet verbinding te maken met poort 25 op 1.2.3.4, dan is het uit te voeren commando:

telnet 1.2.3.4 25

Als de verbinding succesvol is, ziet u een uitvoer zoals:

Trying 1.2.3.4...
Connected to 1.2.3.4.
Escape character is '^]'.

Als de verbinding mislukt, ziet de uitvoer er als volgt uit:

Connecting To 1.2.3.4 ...
Could not open connection to the host on port some_port: Connect failed

Of:

telnet: Unable to connect to remote host: Connection timed out

Voor een uitgaande verbinding

Voer vanaf uw server het commando uit:

telnet smtp.gmail.com 25

Als de verbinding succesvol is, ziet u een uitvoer zoals:

Trying 2a00:1450:4010:c0b::6c...
Connected to smtp.gmail.com.
Escape character is '^]'.
220 smtp.gmail.com ESMTP j6-20020ac25506000000b004b53eb60e3csm1066162lfk.256 - gsmtp

Houd er rekening mee dat als u cloudhosting gebruikt en poort 25 gebruikt voor uw SMTP-server, de kans groot is dat uw hostingprovider uitgaande verbindingen op poort 25 standaard blokkeert. Hieronder ziet u links met instructies om dit probleem op te lossen:

Naast poortblokkering door uw hostingprovider moet u controleren of de poorten op uw server gesloten zijn of niet. Laten we als voorbeeld iptables nemen, dat als firewall fungeert, met behulp van het FASTPANEL-bedieningspaneel. Het commando om te controleren of er een regel is voor een specifieke poort, in dit geval 25, is:

iptables-save | grep 25

Als er geen regel is voor de poort die u wilt controleren, wordt er geen informatie weergegeven. Als u ziet dat er een regel is die de poort van de mailservice blokkeert, moet u deze regel verwijderen met het commando:

iptables -D rule chain

Stel bijvoorbeeld dat u een commando hebt uitgevoerd en het volgende hebt gevonden:

iptables-save | grep 25

-A INPUT -p tcp -m tcp --dport 25 -j DROP

Deze regel staat geen enkele toegang tot uw server via poort 25 toe, wat het verzenden van mail verhindert

Gebruik het volgende commando om de regel te verwijderen:

iptables -D INPUT -p tcp -m tcp --dport 25 -j DROP

Met dit voorbeeldcommando kunt u elke poort controleren die voor mail wordt gebruikt

Invloed van IPv6 op mailverkeer

Als u ipv6 moet gebruiken voor uw mailservices, is het eerste wat u moet doen controleren of er een PTR-record voor ipv6 bestaat en of de mailservices op bepaalde poorten naar ipv6 luisteren.

U kunt de controle uitvoeren met het commando:

netstat -nltpp | grep tcp6

Het resultaat van de uitvoer van dit commando zal een lijst zijn van alle services die ipv6 gebruiken, waaronder u al kunt controleren of uw mailservice dit adres gebruikt. Helaas kan het gebruik van ipv6 tegenwoordig mogelijk niet correct werken, zelfs als u alle instellingen correct hebt gedaan.

Als u door de logs van de mailservice te controleren hebt vastgesteld dat de fout gerelateerd is aan ipv6 en de volledige configuratie correct is, kunt u het gebruik van ipv6 voor de mailservice uitschakelen.

Bij exim4 ziet het uitschakelen van ipv6 er als volgt uit:

  1. Controleer met het commando of het ipv6-adres voor de service wordt gebruikt

    netstat -nltp | grep exim

    Controleer of het ipv6-adres door exim wordt gebruikt

  2. In het configuratiebestand /etc/exim4/exim4.conf.template moet de volgende regel helemaal bovenaan het bestand worden toegevoegd:

    disable_ipv6=true

  3. Sla de wijzigingen in het bestand op en start vervolgens de service opnieuw met een commando zoals:

    systemctl restart exim4
  4. Voer het commando uit:

    netstat -nltp | grep exim

    om te controleren of de service niet langer in de lijst staat

    Controleer of ipv6 is uitgeschakeld voor exim

Controleer het verzenden van mail met behulp van services van derden

Nadat u alle bovenstaande punten hebt gecontroleerd, kunt u het verzenden van mail vanaf uw server controleren met behulp van bronnen van derden.

Een van de handigste en meest informatieve services is https://www.mail-tester.com

Door deze te gebruiken kunt u de huidige beoordeling van uw mail controleren, informatie krijgen over of de hierboven ingestelde gegevens correct zijn, en ook een aanbeveling krijgen om de beoordeling te verbeteren.

Om dit te doen, stuurt u eenvoudig een e-mail naar het adres dat op de site staat vermeld en klikt u vervolgens op "Then check your score".

Test uw mail met mail-tester