Содержание

Что такое SMTP-сервер и зачем он нужен

Simple Mail Transfer Protocol (SMTP) — простой протокол связи, применяемый с целью пересылки электронных писем с сервера отправителя на сервер получателя. Этот протокол не рассчитан на обработку входящих сообщений, его используют для отправки и последующей доставки писем адресату. Преимущественно с помощью SMTP отправляют массовые и транзакционные рассылки.

Иногда протокол SMTP путают с IMAP или POP. Но между ними есть существенная разница. SMTP применяют для пересылки писем, тогда как POP или IMAP используют для обработки этих писем после получения.

Схема отправки письма по протоколу SMTP

SMTP-сервер — сервер, который работает по протоколу SMTP. Его главная задача выступать ретранслятором (передатчиком) между серверами отправителя и адресата. Каждый SMTP-сервер обладает собственным адресом в формате smtp.serveraddress.com. Это позволяет безошибочно определять нужный сервер при пересылке почты.

Как происходит отправка почты через SMTP

Протокол SMTP работает по несложному набору правил:

  • При отправке письма указывают отправителя и получателя.
  • Сервер направляет запросы обеим сторонам, чтобы убедиться в их существовании.
  • Сообщение передаётся по указанному адресу.

Функционал SMTP ограничивается доставкой писем. На стороне адресата электронное письмо извлекается с помощью POP и IMAP.

Отправка писем по SMTP происходит через получение ответов на команды:

  • MAIL FROM — адрес отправителя;
  • RCPT TO — адрес получателя;
  • DATA — содержание сообщения.

Пошагово отправка письма по SMTP выглядит так:

  1. Сервер отправителя получает необходимую информацию и ищет сервер на стороне получателя, чтобы передать ему письмо: по email адресата определяет почтового провайдера и запрашивает IP-адрес SMTP-сервера получателя.
  2. Сервер выполняет соединение по порту 25 и передаёт письмо серверу получателя.
  3. При отсутствии ответа сервера со стороны получателя происходит ещё несколько попыток установить соединение. Если ответа нет, сервер отправителя вернёт ошибку отправки.

 

Понять принцип работы SMTP просто, если представить себе почтальона, который забирает письмо у отправителя, находит правильный маршрут назначения и доставляет сообщение в почтовый ящик адресата.

Для работы по протоколу SMTP стандартно применяют 25 порт. Но во избежание спам-рассылок провайдеры могут закрыть к нему доступ. Тогда его заменяют дополнительными портами:

  • 465 — применяют для создания защищенного SSL-соединения
  • 587 — используют для предотвращения исходящего спама за счёт обязательной аутентификации отправителя.

Какие типы SMTP-серверов существуют

Все SMTP-серверы условно разделяют на два типа:

  • Обычные, предназначенные для отправки личной почты. Такие серверы чаще всего принадлежат провайдерам интернет-сетей, веб-хостингов либо электронной почты. Отличительная черта — ограничение по объёму писем. Обычно у каждого провайдера есть установленный дневной лимит.
  • Выделенные серверы ретрансляции SMTP, применяемые для массовых рассылок и отправки транзакционных писем. Через эти серверы можно рассылать миллионы писем, не опасаясь блокировки IP.

Также SMTP-серверы можно классифицировать в зависимости от источника. Сервер для отправки писем могут предоставить:

  • Интернет-провайдеры. Такой сервер не придется настраивать. Однако провайдеры обычно ограничивают количество писем и скорость отправки. Лимит писем, как правило, определяется тарифом.
  • Бесплатные почтовые сервисы. Большинство почтовых сервисов разрешают отправку сообщений по SMTP — Yandex, Gmail, Yahoo. Для эксплуатации сервиса потребуется авторизация с паролем и логином аккаунта. В настройках почтового клиента необходимо указать порт и тип шифрования.
    Этим способом получится настроить сервер даже на мобильном телефоне. Однако лимиты достаточно малы для массовых рассылок — в среднем 150-500 писем в сутки.
  • Хостинг-провайдеры. Располагая сайтом, можно воспользоваться сервером хостинга. Однако если с IP, который могут использовать несколько сотен сайтов, будет идти спам, почтовые службы заблокируют адрес. Если вы хотите получить полную управляемость, защиту от блокировок и выделенный IP, арендуйте у провайдера
    виртуальный SMTP-сервер
    (VPS).
  • Транзакционные email-сервисы. Данные сервисы позволяют отправлять письма через SMTP с сайта, из CRM-системы или другого веб-приложения. Достаточно зарегистрировать учётную запись и указать в нужной системе сервис в качестве отправителя.

