technisch · antwoord met bronnen
SMTP-server: definitie en technisch overzicht
Een SMTP-server is een applicatie die het Simple Mail Transfer Protocol implementeert om uitgaande e-mailberichten te versturen, te ontvangen en te relayen tussen clients en andere servers. Hij werkt als een digitaal postkantoor: hij accepteert een bericht van een afzender en routeert het via internet naar de mailserver van de ontvanger.
Hoe het technisch werkt
Het proces begint wanneer een Mail User Agent een request naar de SMTP-server stuurt. De server gebruikt een reeks commando's: HELO of EHLO om een verbinding op te zetten, MAIL FROM om de afzender te identificeren en RCPT TO om de ontvanger op te geven. Na het DATA-commando verzendt de server de berichttekst en de headers. Zit de ontvanger op een ander domein, dan vraagt de server in de DNS het MX-record op om de bestemmingsserver te vinden en relayt hij het bericht daarheen.
Waarom het belangrijk is voor afzenders
SMTP-servers zijn cruciaal om ervoor te zorgen dat e-mails correct worden gerouteerd en door ontvangende systemen worden geaccepteerd. Een goede serverconfiguratie, gecombineerd met authenticatierecords als SPF en DKIM, voorkomt dat berichten als spam worden gemarkeerd. Met een gespecialiseerde SMTP-relaydienst kunnen developers grote volumes transactionele mail verwerken zonder de reputatie van hun primaire zakelijke mailserver op het spel te zetten.
Veelgemaakte fouten in de praktijk
Een veelgemaakte fout is de verkeerde poort gebruiken voor het type verbinding. Poort 25 wordt vaak door ISP's geblokkeerd om spam tegen te gaan, terwijl poort 587 de standaard is voor submission. Een andere veelvoorkomende fout is STARTTLS of impliciete TLS weglaten, waardoor credentials en berichtinhoud onversleuteld over de lijn gaan. Developers moeten hun SMTP-credentials ook in omgevingsvariabelen opslaan in plaats van ze hard in de broncode van de applicatie te zetten.
Concreet implementatievoorbeeld
In een Node.js-omgeving kan een developer een library als Nodemailer gebruiken om verbinding te maken met een SMTP-server. Hij geeft het hostadres op, zoals smtp.sendgrid.net, poort 587 en een beveiligde authenticatietoken. De applicatie stuurt het e-mailobject vervolgens naar de server, die de complexe routering en bezorging naar de eindbestemming afhandelt. SendHQ biedt gratis tools op https://sendhq.cc/tools om je e-mailinfrastructuur te beheren.
Relay vs. submission
SMTP-servers werken meestal in twee modi. Submissionservers accepteren mail van eindgebruikers en voeren authenticatie uit om de identiteit van de afzender te verifiëren. Relayservers verplaatsen mail tussen verschillende SMTP-servers in het netwerk. Een relayserver die zonder authenticatie mail uit elke bron accepteert, heet een open relay. Dat is een ernstig beveiligingsrisico en wordt door moderne mailfilters bijna altijd geblokkeerd.
Vragen die teams stellen
Wat is het verschil tussen SMTP en IMAP?
SMTP wordt uitsluitend gebruikt voor het versturen of relayen van uitgaande mail. IMAP en POP3 worden gebruikt om berichten uit een mailbox op een server op te halen en te beheren.
Welke SMTP-poort moet ik gebruiken om veilig te verzenden?
Poort 587 is de branchestandaard voor mailsubmission met STARTTLS. Poort 465 wordt gebruikt voor impliciete TLS, terwijl poort 25 vooral bedoeld is voor relay tussen servers.
Waarom weigert mijn SMTP-server mijn e-mails?
Weigeringen ontstaan meestal door mislukte authenticatie, een IP-adres dat op een blacklist staat of ontbrekende DNS-records zoals SPF en DKIM die de afzender verifiëren.
Kan ik mijn eigen SMTP-server draaien?
Ja, maar dat vergt flink wat onderhoud aan je IP-reputatie en DNS-configuratie om te voorkomen dat grote providers je als spam aanmerken.