Simple Mail Transfer Protocol (SMTP) е стандартен комуникационен протокол за изпращане на електронни съобщения в бизнес мрежи и Интернет. SMTP първоначално е разработен в началото на 80-те и остава един от най-популярните протоколи, които се използват в световен мащаб.
Софтуерът за електронна поща най-често използва SMTP за изпращане и протоколите за получаване на поща или протокола за протокол 3 (POP3) или протокола за достъп до протокола Internet Message Protocol (IMAP). Независимо от възрастта си, не съществува реална алтернатива на SMTP в обикновената употреба.
Как работи SMTP
Всички съвременни програми за имейл клиент поддържат SMTP. Настройките за SMTP, поддържани в имейл клиент, включват IP адреса на SMTP сървър (заедно с адресите на POP или IMAP сървър за получаване на имейли). Уеб-базираните клиенти вграждат адреса на SMTP сървъра в своята конфигурация, докато клиентските компютри осигуряват SMTP настройки, които позволяват на потребителите да задават своя собствен сървър.
Физическият SMTP сървър може да бъде посветен само на обслужването на трафик на електронна поща, но често се комбинира с поне POP3 и понякога други функции на прокси сървър.
SMTP работи над TCP / IP и използва TCP порт номер 25 за стандартна комуникация. За да се подобри SMTP и да се помогне за борба с спама в интернет, стандартните групи също така са проектирали TCP порт 587, за да поддържат определени аспекти на протокола. Няколко уеб програми за електронна поща, като например Gmail, използват неофициалния TCP порт 465 за SMTP.
SMTP команди
Стандартът SMTP дефинира набор от команди - имена на конкретни типове съобщения, които пощенските клиенти изпращат до пощенския сървър, когато искат информация. Най-често използваните команди са:
- HELOиEHLO- команди, които инициират нова сесия на протокола между клиента и сървъра. Командата EHLO изисква от тях да отговарят с всички опционални разширения за SMTP, които поддържа
- MAIL- команда за иницииране на изпращане на имейл съобщение
- RCPT- команда за предоставяне на един имейл адрес за получател на текущото съобщение, което се подготвя
- ДАННИ- команда, показваща началото на предаването на имейл съобщението. Тази команда инициира серия от едно или повече последващи съобщения, всеки от които съдържа част от съобщението. Последното съобщение в последователността е празно (съдържа само период (.) Като знак за прекратяване), за да означи края на имейла.
- RSET- докато сте в процес на изпращане на имейл (след издаването на командата MAIL), в края на SMTP връзката може да се нулира връзката, ако се появи грешка
- NOOP- празно съобщение ("без операция"), проектирано като вид пинг за проверка на отзивчивостта на другия край на сесията
- QUIT- прекратява сесията на протокола
Получателят на тези команди отговаря с номера на кодовете за успех или грешка.
Проблеми с SMTP
SMTP няма вградени функции за сигурност. Интернет-спамерите са имали възможност да експлоатират SNMP в миналото, като генерират огромни количества нежелана поща и получават ги чрез отворени SMTP сървъри. Защитата срещу спам се е подобрила през годините, но не е неподходяща. Освен това SMTP не пречи на спамерите да задават (чрез командата MAIL) фалшиви имейл адреси "От:".