Выбор подходящего сервера обусловлен целями компании и масштабами деятельности. При небольшом количестве писем можно обойтись бесплатными вариантами или функционалом своего сайта. Для массовых рассылок, когда количество писем достигает нескольких сотен, тысяч или миллионов, стоит обратить внимание на виртуальные серверы и коммерческие сервисы транзакционных рассылок.

 

К примеру, Unisender Go, сервис транзакционных рассылок от Unisender, позволяет отправлять миллионы писем через SMTP-сервер. Для отправки рассылок нужно всего лишь указать хост, логин и пароль.

Преимущества SMTP для email-маркетинга

Высокая доставляемость. Во избежание спама провайдеры могут блокировать отправку почты или ограничивать количество писем с одного почтового ящика. При использовании SMTP вероятность блокировки снижается за счёт обязательной авторизации пользователя. Обычно для авторизации применяют логин и пароль от учётной записи пользователя в конкретном сервисе или аккаунте.

Высокая безопасность взаимодействия. Личные данные подписчиков хранятся на сервере отправителя. SMTP-сервер лишь пересылает письмо, не сохраняя данные.

Не нужно устанавливать дополнительное программное обеспечение. Для запуска достаточно понимать принцип работы протокола и знать необходимый набор команд.

Детальные отчёты о доставке писем и возникающих ошибках. К примеру, ошибка на этапе передачи данных MAIL FROM означает, что ваш обратный адрес не понравился серверу получателя.

Высокая скорость доставки писем. При этом отправитель точно знает, получил ли адресат сообщение.

Низкая стоимость. Отправка писем через SMTP обойдётся в десятки раз дешевле в сравнении с отправкой сообщений через сервисы email-рассылок. Сервисы email-рассылок предоставляют дополнительные возможности для работы с письмами: конструкторы, шаблоны, автоматические цепочки, подробную аналитику. У SMTP-сервера лишь одна задача — доставить сообщение адресату. Когда вам требуется максимально оперативно доставить большое количество писем, например, транзакционных, лучше использовать SMTP.

Особенности применения SMTP

Несмотря на все плюсы SMTP-сервера, у него есть свои особенности, которые нужно учитывать:

  • Ограничения со стороны провайдера. Провайдер может заблокировать порт 25 с целью предотвращения спам рассылок из своей сети.
  • Проблемы с доставкой из-за грейлистинга. В процессе применения SMTP происходит множественный обмен запросами между серверами. Иногда сервер получателя перестаёт отзываться, подозревая спам. Включается автоматический фильтр спама (грейлистинг) и сервер отправителя прекращает попытки отправки. Вероятность грейлистинга нужно предусмотреть при настройке сервера. К примеру, в сервисах рассылок настраивают повторные отправки.
  • Потребность в доработке. Для отправки рассылок через SMTP-сервер его в большинстве случаев нужно настраивать. Мониторинг открытий и переходов, настройка заголовков и трек-пикселей, оперативное исправление ошибок — всё это потребует участия разработчиков.

 

Если вы планируете использовать SMTP-сервер для рассылок, но не хотите заморачиваться с настройками, воспользуйтесь готовым решением, выбрав один из сервисов транзакционных рассылок. Самое приятное, что у большинства таких сервисов есть бесплатные тарифы.

Главные мысли

Что такое SMTP -протокол. Принцип работы

В основе функционирования любой электронной почты, которой ежедневно пользуются сотни миллионов людей по всему миру, лежит использование сетевого протокола SMTP (англ. Simple Mail Transfer Protocol — простой протокол передачи данных). Он был разработан в далеком 1982 году (версия RFC 821), однако до сих пор активно применяется, пройдя несколько стадий усовершенствований (версия RFC 5321). Сегодня SMTP активно используется для отправки электронных обращений пользователя на сервер, а также электронных писем, причем тесно связан с такими протоколами, как IMAP или же POP3.

