Simple Mail Transfer Protocol (SMTP) is een standaard communicatieprotocol voor het verzenden van e-mailberichten op bedrijfsnetwerken en internet. SMTP is oorspronkelijk ontwikkeld in de vroege jaren 80 en is nog steeds een van de populairste protocollen die wereldwijd worden gebruikt.
E-mailsoftware maakt meestal gebruik van SMTP voor verzending en van de Post Office Protocol 3 (POP3) of IMAP-protocollen (Internet Message Access Protocol) voor het ontvangen van e-mail. Ondanks zijn leeftijd bestaat er geen echt alternatief voor SMTP in het reguliere gebruik.
Hoe SMTP werkt
Alle moderne e-mailclientprogramma's ondersteunen SMTP. De SMTP-instellingen die worden bijgehouden in een e-mailclient omvatten het IP-adres van een SMTP-server (samen met de adressen van een POP- of IMAP-server voor het ontvangen van e-mails). Webgebaseerde clients embedden het adres van een SMTP-server binnen hun configuratie, terwijl pc-clients SMTP-instellingen bieden waarmee gebruikers hun eigen server naar keuze kunnen specificeren.
Een fysieke SMTP-server kan alleen worden gebruikt voor het onderhouden van e-mailverkeer, maar wordt vaak gecombineerd met ten minste POP3- en soms andere proxyserverfuncties.
SMTP draait op TCP / IP en gebruikt TCP-poort nummer 25 voor standaardcommunicatie. Om SMTP te verbeteren en spam op internet te helpen bestrijden, hebben standaardengroepen ook TCP-poort 587 ontworpen om bepaalde aspecten van het protocol te ondersteunen. Enkele web-e-maildiensten, zoals Gmail, gebruiken de niet-officiële TCP-poort 465 voor SMTP.
SMTP-opdrachten
De SMTP-standaard definieert een set opdrachten - namen van specifieke soorten berichten die klanten naar de mailserver mailen wanneer ze om informatie vragen. De meest gebruikte commando's zijn:
- HALLOenEHLO- opdrachten die een nieuwe protocolsessie starten tussen client en server. De EHLO-opdracht verzoekt hen om te reageren met eventuele optionele SMTP-extensies die het ondersteunt
- MAIL- opdracht om het verzenden van een e-mailbericht te starten
- RCPT- opdracht om één e-mailadres op te geven voor een ontvanger van het huidige bericht dat wordt voorbereid
- GEGEVENS- commando dat het begin van de verzending van het e-mailbericht aangeeft. Met deze opdracht wordt een reeks van een of meer vervolgberichten gestart die elk een stukje van het bericht bevatten. Het laatste bericht in de reeks is leeg (bevat alleen een punt (.) Als beëindigingsteken) om het einde van de e-mail aan te duiden.
- RSET- tijdens het verzenden van een e-mail (na het uitvaardigen van de MAIL-opdracht), kan elk einde van de SMTP-verbinding de verbinding resetten als er een fout optreedt
- NOOP- een leeg ("geen bewerking") bericht ontworpen als een soort ping om te controleren of het andere einde van de sessie reageert
- STOPPEN- beëindigt de protocolsessie
De ontvanger van deze opdrachten antwoordt met succes- of falencodenummers.
Problemen met SMTP
SMTP mist ingebouwde beveiligingsfuncties. Internet-spammers zijn in het verleden in staat gesteld om SNMP te exploiteren door grote hoeveelheden ongewenste e-mail te genereren en deze via open SMTP-servers te laten bezorgen. Bescherming tegen spam is in de loop der jaren verbeterd, maar is niet waterdicht. Bovendien kan SMTP niet voorkomen dat spammers (via het MAIL-commando) nep-e-mailadressen "nep" invoeren.




