SMTP (Simple Mail Transfer Protocol) on vakiomuotoinen viestintäprotokolla sähköpostiviestien lähettämiseen yritysverkoissa ja Internetissä. SMTP kehitettiin alun perin 1980-luvun alussa ja on edelleen yksi suosituimmista käytännöistä maailmanlaajuisesti.
Sähköpostiohjelmisto käyttää tavallisimmin SMTP-lähetystä ja Post-protokollan 3 (POP3) tai Internet Message Access Protocol (IMAP) -protokollia sähköpostin vastaanottamiseen. Ikästään huolimatta tavallisessa käytössä ei ole todellista vaihtoehtoa SMTP: lle.
Miten SMTP toimii
Kaikki modernit sähköpostiohjelmaohjelmat tukevat SMTP: tä. Sähköpostiohjelmassa ylläpidetyt SMTP-asetukset sisältävät SMTP-palvelimen IP-osoitteen (samoin POP- tai IMAP-palvelimen osoitteet sähköpostien vastaanottamiseen). Web-pohjaiset asiakkaat upottavat SMTP-palvelimen osoitteen määritystensä sisällä, kun taas PC-asiakkaat tarjoavat SMTP-asetukset, joiden avulla käyttäjät voivat määrittää oman palvelimensa.
Fyysinen SMTP-palvelin voi olla vain sähköpostipalvelun ylläpitämiseen, mutta se yhdistetään usein ainakin POP3: n ja joskus muiden välityspalvelimen toimintojen kanssa.
SMTP toimii TCP / IP: n päällä ja käyttää TCP-portin numeroa 25 tavanomaiseen viestintään. SMTP: n parantamiseksi ja roskapostin torjumiseksi Internetissä standardiryhmät ovat myös suunnitelleet TCP-porttia 587 tukemaan protokollan tiettyjä puolia. Muutamia WWW-sähköpostipalveluja, kuten Gmailia, käyttää epävirallista TCP-porttia 465 SMTP: lle.
SMTP-komennot
SMTP-standardi määrittää joukon komentoja - tietyntyyppisten viestien nimiä, jotka lähettävät sähköpostiohjelmat sähköpostipalvelimeen tietojen pyytämisen yhteydessä. Yleisimmin käytetyt komennot ovat:
- HELOjaEHLO- komennot, jotka aloittavat uuden protokollasession palvelimen ja palvelimen välillä. EHLO-komento pyytää heitä vastaamaan mahdollisilla SMTP-laajennuksilla, joita hän tukee
- MAIL- komento aloittaa sähköpostiviestin lähettäminen
- RCPT- komento antaa yhden sähköpostiosoitteen nykyisen viestin vastaanottajalle
- DATA- komento, joka osoittaa sähköpostiviestin lähetyksen alkamisen. Tämä komento käynnistää yhden tai useamman seurantaviestin sarjan, joka sisältää viestin osan. Viimeksi mainittu sekvenssin viesti on tyhjä (sisältää vain jakson (.) Terminaatiorekvenssinä), joka merkitsee sähköpostin loppua.
- RSET- kun lähetetään sähköpostiviesti (MAIL-komennon antamisen jälkeen), joko SMTP-yhteyden toinen pää voi nollata yhteyden, jos se havaitsee virheen
- NOOP- tyhjää ("ei toimintaa") viestiä, joka on suunniteltu eräänlaiseksi pingiksi, jotta voidaan tarkistaa istunnon toisen pään vaste
- LOPETTAA- lopettaa protokollan istunnon
Näiden komentoiden vastaanottaja vastaa joko menestys- tai vikakoodinumeroilla.
SMTP-ongelmat
SMTP: llä puuttuu sisäänrakennetut suojausominaisuudet. Internetin roskapostittajat ovat aiemmin hyödyntäneet SNMP: tä aikaisemmin luomalla valtavia määriä roskapostiviestejä ja lähettämällä ne avointen SMTP-palvelimien kautta. Suojaus roskapostilta on parantunut vuosien varrella, mutta se ei ole helppoa. Lisäksi SMTP ei estä roskapostittajia asettamasta (MAIL-komennon kautta) fake "From:" sähköpostiosoitteita.