Понятие SMTP – протокола и его особенности

Для понимания того, что такое SMTP, стоит подробней рассмотреть принцип его работы и значение. С самого начала нужно отметить, что сетевой протокол SMTP относится к семейству TCP/IP, в основе которого лежит управление передачей данных на основе разбивки всей информации на определенные пакеты.

В случае обрыва соединения автоматически осуществляется повторный запрос, благодаря чему обеспечивается полная целостность передаваемых данных, а также исключение риска дублирования.

Впервые данные протокол был использован в начале 80-х годов прошлого века и являлся приложением к популярному на тот момент клиенту Unix Copy Program. При этом самым первым клиентам, функционирующим на данном протоколе, стал стэк Sendmail, который является одним из старейших агентов электронной почты MTA. Зная, что такое SMTP можно лучше понять его значения, а также то, почему он до сих пор является чрезвычайно актуальным для передачи пакетных данных в рамках e-mail.

Принцип работы протокола и его главные достоинства

Важно знать, что принцип функционирования протокола SMTP заключается в использовании ряда команд и ответов на них со стороны сервера, что представляет собой основу рабочей сессии. При этом для пользователя все выглядит максимально просто, поскольку ему для отправки электронного письма достаточно просто ввести в командную строку наименование e-mail получателя.

В основе канала связи, используемого для передачи данных, лежит соединение TSP сумевшее отлично рекомендовать в плане надежности, высокой защиты и безопасности передаваемых данных. В ходе рабочей сессии как клиент, так и сервер обмениваются между собой всеми необходимыми параметрами, причем на высокой скорости. Вся операция протокола включает в себя определенную комбинацию, в состав которой входят следующие ответы и команды:

1. RCPT TO. Команда, благодаря которой определяется конкретный получатель пересылаемого электронного письма.

2. MAIL FROM. Команда, с помощью которой предусматривается обозначение обратного электронного адреса.

3. DATA. Действия, которые отвечают за отправку текста конкретного электронного сообщения. Здесь выделяются заголовок и текст, разделенные между собой пустой строчкой.

Интересно отметить, что первоначальным клиентом SMTP может выступать не только почтовый клиент определенного получателя, но также агент пересылки корреспонденции на сервере. Зная, что такое SMTP, можно выделить его главные достоинства:

  • высокая надежность в плане защиты данных от искажения, утраты или хищения;
  • использование простых и понятных команд: RSET, EXPN, MAIL, NOOP, TURN, AUTH, VRFY, SAML и ряда других;
  • возможность одновременно выступать клиентам своего локального хоста, а также клиентом своей электронной почты;
  • применение современных механизмов аутентификации: PLAIN, GSSAPI , NTLM, CRAM-MD5 и DIGEST-MD5.

Примечательно, что изначальным хостом (то есть, SMTP-клиентом) может быть как агент пересылки сообщений (MTA) на сервере, так и почтовый клиент конкретного (конечного) пользователя (который функционально определяется как почтовый агент — MUA).

Для чего используется протокол SMTP?

С 2008 года для передачи пакетных данных в e-mail активно используется ESMTP (англ. Extended SMTP), что представляет собой масштабируемое расширение традиционного протокола. Универсальность разработки заключается в том, что данный вид связи, в основе которого лежит сервисы рассылок (UniSender)TCP, применяется каждый раз, когда требуется отправить электронное письмо через следующее:

1. Сервисы рассылок (UniSender).

2. Web-сервисы (Gmail, Mail.ru).

3. Десктопные программы (Outlook, Thunderbird, TheBat).

4. Почтовые серверы поисковых систем (GMail, Mail.Ru, Yandex и других ).

Говоря о том, что такое SMTP, важно понимать, что данный протокол используется только как доставщик корреспонденции внутри сети, который не может по команде изъять электронное сообщение с удаленного сервера или же каким-то образом управлять почтовым ящиком e-mail.

Значение протоколов POP и IMAP

Для комплексного управления, а также извлечения почты используются протоколы IMAP и POP, на которых стоит остановиться подробнее:

1. POP (Post Office Protocol). Представляет собой сетевой протокол, разработанный с целью идентификации пользователя, а также возможности оперативной доставки корреспонденции с почтового сервера. В качестве идентификации здесь используется сочетание логина и пароля. Самым быстрым протоколом такого типа считается POP3.

2. IMAP (Internet Message Access Protocol). Протокол такого типа предназначен для хранения текстовых и прочих сообщений в директориях файлов, расположенных на сервере. С его помощью также можно осуществлять быстрый и удобный поиск сообщений, причем прямо по названию.

Простой протокол передачи почты (SMTP)

Введение

В этом блоге мы собираемся обсудить простой протокол передачи почты, который является одним из протоколов прикладного уровня. Прежде чем изучать простой протокол передачи почты (SMTP), вы должны иметь базовое представление об электронной почте. Итак, давайте начнем. Обсуждение будет сосредоточено на следующих темах: Что такое электронная почта, Что такое SMTP, Работа SMTP, Типы простого протокола передачи почты, преимущества и недостатки простого протокола передачи почты. Мы считаем, что этот блог был полезен для вас.

Электронная почта — это один из способов отправки и получения информации в виде сообщений через Интернет. Хотя электронная почта и традиционная почта выглядят одинаково, между ними есть ключевые различия. Разница между традиционной почтой и электронной почтой заключается в том, что на традиционную почту обычно ссылаются с именем администратора, почтовым адресом, городом, штатом и почтовым индексом, тогда как электронная почта всегда пишется в стандартном формате, но сильно отличается от традиционной почты. Более того, доставка обычной почты может занять пару дней или пару недель, а электронная почта может быть доставлена ​​мгновенно.

В современном мире технологий электронная почта становится одной из самых важных услуг в Интернете. Простой протокол передачи почты определяет набор правил связи, которые позволяют нам передавать электронную почту через Интернет. Основная цель простого протокола передачи почты — установить правила связи между серверами.

Серверы могут идентифицировать себя и объявить, какой тип связи они ожидают. Они также могут обрабатывать такие ошибки, как неверные адреса электронной почты. Вы, должно быть, заметили, что если вы отправляете сообщение на неправильный адрес электронной почты, оно возвращается к вам с некоторым сообщением об ошибке.

Работа с простым протоколом передачи почты

Теперь мы шаг за шагом обсудим работу с простым протоколом передачи почты:

1. Состав электронной почты: Электронная почта создается с помощью почтового агента пользователя, также известного как MUA. Почтовый пользовательский агент (MUA) представляет собой набор инструкций (программ), которые используются для отправки и получения почты. Сообщение состоит в основном из двух компонентов: заголовка и тела.

Заголовок содержит легкую информацию, такую ​​как адрес отправителя, тогда как тело является важной частью и включает в себя основную информацию, которая должна быть доставлена.

2. Отправка электронного письма: После успешного создания электронного письма почтовый клиент становится активным и отправляет готовое электронное письмо на SMTP-сервер.

3. Доставка электронной почты: Адрес электронной почты состоит из двух компонентов: доменного имени и имени пользователя администратора. Например, в [email protected] connect — это имя пользователя, а boardinfinity.com — доменное имя. Если доменное имя получателя отличается от доменного имени отправителя, то в таких случаях MSA передаст сообщение агенту пересылки почты (MTA).

4. Получение и обработка почты: В момент сбора входящего сообщения сервер обмена отвечает за его передачу на сервер входящей почты (агент доставки почты).

5. Доступ и извлечение почты: Агент пользователя почты (MUA) отвечает за извлечение собранной почты в MDA.

Типы простого протокола передачи почты

Существует два типа простого протокола передачи почты:

1. Сквозной метод: Сквозной метод подходит для обеспечения связи между  различными организациями. SMTP-клиент устанавливает связь с целевым хостом SMTP для бесперебойной передачи почты в пункт назначения.

2. Метод сохранения и пересылки: Метод сохранения и пересылки работает таким образом, что сначала сообщение, отправленное исходным устройством, сохраняется на сервере. Затем сервер отвечает за изучение целевого устройства из базы данных серверов.

Преимущества простого протокола передачи почты

  • SMTP позволяет пользователям отправлять почту в большом количестве.
  • Покрывает большую площадь.
  • Низкая стоимость.
  • Надежная доставка электронной почты.

Недостатки простого протокола передачи почты

  • Безопасность — более серьезная проблема.
  • Брандмауэры могут блокировать общий порт SMTP.
  • Если сообщение превышает определенную длину, то в таких случаях SMTP может отклонить все сообщение.
  • Иногда доставка задерживается из-за обмена данными между серверами.

Заключение

В этом блоге мы обсуждали простой протокол передачи почты. Мы в основном обсудили следующие темы: Что такое электронная почта, Что такое SMTP, Работа SMTP, Типы простого протокола передачи почты, преимущества и недостатки простого протокола передачи почты. Мы считаем, что этот блог был полезен для вас.

Как это работает и почему это важно [2023]

SMTP — это основной протокол, используемый для связи по электронной почте. Скорее всего, это стоит за электронными письмами, которые мы отправляем и получаем каждый день. Хотя это простой протокол, он по-прежнему включает в себя несколько компонентов и множество деталей.

В этой записи блога мы более подробно рассмотрим SMTP и рассмотрим его основные функции и функции.

Что такое SMTP?

SMTP или Простой протокол передачи почты — это протокол прикладного уровня, который позволяет передавать электронную почту между различными серверами и компьютерными сетями. Он делает это, определяя правила общения.

Первоначальная модель была представлена ​​в 1982 году. Согласно RFC 821, пользователь создает запрос на подключение. В ответ SMTP-отправитель инициирует двустороннее соединение с SMTP-получателем. Говоря современным языком, это SMTP-клиент и SMTP-сервер соответственно. SMTP-клиент и SMTP-сервер взаимодействуют с помощью команд и ответов (подробнее об этом позже), подобно реальным разговорам.

RFC 821 также определяет модель использования SMTP. Схему вы можете увидеть на иллюстрации ниже.

Источник: RFC 821

После установления соединения SMTP-клиент будет передавать заголовки, получателей, текстовые сообщения (включая вложения) и все данные на SMTP-сервер шаг за шагом. Когда передача будет завершена, соединение будет закрыто.

По определению, полная форма SMTP — это когда SMTP-клиенты поддерживают ретрансляцию, очереди электронной почты и функции альтернативного адреса. Это называется полнофункциональным SMTP. Если эти функции не поддерживаются, SMTP не может работать в полной мере. В этом случае соответствующие RFC рекомендуют вместо этого использовать протокол отправки сообщений.

Имейте в виду, что SMTP может отправлять только простые сообщения, т. е. обычный текст без вложений. Мы используем отдельный протокол, Многоцелевые расширения почты Интернета, MIME (RFC 2045), для отправки вложений, тел сообщений, превышающих ограничения на количество символов, установленные SMTP, сообщений на языках, отличных от английского, и в форматах HTML/CSS.

MIME — это дополнительный протокол, расширяющий возможности SMTP, но не работающий отдельно. Большинство современных почтовых сервисов поддерживают MIME.

Что такое ESMTP?

ESMTP или расширенный простой протокол передачи почты был впервые представлен в 1995 году в RFC 1869. Цель состояла в том, чтобы создать единую структуру для всех будущих расширений. Расширения направлены на добавление функций, которых нет в SMTP по умолчанию. RFC 5321 объединил и устарел предыдущие документы.

ESMTP использует новую команду EHLO для установления соединения. Это также позволяет использовать дополнительные параметры в командах SMTP MAIL FROM и RCPT TO. В результате ESMTP снимает ограничение в 512 символов для дополнительных параметров и оставляет его только для случаев, когда дополнительные параметры не определены.

Сегодня широко используются как ESMTP, так и SMTP. Если команда EHLO не поддерживается, соединение должно вернуться к SMTP и его команде HELO.

Говоря о расширениях, следует также упомянуть расширение SMTP-AUTH, которое добавляет в процесс этап аутентификации. Это означает, что почтовый клиент должен войти на почтовый сервер, используя свое имя пользователя и пароль. Хотя SMTP-аутентификация не может защитить от спуфинга, это важная мера безопасности.

Что такое SMTPS?

SMTPS или простой протокол передачи почты Безопасный — это метод защиты SMTP с помощью протоколов безопасности транспортного уровня (TLS) или протокола защищенных сокетов (SSL). Эти уровни безопасности шифруют сообщения, чтобы предотвратить просмотр содержимого электронных писем спамерами или мошенниками.

Хотя SSL по-прежнему широко используется, TLS (точнее, его версия 1.3) считается самым безопасным протоколом для шифрования электронной почты. Для получения дополнительной информации о безопасности SMTP прочитайте наш специальный пост в блоге.

Типы SMTP

RFC 5321 различает между четырьмя типами SMTP -систем:

  • , происходящие SMTP — это первая система, которая взаимодействует с Интернетом, как он вводит почту;
  • Доставка SMTP — это система, которая получает электронные письма из Интернета и доставляет их получателям;
  • Relay SMTP ретранслирует электронную почту между SMTP-серверами или MTA (подробнее об агенте передачи ниже) без какого-либо изменения сообщения;
  • Шлюз SMTP или SMTP-шлюз также передают электронные письма между разными серверами, но, в отличие от ретранслятора SMTP, при необходимости могут преобразовывать сообщения. Шлюзы SMTP обычно представляют собой брандмауэры, перезаписывающие адреса, или промежуточные SMTP-серверы.

Инфраструктура SMTP

Как мы видели выше, основными компонентами модели SMTP являются User, Sender-SMTP (SMTP-клиент) и Receiver-SMTP (SMTP-сервер). Однако почтовые агенты также участвуют в процессе отправки и получения электронных писем. Кроме того, модель SMTP включает ретрансляцию SMTP в определенных сценариях. Давайте посмотрим, что означает каждый из них и какую функцию они выполняют.

SMTP-сервер

SMTP-сервер — это приложение для отправки электронной почты. Он получает электронные сообщения от почтовых клиентов (Gmail, Yahoo! Apple Mail, AOL и др.) и передает их на другие серверы. Это могут быть другие SMTP-серверы или сервер входящей почты.

Почтовый сервер SMTP может быть локальным или облачным. Локальный SMTP-сервер — хороший вариант для тех, кто не хочет зависеть от сторонних серверов. С другой стороны, облачный SMTP-сервер требует меньше усилий и в большинстве случаев может быть более безопасным.

Почтовые агенты

Существует четыре основных агента:

  • MUA (почтовый агент пользователя) — это почтовый клиент, о котором мы упоминали выше. Это приложение или веб-сайт, который вы используете для отправки и получения сообщений электронной почты.
  • MSA (агент отправки почты) получает электронные письма от почтового клиента, проверяет их заголовки и проверяет правильность указания адресов.
  • MTA (Агент передачи почты) — это программа для отправки почты, которая обрабатывает и передает электронные письма. Он получает сообщения от MSA. Большинство современных MTA берут на себя обязанности MSA. В этом случае передача сообщений не будет включать MSA. Наиболее популярными MTA являются Sendmail, Postfix и Exim.
  • MDA (агент доставки почты) является последним агентом перед тем, как ваши электронные письма будут доставлены на SMTP-сервер получателя, а затем получены через серверы входящей электронной почты (IMAP или POP3).

Обратите внимание, что границы между обязанностями агентов иногда могут быть размыты, но они все же полезны в иллюстративных целях. В реальном мире MUA, MTA и SMTP-серверы являются наиболее важными компонентами доставки электронной почты.

Ретрансляция SMTP 

Ретрансляция SMTP — это процесс передачи электронной почты между SMTP-серверами, размещенными в разных доменах (например, с @gmail.com на @yahoo.com).

MTA проверяют, совпадают ли доменные имена. Если они есть, реле SMTP не произойдет. Но если домены не совпадают, MTA будут запрашивать записи системы доменных имен (DNS), чтобы найти IP-адрес для домена получателя. Как только IP-адрес будет обнаружен, они будут маршрутизировать сообщение между одним или несколькими MTA (ретранслятор SMTP), пока оно не будет окончательно доставлено на SMTP-сервер получателя.

Как работает SMTP?

Сеанс SMTP начинается, когда клиент открывает соединение по протоколу управления передачей (соединение TCP, иногда называемое TCP/IP) с сервером SMTP. Сервер отвечает открывающим сообщением, выраженным кодом 250. Этот процесс часто называют рукопожатием SMTP.

Затем клиент отправляет команду HELO (EHLO для ESMTP) и идентифицирует себя. Часто за командой следует доменное имя или IP-адрес. Говоря нетехническим языком, клиент говорит: «Здравствуйте, меня зовут Джон Клиент, я отправляю электронное письмо с gmail.com, и мой IP-адрес — 192.0.2.0». Сервер снова ответит кодом 250.

После этого начнется этап передачи электронной почты. Содержимое электронной почты будет передано шаг за шагом с помощью команд MAIL FROM ([email protected]), RCPT TO ([email protected]) и DATA («Привет, как дела?»). Если сервер примет транзакцию, клиент передаст заголовки электронной почты. Необходимо использовать индикатор конца строки (точка «.») после того, как все будет передано.

Сервер ответит кодом 250, если транзакция прошла успешно. Клиент инициирует завершение SMTP-соединения с помощью команды QUIT, а сервер закроет канал передачи с кодом 221.

Это, конечно, упрощенный пример без SMTP-ретрансляции, переадресации, шлюзов и кодов ошибок. Дополнительную информацию об этом см. в RFC 5321. 

Что насчет очереди SMTP?

Очередь SMTP — это набор сообщений электронной почты, ожидающих доставки. Электронные письма обычно помещаются в очередь, когда принимающий SMTP-сервер не готов принимать электронные письма или вы отправляете большие объемы одновременно. Когда сервер ответит, электронные письма будут доставлены одно за другим. Очередь SMTP — это своего рода буфер между вами и принимающим сервером.

SMTP-команды и ответы

Мы упомянули некоторые SMTP-команды и ответы в приведенном выше примере. Но при отправке электронных писем с помощью SMTP вы можете столкнуться с другими командами и ответами.

Обычно команды представляют собой строки буквенных символов, заканчивающиеся на . Если следуют дополнительные параметры, символы будут завершаться .

Ответы (или ответы) — это числовые коды завершения, которые могут быть положительными или отрицательными. Обычно за ними следует текстовая строка.

Команды и ответы состоят из набора символов ASCII.

Команды

  • HELO / EHLO — инициирует запуск SMTP-сессии.

Синтаксис: "EHLO" SP ( Домен / адрес-литерал ) CRLF или "HELO" SP Домен CRLF

  • ПОЧТА ОТ — инициирует почтовую транзакцию и включает обратный путь и иногда необязательные параметры.

Синтаксис: MAIL FROM: [SP ]

  • RCPT TO — указывает получателя(ей) и включает их адрес электронной почты (также известный как прямой путь) в качестве аргумента.

Синтаксис: RCPT TO: [ SP ]

  • DATA — запрашивает у сервера разрешение на передачу данных и делает это после получения положительного ответа.

Синтаксис:  "DATA" CRLF

  • VRFY  – просит сервер проверить, существует ли почтовый ящик в аргументе на локальном хосте.

Синтаксис: "VRFY" SP String CRLF

  • EXPN – делает то же самое, что и VRFY, но для списка рассылки.

Синтаксис: "EXPN" SP String CRLF

  • NOOP – проверяет способность сервера отвечать.

Синтаксис: "NOOP" [SP String] CRLF

  • QUIT — инициирует завершение соединения

Синтаксис: "ВЫХОД" CRLF

  • ПОМОЩЬ — запрашивает сервер проверить, какие команды он поддерживает. Он может включать в себя определенную команду в качестве аргумента.

Синтаксис: "HELP" [SP String] CRLF

  • RSET – сбрасывает SMTP-соединение и стирает все буферы и таблицы состояний. SMTP-соединение будет возвращено в исходное состояние.

Синтаксис: "RSET" CRLF

Протокол SMTP может также поддерживать некоторые команды ESMTP, такие как STARTTLS, AUTH и другие.

Ответы

Общие положительные ответы
  • 250 – запрошенное действие выполнено или выполнено
  • 211 – статус системы или ответ на HELP
  • 220 — служба <домен> готова
  • 221 – <домен> закрывает канал передачи
  • 354 — начать ввод почты (обычно отвечает на команду DATA)
Отрицательные ответы или коды ошибок
  • 500 — синтаксическая ошибка или команда не может быть распознана
  • 503 — неверная последовательность команд
  • 252 — сервер не может верифицировать пользователя. Он по-прежнему примет сообщение и попытается доставить его (отвечает на команду VRFY)
  • .
  • 450 — почтовый ящик недоступен
  • 510 – неверный адрес электронной почты

Порты SMTP

Порты SMTP — это конечные точки связи, которые помогают определить точное местоположение интернет-адресов. Чаще всего с SMTP используются порты 25, 465, 587 и 2525. 

  • 25 — это самый старый порт SMTP, но его использование для отправки электронной почты уже не является распространенным явлением. Поскольку у него нет механизмов безопасности, спамеры активно им злоупотребляют. По этой причине поставщики интернет-услуг (ISP) обычно блокируют порт номер 25. Рекомендуется использовать его только в качестве порта ретрансляции.
  • 465 более безопасен по сравнению с 25, но это не официальный SMTP-порт, и он устарел. Он поддерживает шифрование SSL. Тем не менее, рекомендуется избегать его использования, когда это возможно.
  • 587 — порт SMTP по умолчанию, рекомендуемый для STARTTLS. Его поддерживают почти все поставщики услуг электронной почты.
  • 2525 является альтернативой 587. Его можно использовать, когда 587 заблокирован или недоступен. 2525 никогда не был признан официальным портом SMTP. Несмотря на это, большинство интернет-провайдеров разрешают транзакции через этот порт.

Сравнение SMTP, IMAP и POP3

Помимо SMTP, наиболее распространенными протоколами электронной почты являются IMAP и POP3. SMTP — это сервер исходящей электронной почты, используемый для отправки и доставки электронных писем. IMAP и POP3 — это протоколы доступа к сообщениям, используемые для получения входящих сообщений с почтового сервера.

IMAP — это протокол доступа к сообщениям в Интернете, который подключается к серверу и загружает сообщения по запросу. Сообщения не будут удалены после разрыва соединения. С помощью IMAP пользователи могут получать доступ к своей электронной почте с любого компьютера или устройства.

POP3 или Post Office Protocol 3 также подключается к серверу, но загружает все полученные сообщения. Как только это будет завершено, он удалит все электронные письма с сервера. В отличие от IMAP, POP3 зависит от устройства.

Более подробная информация о различиях между этими протоколами доступна здесь.

Как отправлять электронные письма с помощью SMTP 

Одним из основных преимуществ SMTP является простота отправки электронных писем из разных приложений или устройств. Большинство языков программирования позволяют пользователям маршрутизировать исходящие электронные письма через SMTP либо изначально, либо с помощью различных библиотек. В отличие от веб-API (или API электронной почты), интеграция SMTP не требует продвинутых навыков программирования.

Для выполнения этой задачи вам потребуются рабочие учетные данные SMTP (такие как хост, порт, имя пользователя, пароль и шифрование) и соответствующий язык программирования. Вы можете проверить наш недавний пост в блоге для получения более подробной информации об этом.

SMTP как услуга — тестирование и отправка

SMTP (точнее, SMTP-сервер) предоставляется пользователям как услуга для двух основных целей — тестирования и отправки.

С точки зрения тестирования служба SMTP подразумевает поддельный SMTP-сервер, который перехватывает исходящую почту. Таким образом, электронные письма не попадают в настоящие почтовые ящики, создавая безопасную среду для тестирования.

Когда речь идет об отправке электронной почты, служба SMTP является синонимом службы ретрансляции SMTP. Поставщики электронной почты имеют свои собственные SMTP-серверы, которые позволяют пользователям отправлять маркетинговые или транзакционные электронные письма.

В идеале эти две службы SMTP можно объединить в один надежный инструмент, такой как Mailtrap.

Mailtrap — это платформа доставки электронной почты, которая сочетает в себе тестирование и отправку электронной почты. Это полная инфраструктура электронной почты, которая позволяет пользователям тестировать SMTP-сервер, отправлять с него электронные письма и отслеживать их производительность с помощью действенной аналитики.

Email Testing — это песочница, которая фиксирует весь SMTP-трафик в виртуальном почтовом ящике и устраняет возможность рассылки спама пользователям. Вы можете легко проверять и отлаживать свои электронные письма на этапе подготовки с помощью проверки HTML/CSS или спама, просматривать техническую информацию или использовать функции ручной/автоматической пересылки.