Что такое SMTP-протокол и как он устроен?
SMTP (Simple Mail Transfer Protocol) — протокол передачи почты. Он был представлен еще в 1982 году, но не теряет актуальности до сих пор. В статье разбираемся, какие задачи решает протокол и как он работает.
Для чего используется SMTP
У протокола две главные задачи:
- Проверка корректности настроек системы и предоставление «разрешения» на отправку email-сообщения для определенного устройства.
- Отправка исходящего сообщения на заданный адрес электронной почты и подтверждение успешной доставки. Если сообщение доставить не удается, отправитель получает соответствующее извещение.
SMTP и его место в стеке TCP/IP
Теоретически SMTP умеет работать с практически любыми протоколами так называемого транспортного уровня, включая TCP, UDP и другие. Еще на заре развития протокола за ним закрепили два номера порта:
- Первый — это порт 25, посредством которого почта передается между почтовыми серверами.
- Второй — порт 587, благодаря которому почта передается от почтового клиента на сервер.
В большинстве случаев протокол SMTP используется для передачи исходящей почты с использованием порта TCP 25. То есть можно сказать, что SMTP-порт — это как раз TCP 25, хоть и не всегда. Иногда задействуется еще порт 465. Так происходит, когда порт требует защищенного SSL-соединения.
Но в большинстве случаев используется лишь один транспортный протокол TCP с портом 25 (это SMTP-порт по умолчанию). Другие варианты применяются крайне редко, например, когда провайдеры по какой-то причине закрывают доступ к 25 порту. Они могут делать это, например, для блокировки спам-рассылок.
Электронное письмо и его формат
Сообщение электронной почты всегда состоит из трех элементов:
- Так называемый конверт.
- Заголовок.
- Тело письма.
Конверт применяется для передачи сообщений электронной почты от клиенту к серверу и обратно. При этом как клиент, так и сервер взаимодействуют друг с другом в обычном формате «запрос-ответ». В ходе взаимодействия между ними передаются текстовые строки.
Что касается заголовка и тела письма, то их параметры прописаны в отдельном документе — RFC2822.
Формат поля заголовка Received:
Received:
From host
by host
via physical-path
with protocol
id message-id
for final e-mail destination
Это поле используется для идентификации тех SMTP-серверов, которые были задействованы в процессе доставки сообщения от отправителя к получателю. Любой сервер из цепочки добавляет к сообщению собственное поле Received, где можно видеть техническую информацию об этом сервере.
Return-Path — поле возврата, которое используется для определения маршрута, по которому прошло сообщение. Если оно было отправлено прямо на сервер получателя, то в поле отображается один адрес. Если же серверов несколько, они будут отображаться списком.
Команды и ответы SMTP
Команды
Все они состоят из четырех символов. Сакрального замысла здесь нет, просто в самом начале разработчики договорились, что длина будет именно такой. Ниже — основные команды SMPT. Есть и другие, но они используются реже.
- Команда Helo применяется для установки соединения. Эта операция будет выполнена только в том случае, если клиент указал свой домен и собственный почтовый адрес.
- Команда Mail применяется для задания адреса отправителя.
- Команда RCPT используется исключительно для того, чтобы прописать адрес получателя. Электронное сообщение можно передать сразу нескольким получателям, для чего требуется использовать команду RCPT несколько раз подряд.
- Команда DATA нужна для уведомления принимающего сервера о завершении конверта, после чего идет само письмо.
- Команда QUIT применяется для разрыва соединения с сервером сразу после завершения приема сообщения.
Ответы SMTP
Здесь все одновременно и проще, и сложнее. Ответы в случае SMTP состоят из двух частей:
- Код сообщения. Дает возможность изучить корректность и правильность отправки.
- Текстовое сообщение. Объясняет, что произошло в ходе отправки или получения. Как правило, сообщение формируется для того, что произошло. В подавляющем большинстве случаев такое сообщение предназначено для людей, а не компьютеров.
Коды сообщений начинаются на 2, 3, 5. Если сообщение начинается на 2, это значит, что предыдущая команда успешно завершена. «Тройка» в коде означает успешную отправку с необходимостью предоставить дополнительные данные.
Если сообщение начинается на 5, это означает технический сбой. Так, ошибка 502 — индикатор нереализованной команды, а 503 сообщает о неправильной последовательности команд.
Как работает SMTP — простыми словами
Давайте представим, что вы установили и настроили собственный SMTP-сервер. Далее вы планируете отправить письмо. Работает отправка по определенному алгоритму:
- Указывается адрес отправителя, после чего система пользователя соединяется, к примеру, с SMTP почтового клиента Gmail.
- Система передает серверу данные, включая email отправителя и получателя, тему письма, его содержимое.
- Сразу после этого система начинает поиск SMTP-сервера получателя электронного сообщения.
- Если этот сервер не найден или он не отвечает, SMTP-сервер пытается предпринять еще несколько попыток связи. Если ничего не получается, то система выдает ошибку отправки. При этом протокол сообщит, почему письмо не будет доставлено. Так, проблема может быть в несуществующем адресе или в блокировке сообщений.
Если все хорошо, то далее в работу вступают уже другие протоколы — POP и IMAP, но о них мы поговорим в другой статье.
Пример работы SMTP
В качестве примера давайте рассмотрим пример сеанса SMTP, который инициализируется при необходимости отправить электронное письмо. На картинке ниже — данные сеанса, с которыми мы будем работать дальше.
Здесь мы видим подключение к почтовому серверу по 25 порту. Говоря техническим языком, подключение выполнено по адресу 220 smtp.example.ru ESMTP Postfix на 25 порт. Начало подключения — использование команды HELO, которая нужна для указания собственного домена. После этого вступает в работу сервер, который возвращает статус 250. Что это такое? Все просто: соединение установилось без проблем. После этого сервер еще раз пишет доменное имя в текстовом сообщении.
Теперь наступает очередь использования команды Mail FROM, которая нужна для отображения адреса отправителя сообщения. Если все хорошо, то сервер снова отвечает сообщением со статусом 250. Мы видим, что с текстовой частью все хорошо, команда выполнена, проблем не возникло.
Наступает следующий этап — использование команды RCPT TO для того, чтобы указать адрес получателя. Если сервер возвращает статус 250, то мы уже знаем, что это означает. Все удалось, теперь нужно выполнить команду DATA для ввода самого письма. В этом случае сервер отвечает уже не статусом 250, а другим — 354. После этого можно начинать вводить текст письма. Важный нюанс: заканчиваться все это должно отдельной строкой, которая содержит всего одну точку.
Сообщение всегда состоит из двух частей. Первая — заголовок, вторая — тело сообщения. Последнее необходимо отделять от заголовка пустой строкой. В этом случае требуется использовать заголовок FROM, это адрес пользователя, отправившего сообщение. Указывать нужно не только сам адрес, но и имя. А еще требуется заголовок, который дает получателю понять, в чем заключается основной посыл сообщения. Что касается пустой строки, то она отделяет заголовки от тела письма.
Возьмем самое простое сообщение, которое состоит из двух строчек текста: это «Hello, email world!» и «Hello, SMTP!». Заканчивается письмо строкой, которая содержит всего одну точку. Но эта строчка не будет видна получателю, она чисто техническая и будет обязательно убрана в ходе передачи. Если же точка нужна, то нужно указать сразу две точки, из которых одна будет удалена.
Наконец, если есть точка, то сервер видит, что письмо полностью завершено, выдавая статус сообщения 250 2.0.0 Ok: queued as 7FD9DC2E0060. Все это означает, что письмо уже находится в очереди ожидания. Для завершения сеанса нужно ввести всего одну команду — QUIT. Сервер ответит сообщением со статусом 221, что означает «пока».
Нужен ли собственный сервер SMTP?
Здесь все зависит от задач, которые будет решать пользователь. SMTP подходит для реализации масштабного спектра задач — от отправки сообщения до доставки его получателю. Чаще всего SMTP используют для транзакционных писем, массовых рассылок или личной переписки.
Собственный SMTP дает немного больше преимуществ перед корпоративными (или, например, Google). Это, как правило, невысокая цена, внимательное отношение со стороны разработчиков и хорошая доставляемость массовых рассылок.
Достоинство SMTP в том, что его достаточно просто внедрить, для этого протокола есть обширная документация и развитое комьюнити.
Немного о безопасности и спаме
Протокол SMTP очень простой, у него нет никаких инструментов для защиты пользовательских данных от злоумышленников. Так, адреса, указанные в соответствующем поле, не проверяются.
Кроме того, у SMTP по дефолту не используется шифрование, так что любые письма, передаваемые разными компаниями, могут быть прочитаны — было бы желание и соответствующие инструменты. Но это относится к SMTP первой версии. В улучшенном варианте разработчики добавили шифрование. Для того, чтобы его задействовать, нужно использовать специальную команду STARTTLS.
Еще одна проблема SMTP — обилие нежелательных рекламных сообщений. К сожалению, протокол не содержит никаких защитных инструментов для ликвидации спама. Правда, многие современные почтовые серверы стараются использовать и внешние механизмы.
Большинство почтовых серверов для безопасности настраиваются на работу лишь с локальными юзерами. То есть это те пользователи, у которых есть ящики с адресом из пула домена, который они и обслуживают. Здесь встречаются и новые термины. Так, серверы, которые работают в ином режиме, позволяя передавать почту абсолютно на все адреса, называются «открытые релеи». Они нужны обычным пользователям, но активнее всего их используют злоумышленники. Зачем? Чтобы рассылать спам, конечно же. Поэтому за режимом работы корпоративных серверов нужно следить. Если при проверке сети окажется, что сервер работает в режиме открытого релея, стоит поговорить с администратором сервера.
А еще можно проверить адрес отправителя посредством цифровой подписи, о чем мы уже упоминали выше.
Например, есть возможность проверки email отправителя, воспользовавшись цифровой подписью. С этой целью используется, например, взаимодействие с системой DNS. В ней хранится открытый ключ электронной подписи для конкретного домена. И этот ключ как раз можно использовать для проверки.
В сухом остатке
SMTP — проверенный временем протокол передачи электронной почты, который просто работает. Да, у него есть свои недостатки, но они нивелируются простотой и надежностью протокола. К слову, он может использоваться как для отправления сообщений на почтовый сервер, так и на целую группу серверов.
Кстати, можно сделать собственный сервер SMTP для того, чтобы отправлять массовые рассылки. Но в этом случае придется выполнить множество разных тасков, включая добавление обработки статуса доставки письма, обход разного рода «черных» и «серых» списков. Требуется еще и удобная статистика отправлений, и возможность отписки от рассылки.
Для того чтобы все реализовать, лучше использовать специализированный сервис, владельцы которого развернули необходимые услуги. В этом случае разработчики требуются лишь для того, чтобы добавить сервис к CRM-системе.
Можно пойти еще дальше и организовать сервисы разных рассылок. Их достоинство состоит в том, что все возможности встроены в пользовательский интерфейс. А возможности не только базовые, ведь в таких сервисах есть функции сбора писем и форм подписки, работы с контактами, настройка цепочек в автоматическом режиме и проведение сплит-тестов.
Добавим, что собственный SMTP-сервер можно реализовать на мощностях Selectel, арендовав для этой задачи выделенные сервер или виртуальную машину в «Облачной платформе Selectel».
SMTP: как работает, для чего нужен и подходит ли для массовых рассылок
Идеи
Выбираем софт для отправки писем
SMTP (Simple Mail Transfer Protocol) — сетевой протокол, предназначенный для передачи электронной почты. Он используется каждый раз, когда мы отправляем письмо через веб-сервисы (Gmail, Mail.ru), десктопные программы (Outlook, Thunderbird, TheBat) или сервисы рассылок (UniSender).
GMail, Mail.Ru, Yandex и других провайдеров электронной почты можно сравнить с почтовым отделением в вашем районе. Вы приходите туда, указываете на конверте, куда отправлять письмо и отдаёте его почтальону.
SMTP — это всё, что происходит в почтовом отделении, когда вы передали письмо. Например, на почте наклеят марки, проверят посылку на вес, организуют логистику и доставят письмо до адресата.
Тут возникает вопрос: если SMTP такой универсальный, почему нельзя отправлять письма напрямую через него? Можно, но есть несколько «но», о которых я расскажу дальше.
А пока немного теории.
Матчасть: как работает SMTPОбычному пользователю знание SMTP не нужно, достаточно воспользоваться интерфейсом любого почтовика. С помощью команд из почтовика он будет отправлять запросы к серверу получателя. ]’.
220 mailserver at example.com greets you. Make love not war!
— подключение удалось.
HELO test.com
250 example.com
— поприветствовали друг друга с помощью команды HELO, сервер получателя ответил командой 250, что значит, что возможно дальнейшее «общение».
MAIL FROM: <
test@test.com> — мы говорим, от кого хотим отправить письмо.
250 2.1.0 Ok
— сервер отвечает, что готов принять письмо от этого адресата (бывают ситуации, когда адрес внесен в блэклист на стороне получателя, и тогда уже здесь начнутся ошибки.
RCPT TO: <
user@example.com> — мы говорим, кому хотим отправить письмо.
250 2.1.5 Ok
— сервер отвечает, что готов принять письмо для этого получателя (если адреса не существует, то здесь сервер может сказать что-то вроде 550 No such user here.
DATA
— сообщаем серверу, что начинаем передавать письмо.
354 End data with <CR><LF>.<CR><LF>
— сервер отвечает, в каком виде он хочет видеть конец письма.
FROM:
test@test.com — начинаем передавать письмо вместе с техническими заголовками.
TO: user@example.com
SUBJECT: test mail from test subject
test body
.
— показываем, что мы закончили передачу письма.
250 2.0.0 Ok: queued as 1CF5FC0AAE
— сервер отвечает, что принял письмо для доставки и назначил ему id 1CF5FC0AAE (по нему, в случае недоставки, системный администратор принимающего сервера сможет найти, что стало с письмом.
QUIT
— сообщаем, что сеанс связи закончен.
221 2.0.0 Bye
— сервер прощается с нами.
Connection closed by foreign host.
— соединение обрывается.
Это пример самой простой SMTP-сессии. Она может быть намного сложнее, если получателей будет несколько или сервер получателя потребует аутентификацию и шифрование.
Кажется, что мешает подробно изучить документацию по SMTP и отправлять массовые рассылки через своё SMTP-решение? С этим есть проблема.
Предлагаю посмотреть на разные способы отправки массовых рассылок и оценить их по 3 параметрам: необходимость в доработках, доставляемость писем и цена.
Ящик на бесплатной почте (Mail.ru, Gmail)
Почта интернет-провайдера
Хостинг
Собственное SMTP-решение
Сервис транзакционных рассылок (например, UniOne)
Сервис рассылок (например, UniSender)
Ящик на бесплатной почтеДоработки от разработчиков: ⭐️
Доставляемость массовых рассылок: ⭐️
Цена: бесплатно
Почти все почтовые провайдеры (Gmail, Mail.ru) предоставляют доступ к ящику по SMTP. Тем не менее, отправлять массовые рассылки с бесплатной почты не получится.
ПреимуществаЯщики на Gmail, Mail.ru или Яндексе бесплатные. На этом преимущества для отправки массовых писем заканчиваются.
НедостаткиПока вы отправляете небольшое количество писем, вас может устраивать бесплатная почта. Но если подписчиков много, вы столкнётесь с ограничениями по количеству писем:
Почтовый провайдер | Ограничение |
Mail.ru | 1 письмо в минуту |
Yandex.ru | 150 писем в сутки |
Gmail.com | 500 писем в сутки |
Rambler.ru | 200 писем в час |
Ukr.net | 250 писем в сутки |
Meta.ua | 200 писем в сутки |
Больше писем отправить не дадут. Более того, если мы попробуем перешагнуть через допустимый порог, то ящик заблокируют, а все письма начнут попадать в «Спам».
Почтовые провайдеры не могут допустить, чтобы с их серверов отправляли спам. Он ухудшает репутацию серверов почтовиков — из-за этого даже нормальные письма могут не дойти до «Входящих».
Вывод: не подходит для массовых рассылок.
Почта интернет-провайдераДоработки от разработчиков: ⭐️
Доставляемость массовых рассылок: ⭐️
Цена: ⭐️
Многие интернет-провайдеры дают пользователям почту на своём домене. Например, у провайдера TENET почта будет иметь вид mail@te.net.ua.
Этот способ похож на предыдущий: почта интернет-провайдера подходит для личной переписки, но не для массовых рассылок. Отправка писем идёт через IP-адреса провайдера — они не могут допустить, чтобы через них проходил спам. Поэтому на большинстве таких ящиков тоже стоит ограничение на количество писем в сутки.
Вывод: не подходит для массовых рассылок.
ХостингДоработки от разработчиков: ⭐️
Доставляемость массовых рассылок: ⭐️⭐️
Цена: ⭐️
ПреимуществаПлюсы покупки хостинга — вы получаете email-адрес на том же домене, на котором будет располагаться ваш сайт. Это удобно, допустим, когда у вас есть небольшой интернет-магазин, и вам нужно отправлять сообщения со статусом заказа.
НедостаткиНо когда возникнет необходимость массовых рассылок, вы можете столкнуться с ограничениями и трудностями.
Часто хостинг располагается на общих IP-адресах хостинг провайдера, а это значит, что параллельно с вами на данном IP-адреса может находиться еще кто-то, и отправлять спам. Ваши письма из-за этого тоже будут попадать в спам. Именно из-за этого часто провайдеры ограничивают возможность рассылок для владельцев хостинга, и требуют покупки VPS (виртуального сервера) или выделенного сервера, что приводит нас к следующему пункту.
Вывод: подходит для массовых рассылок, если купить виртуальный сервер и настроить его.
Собственное SMTP-решениеДоработки от разработчиков: ⭐️⭐️⭐️
Доставляемость массовых рассылок: ⭐️⭐️⭐️ (при правильной настройке)
Цена: ⭐️⭐️
Как мы уже сравнили в начале, SMTP — это про всё, что касается отправки и доставки сообщения до получателя. Что именно отправлять и как отправлять — ваша ответственность. SMTP подходит для всего: транзакционных писем, массовых рассылок или личной переписки.
ПреимуществаПростота. SMTP — простой протокол: его легко протестировать и внедрить (особенно, если у вас уже было SMTP-решение до этого).
Вот, что говорит CTO UniSender Александр Брычук:
Преимущество SMTP в том, что его можно быстро проверить, потому что это стандартный протокол.
Использование SMTP требует меньше знаний для внедрения, чем, скажем, использование WEB API (на котором построены сервисы транзакционных писем). SMTP хорошо изучен, для него есть подробная документация. Непредвиденные обстоятельства вроде внезапной смены протокола или изменения работы каких-то методов, сведены к минимуму.
Чтобы запустить SMTP-сервер, нужно разобраться, как работает протокол, и изучить набор необходимых команд.
Подробный отчёт об ошибках. Используя SMTP, вы сразу получаете ответ о доставке или ошибке доставки сообщения. Многие сервисы не дают развернутый ответ о причинах недоставки. Если письмо не дошло, то чаще всего они просто выведут причину: несуществующий адрес, блокировка сообщения как спама.
SMTP-сессия покажет, на каком именно этапе возникла ошибка доставки. Иногда это полезно. Например, если ошибка возникла на этапе передачи данных MAIL FROM (смотрите пример SMTP-сессии), то ваш обратный адрес не нравится серверу получателя.
Грейлистинг. Протокол SMTP требует постоянного общения сервера отправителя и получателя. Недостаточно отправить один запрос на отправку письма. Сначала серверы должны «поздороваться», потом отправитель должен сообщить, от кого письмо, потом предоставить содержание письма. На каждый из этих этапов мы ждём ответ сервера получателя. Когда отправляется одно письмо, трудностей не возникает.
Но когда отправляется много писем, может, например, включиться грейлистинг. Это технология защиты от спама, когда сервер получателя сознательно отвечает вашему SMTP-серверу, что он недоступен. В этом случае SMTP, рассылающие спам, обычно прекращают попытки. Знание о таком поведении необходимо закладывать в логику работы вашего SMTP сервера. Например, в сервисах рассылок повторные попытки отправки автоматизированы — письма лучше доходят до получателей.
Необходимость глубокой доработки. Чтобы настроить полноценный email-маркетинг на своём SMTP-сервере, нужно много доработок. Например, чтобы следить за открытиями и переходами из писем, нужны специальные заголовки или трек-пиксели. И так с каждым инструментом — чтобы его сделать, нужно звать разработчиков.
Протокол. SMTP поддерживают не все провайдеры. Некоторые не дают его использовать, чтобы не допустить спама.
Вывод: подходит для массовых рассылок, но нужна глубокая доработка со стороны разработчиков.
Сервис транзакционных рассылокДоработки от разработчиков: ⭐️⭐️
Доставляемость массовых рассылок: ⭐️⭐️⭐️
Цена: ⭐️⭐️
В основе сервисов транзакционных рассылок тоже лежит SMTP. Но разработчики заранее потрудились и дописали к нему API-методы. Это команды, которыми мы можем вызывать разные функции: отправку письма, отписку от рассылки, создание шаблона письма, получение статистики. В обычном SMTP для всего этого нужны доработки.
Продолжим цитировать Александра Брычука, СТО UniSender:
Как только начинается история о том, что нужно что-то отдельно выделять и программировать, будет легче воспользоваться просто Web API. Он работает по HTTP-протоколу: вы можете обратиться к API точно так же, как открываете сайты через браузер. Например, если вы пользователь UniSender, то обратиться к API можно, отправляя запросы на https://api.unisender.com/ru/api.
Ещё нюанс в том, что не везде удобно / разрешено использовать SMTP. Многие провайдеры и даже хостинг провайдеры запрещают это как раз для противодействия спаму. Web API — обычный HTTP, который в большинстве случаев разрешен.
Поясню, что это значит, на примере сервиса транзакционных рассылок UniOne. Это курьер, который доставит письмо. Можно отправлять рассылки и самому, а можно нанять курьера. С его помощью можно персонализировать рассылку, использовать шаблоны, трекинг прочтений и переходов по ссылкам. Это удобно и сильно экономит время для работы.
Из главных преимуществ такого подхода:
- Дополнительный уровень защиты данных в виде API ключей. Вы общаетесь с сервисом через API-ключ, что снижает риск воровства логина и пароля. Мошенники не смогут отправить спам или провести фишинговую атаку от вашего имени. Это дополнительный «слой» защиты, которого нет при прямой работе с SMTP.
- В случае с Web API вам не нужно общаться с SMTP-сервером. За вас это делает сервис. Вы лишь даёте задание отправить письмо — один запрос.
- Использование Web API значительно упрощает отправку письма и автоматизацию этого процесса через ваше приложение.
- Готовые инструменты для получения статистики.
- Использование API через HTTP практически всегда возможно — файрволы обычно не блокируют HTTP-протокол в отличие от SMTP.
Для того, что использовать сервис транзакционных писем, обычно требуются доработки программистов для внедрения отправки писем через Web API-сервис.
Также API намного больше подвержены изменениям. Если SMTP не меняется, API методы могут поменяться, что потребует изменения кода на вашей стороне.
Вывод: подходит для массовых рассылок, есть много готовых функций, которые в SMTP пришлось бы дорабатывать.
Сервис рассылокДоработки от разработчиков: ⭐️
Доставляемость массовых рассылок: ⭐️⭐️⭐️
Цена: ⭐️⭐️⭐️
Если считать SMTP почтовым отделением, а сервис транзакционных писем — курьерской службой, то сервис рассылок — это целый отдел работы с почтой, глава которого — вы.
ПреимуществаБлагодаря удобному веб-интерфейсу, редактору писем, менеджеру контактов вы можете легко подготовить и отправить рассылку. Кроме того, в сервисах рассылок можно анализировать рассылки, сегментировать получателей по различным параметрам, проводить сплит-тесты и много чего другого.
Все инструменты уже готовы для работы, в большинстве случаев привлекать разработчиков не потребуется.
НедостаткиИз недостатков сервиса рассылок можно выделить меньшую скорость работы по сравнению с сервисами транзакционных писем — сервис рассылок обрабатывает меньше писем за единицу времени.
Данные о ваших подписчиках будут храниться на серверах сервиса рассылки. Если вы используете CRM-систему, её нужно будет интегрировать с базой контактов в сервисе рассылки. В UniSender для этого есть готовые решения.
Вывод: через сервис рассылок можно отправлять массовые рассылки без дополнительных доработок. Разработчиков зовут в редких случаях: например, если нужно настроить сложные сценарии автоматизации или привязать другой сервис по API.
Что в итогеSMTP — удобный протокол, на котором работают почти все приложения для отправки почты. Но если вы захотите сделать свой SMTP-сервер для массовых рассылок, придётся попотеть: прикрутить обработку статусов доставки, обход грейлистинга, удобную статистику писем, отписку от рассылки.
Всё это можно сделать, но проще взять сервис транзакционных рассылок, в котором эти функции уже реализованы. Разработчики нужны только для того, чтобы интегрировать его с вашей CRM-системой.
Следующая ступенька — сервисы рассылок. В них все функции вшиты в удобный пользовательский интерфейс. Кроме базовых возможностей, в сервисах рассылки можно собирать письма и формы подписки, работать с базой контактов, настраивать автоматические цепочки и проводить сплит-тесты. И всё это без привлечения программистов.
Другие материалы по теме
Поделиться
СВЕЖИЕ СТАТЬИ
Другие материалы из этой рубрики
Не пропускайте новые статьи
Подписывайтесь на соцсети
Делимся новостями и свежими статьями, рассказываем о новинках сервиса
Статьи почтой
Раз в неделю присылаем подборку свежих статей и новостей из блога. Пытаемся шутить, но получается не всегда
Оставляя свой email, я принимаю Политику конфиденциальностиКак запустить email-маркетинг с нуля?
В бесплатном курсе «Rock-email» мы за 15 писем расскажем, как настроить email-маркетинг в компании. В конце каждого письма даем отбитые татуировки об email ⚡️
*Вместе с курсом вы будете получать рассылку блога Unisender
Оставляя свой email, я принимаю Политику конфиденциальностиНаш юрист будет ругаться, если вы не примете 🙁
Протоколы Интернета и электронной почты
149
C# и .NET — Сетевое программирование — Протоколы Интернета и электронной почты
После обсуждения базовых протоколов мы можем подняться на более высокий уровень. Протоколы HTTP и FTP охватывают уровни 5—7 модели OSI.
FTP — File Transfer Protocol
FTP используется для копирования файлов с сервера и на сервер, а также для получения списка файлов и каталогов на сервере. FTP — это протокол прикладного уровня, базирующийся на TCP. Команды FTP включаются в блок данных TCP-сообщения.
Модель приложения с FTP-сервером и клиентом проиллюстрирована на следующем рисунке. Приложение-клиент представляет пользовательский интерфейс и создает FTP-запрос в соответствии с запросом пользователя и спецификацией FTP. FTP-команда посылается приложению-серверу через TCP/IP, и интерпретатор на сервере соответственно интерпретирует FTP-команду. В зависимости от FTP-команды в FTP-ответе клиенту возвращается с сервера список файлов или конкретный файл:
Протокол FTP имеет следующие характеристики:
Надежная передача данных через TCP
Анонимный доступ или аутентификация пользователя по имени и паролю
Файлы отправляются в ASCII-коде в форме, поддерживаемой целевой платформой, или как неизмененные двоичные данные.
FTP-команды можно сгруппировать в следующие категории:
- Команды контроля доступа
В FTP-командах контроля доступа указывается имя пользователя (USER) и пароль (PASS), установки могут изменяться (REIN), и соединение может быть закончено (QUIT).
- Команды параметров передачи
FTP-передачу можно конфигурировать с помощью команд параметров передачи. Эти команды поддерживают изменение ASCII-кода на двоичный код, сжатие данных, изменение портов для отправки.
- Команды FTP-сервиса
Копирование файлов с сервера (RETR), копирование файлов на сервер (STOR), удаление файлов (DELE), переименование файлов (RNTO), создание каталогов (MKD) и запрос списка файлов (LIST) — вот некоторые команды FTP-сервиса.
Протокол FTP определен в RFC 959.
FTP-клиенты
Чтобы понять суть протокола FTP, лучше всего поработать из командной строки с утилитой ftp, как показано на следующем рисунке. Программа ftp работает через приглашение ftp, позволяющее вводить команды. Эти команды отличаются от команд протокола FTP — вы можете увидеть их все, если введете команду ?. При введении команды open ftp.microsoft.com создается соединение с хостом ftp. microsoft.com.
Установка имени пользователя anonymous означает пользователя-гостя. Ответ 230 от сервера указывает, что соединение установлено и можно командой dir получить список файлов на сервере. Получив команду dir, программа ftp отправляет на сервер команду FTP LIST. Команда cd может применяться для смены директории на сервере, а команда get копирует файл клиенту, отправляя команду FTP RETR. Для закрытия соединения утилита ftp использует команду bye:
HTTP — Hypertext Transfer Protocol
HTTP — основной протокол, используемый Web-приложениями. Как и FTP, HTTP является надежным протоколом, и надежность его достигается благодаря использованию TCP. Как и FTP, HTTP также используется для передачи файлов через сеть. Но он в отличие от FTP обладает такими средствами, как кэширование, идентификация приложения-клиента, поддержка разных дополнений в формате MIME и т. д. Эти средства устанавливаются в заголовке HTTP.
Для демонстрации работы, выполняемой браузером Интернета, когда он запрашивает файлы из Web-сервера, мы можем имитировать браузер приложением telnet. Для запуска этого приложения введите telnet в диалоговом окне Run меню Start, и вы увидите приглашение Microsoft Telnet. Введите set local_echo (set localecho для Windows XP), чтобы введенные программы отображались локально.
Если не устанавливать эту опцию, команды, которые мы отправляем на сервер, не будут отображаться приложением telnet.
Теперь можно соединиться с Web-cepвeром командой open. Команда open msdn.microsoft.com 80 создает TCP-соединение с портом 80 сервера на msdn.microsoft.com. Приложение telnet использует по умолчанию порт 23, следовательно, надо указать порт для HTTP-запроса. По умолчанию HTTP-сервисы предоставляются портом 80 Web-сервера.
Как только соединение инициировано, можно послать на Web-cepвep HTTP-запрос. Простой запрос состоит из строки запроса, которую нужно завершить двумя нажатиями на клавишу Enter (две последовательности CR-LF). Такая строка запроса может выглядеть, как: GET /default.asp HTTP/1.0. Сервер возвращает HTTP-ответ, содержащий информацию о статусе.
Как видно, элементарный HTTP-запрос состоит лишь из одной строки. Однако полный HTTP-запрос будет состоять из строки запроса с дополнительными заголовками и данными.
В строке запроса можно указывать такие HTTP-команды, как GET, HEAD и POST. И GET, и POST запрашивают данные от сервера. Команда GET включает параметры запроса в URL, а в команде POST параметры находятся в блоке данных. Команда HEAD означает, что мы просто хотим узнать, когда был изменен запрашиваемый файл, чтобы проверить, находится ли в кэше новейшая его версия.
За строкой запроса могут следовать общие заголовки, заголовки запроса и заголовок сущности. Информация, помещаемая в заголовки, позволяет клиенту сообщать серверу об используемом браузере и предпочтительных языках, отправлять файл cookie или запрашивать только изменившиеся файлы. В примере с telnet мы уже видели некоторую информацию из заголовков, возвращенную сервером: дату, версию сервера, длину содержания, тип содержания и признаки управления кэшем.
HTTPS — HTTP поверх SSL (Secure Socket Layer)
Когда требуется обменяться с Web-сервером конфиденциальной информацией, можно воспользоваться протоколом HTTPS. HTTPS — это расширение протокола HTTP, и поэтому к нему применимы все принципы, которые обсуждались в предыдущем разделе. Однако в его основе лежит другой механизм, поскольку HTTPS использует SSL, первоначально разработанный компанией Netscape. SSL располагается поверх TCP и защищает сетевой обмен, используя принцип открытого/секретного ключа для обмена секретными симметричными ключами и симметричный ключ для шифрования сообщений.
Для поддержки HTTPS Web-сервер должен установить сертификат, чтобы его можно было идентифицировать. По умолчанию для HTTPS-запросов используется порт 443.
SMTP — Simple Mail Transfer Protocol
SMTP — это протокол, предназначенный для отправки и получения сообщений электронной почты. Он может использоваться для пересылки электронной почты между клиентом и сервером, использующими один и тот же транспортный протокол, или для пересылки сообщений между серверами, использующими разные транспортные протоколы. SMTP имеет возможность пересылать сообщения через среду транспортной службы. Однако SMTP не позволяет читать сообщения с почтового сервера, для этого используются протоколы POP3 и IMAP.
Служба SMTP составляет часть установки Internet Information Server в Windows 2000 и Windows XP.
Стандарт протокола SMTP определен в RFC 821; формат сообщений SMTP определен в RFC 822.
POP3 — Post Office Protocol
Протокол POP3 предназначался для отсоединенной среды. В небольших конфигурациях непрактично поддерживать постоянное соединение с почтовым сервером, например в такой среде, где время соединения нужно оплачивать. При использовании POP3 клиент может обращаться к серверу и извлекать сообщения, которые хранит для него сервер. Когда сообщения считываются клиентом, они обычно (но необязательно) удаляются с сервера.
Windows .NET Server включает сервер POP3. Протокол POP3 определен в RFC 1081.
IMAP — Internet Message Access Protocol
Как и РОРЗ, протокол IMAP предназначен для доступа к почте на почтовом сервере. Аналогично клиентам POP3 клиент IMAP может работать в автономном режиме, в котором почта обрабатывается на локальной машине. По сравнению с клиентами POP3 клиенты IMAP обладают более широкими возможностями в оперативном режиме, например, они могут извлекать только заголовки или только
основные части указанных почтовых сообщений, искать конкретные сообщения на сервере и устанавливать флаги, например флаг «ответ отправлен». По существу, IMAP позволяет клиенту обрабатывать удаленный почтовый ящик, как если бы он был локальным.
Протокол IMAP определен в RFC 1730.
NNTP — Network News Transfer Protocol
NNTP — это протокол прикладного уровня для передачи, ретрансляции и извлечения сообщений, являющихся частью обсуждений в группах новостей. Этот протокол обеспечивает приложения-клиенты доступом к серверу новостей для извлечения выбранных сообщений и поддерживает передачу сообщений между серверами.
Протокол NNTP определен в RFC 850, 977 и 1036.
Что такое протокол электронной почты.

Протокол электронной почты — это правила, по которым почтовые серверы передают и получают письма. Правила могут включать в себя различные команды, которые будут указывать, принимать письмо или отправить сообщение об ошибке.
Как работает протокол отправки электронной почты
Обмен сообщениями через электронную почту происходит при помощи почтовых программ-клиентов и серверов электронной почты. В момент регистрации почтового ящика пользователь «закрепляется» за определённым сервером, на котором хранится его почта.
Когда пользователь отправляет письмо, оно попадает сначала на сервер его почты. Сервер анализирует, кому адресовано письмо и отправляет его на сервер получателя. Когда письмо на него придёт, сервер получателя также проанализирует письмо, и если всё в порядке, отобразит его в почте получателя.
Обмен письмами между серверами регулируют протоколы почтовых серверов. Сервера отправляют друг другу разные команды, чтобы принять или отклонить письмо, сообщить, что письмо доставлено, либо прислать уведомление об ошибке.
Соединение между серверами по протоколу происходит через специальные точки — порты. У каждого протокола свои порты.
Читайте также
Инструкция: как настроить письмо-подтверждение в MailChimp
Какие протоколы электронной почты существуют
POP3
Почтовый протокол POP3 не хранит письма на сервере, а загружает их копии на устройства: компьютер, ноутбук или смартфон. После скачивания копий писем протокол удаляет оригиналы с сервера. Получается, что письма на сервере не остаются, и если вдруг письмо по ошибке будет удалено с устройства, скачать его заново не получиться.
При этом перенесённые письма можно смотреть в любой момент без доступа к интернету. Это выгодно, если на связь установлен лимит.
Сообщения
Этот протокол электронной почты имеет простой интерфейс, который на все запросы отвечает OK, что значит «всё в порядке», либо ERR, если произошла ошибка.
Порты
Протокол использует два порта: 110 — для получения незашифрованных писем, 995 — для зашифрованных. Зашифрованные письма позволяют избежать взлома почты.
Это работает так:
- Пользователь, который получает письмо, подключается к серверу при помощи порта 110 или 995.
- Загружает все полученные письма на своё устройство.
- Просматривает сообщения, удаляет ненужные.
- Отключается от входящего сервера.
IMAP
При использовании протокола передачи электронной почты IMAP письма не удаляются с сервера, а продолжают храниться на нём. Письма можно прочитать не скачивая с любого устройства, подключённого к интернету.
IMAP скачивает сообщение на устройства, только если по ним кликнуть. Перед выгрузкой письма можно отфильтровать и выгрузить не все, а только необходимые. При этом на устройство загрузится только текст письма. Чтобы посмотреть вложения, нужно подключиться к интернету и открыть письмо в почтовом клиенте.
Сообщения
IMAP использует систему флагов, которые помечают письма как прочитанные, важные, недавние и так далее. Вот некоторые флаги:
- \seen — письмо прочитано;
- \answered — на письмо отправлен ответ;
- \draft — письмо не закончено и является черновиком;
- \flagged — письмо имеет отметку «срочное».
Порты
Порт 143 работает по умолчанию. Он позволяет принимать незашифрованные письма. Порт 993 используется для безопасного подключения к электронной почте.
Это работает так:
- Сервер получателя отправляет серверу отправителя сообщение, что он готов принимать письма.
- Пользователь-отправитель проходит авторизацию в почтовом клиенте — указывает имя и пароль.
- Сервер отправителя получает сообщение, что пользователь прошёл аутентификацию.
- Дальше пользователь выбирает папку, с которой хочет работать.
- После выбора папки сервер получает сообщение, что за папку пользователь выбрал, и может приступить к выполнению различных действий с письмами.
SMTP
Протокол SMTP применяют для пересылки множества сообщений между сервером-отправителем и сервером-получателем. Приём писем происходит через специальный набор команд.
В тело письма нельзя вставить изображения: SMTP может передавать только текстовый контент. Однако можно добавить изображение как вложение.
Перед отправкой сообщения протокол SMTP устанавливает предварительное соединение с получателем, что позволяет быстро доставить письмо. Если сообщение не может быть доставлено, отправитель получает отчёт об ошибке.
Сообщения
- HELO — команда, которая начинает диалог между двумя серверами — отправителем и получателем;
- EHELLO — команда, которые указывает, что сервер отправителя хочет использовать расширенный протокол SMTP;
- MAIL FROM — команда, которая указывает на адрес отправителя;
- RCPT TO — команда, которая определяет, кто получит письмо;
- VRFY — команда, которая используется принимающим сервером, чтобы проверить, является ли имя пользователя действительным или нет.
Порты
SMTP по умолчанию использует порт 25. При необходимости отправлять незашифрованные сообщения — порт 2525. Если нужно отправлять письмо в безопасном режиме — порт 465.
Работает так:
- Сервер получателя письма проверяет настройки сервера отправителя. Если настройки в порядке, даёт разрешение на отправку.
- Сервер отправителя соединяется с сервером получателя и отправляет письмо.
- Сервер получателя подтверждает успешную доставку. Если письмо вдруг не дошло, отправляет сообщение об ошибке.
HTTP
Этот протокол используется для обмена данными в интернете. Он не предназначен для связи по электронной почте, но его можно использовать, чтобы получить доступ к веб-версии почтового ящика.
Работает HTTP так:
- Чтобы отобразить веб-страницу почты, браузер отправляет запрос на сервер, где «лежит» HTML-документ этой страницы.
- После ответа сервера браузер изучает HTML-документ и при необходимости запрашивает дополнительные файлы — скрипты, таблицы стилей, дополнительные ресурсы.
- Браузер соединяет все документы в одном окне и отображает единую веб-страницу.
Hotmail — пример использования HTTP в качестве протокола электронной почты.
Читайте также
Apple Mail Privacy Protection: на что повлияет новая функция электронной почты
Какой почтовый протокол лучше выбрать
Протокол SMPT подходит для массовой отправки электронных писем. Если нет задачи отправлять рассылку, то лучше выбирать между POP3 и IMAP.
Если размер почтового сервера ограничен, выгоднее использовать POP3. В итоге сообщения не будут занимать место: они будут удаляться с сервера, как только письма будут перенесены на компьютер.
Если нужно синхронизировать почту с другими устройствами, есть смысл выбрать IMAP.
Читайте также
Что нужно сделать, чтобы не попасть в спам: DKIM, SPF, DMARC
Главное, что нужно знать о протоколах электронной почты
Протоколы электронной почты — это правила, по которым почта отправителя письма взаимодействует с почтой получателя.
Есть три вида протоколов — IMAP, POP3, SMTP. HTTP не относится к протоколам электронной почты, но может использоваться, чтобы отобразить веб-версию почты.
Протокол SMTP больше подходит для отправки массовых рассылок. POP3 — если размер почтового сервера ограничен. IMAP — если необходимо синхронизировать почту с другими устройствами.
Поделиться:
Структура и принцип SMTP — Русские Блоги
◆ Базовая структура SMTP
Протокол SMTP (Simple Mail Transfer Protocol) предназначен для обеспечения надежной и эффективной передачи электронной почты. Прикладной уровень протокола TCP / IP содержит протокол SMTP, но на самом деле он не имеет ничего общего с системой и механизмом передачи, а требует только надежного канала потока данных. Он может работать по TCP или NCP, NITS и другим протоколам. В TCP он использует порт 25 для передачи. Важной особенностью SMTP является то, что он может пересылать почту в интерактивной системе связи.
1. Модель SMTP
SMTP предоставляет механизм для передачи почты. Когда получатель и отправитель находятся в одной сети, почта может быть отправлена напрямую друг другу; когда обе стороны не находятся в одной сети, требуется один или несколько промежуточных серверов. Вперед. SMTP сначала применяется отправителем для установления двустороннего канала связи с SMTP-получателем.Получатель может быть конечным получателем или промежуточным сервером пересылки. После того, как сервер получателя подтвердит, что соединение может быть установлено, двойная отправка может начать связь. Ниже представлена схематическая диаграмма модели SMTP.
Отправитель SMTP отправляет команду MAIL получателю, чтобы сообщить отправителю личность; если получатель принимает ее, он ответит ОК. Затем отправитель выдает команду RCPT, чтобы проинформировать получателя о личности получателя. SMTP получателя подтверждает, следует ли принимать или пересылать, и, если он соглашается, он отвечает «ОК»; после этого может выполняться передача данных. В процессе связи SMTP отправителя и SMTP получателя используют режим разговорного взаимодействия: отправитель делает запрос, получатель подтверждает, и следующий шаг выполняется после подтверждения. Весь процесс контролируется отправителем, иногда требуется несколько подтверждений.
Чтобы гарантировать действительность ответной команды, SMTP требует, чтобы отправитель предоставил сервер и почтовый ящик получателя. Команда и ответ письма имеют строгое грамматическое определение, а ответ имеет соответствующий цифровой код. Все команды состоят из кодов ASCII. Коды команд не чувствительны к регистру, например, MAIL, mail и mAIL эквивалентны.
2. Основные команды SMTP
SMTP определяет 14 команд, это:
HELO
MAIL FROM:
RCPT TO:
DATA
RSET
SEND FROM:
SOML FROM:
SAML FROM:
VRFY
EXPN
HELP [ ]
NOOP
QUIT
TURN
Существует 7 основных команд, обеспечивающих работу SMTP, а именно: HELO, MAIL, RCPT, DATA, REST, NOOP и QUIT. Следующее соответственно вводится следующим образом.
HELO — отправитель приветствует получателя, за которым следует адрес сервера отправителя или логотип. Получатель идентифицирует себя, когда отвечает «ОК». Процесс приветствия и подтверждения показывает, что две машины могут обмениваться данными, в то же время параметры состояния сбрасываются, а буфер опорожняется.
ПОЧТА — Эта команда используется для начала отправки почты, за которой следует почтовый адрес отправителя (обратный почтовый адрес). Он также используется для отправки уведомлений об ошибках, когда почта не может быть доставлена. Чтобы гарантировать успешную доставку почты, адрес отправителя должен быть принят другой стороной или промежуточным экспедитором. Эта команда очистит соответствующие буферы и подготовит к новой почте.
RCPT — эта команда сообщает получателю почтовый ящик получателя. Если получателей несколько, эту команду нужно использовать несколько раз, и каждый раз можно указывать только одного человека. Если сервер получателя не соглашается пересылать почту на этот адрес, он должен сообщить об ошибке с кодом 550, чтобы уведомить отправителя. Если сервер соглашается пересылать, он изменит путь отправки почты и заменит исходное место назначения (сервер) следующим сервером.
ДАННЫЕ — Получатель рассматривает данные после команды как отправленные. Данные добавляются в буфер данных, и данные заканчиваются единственной строкой «.». Конечная линия означает для получателя, что передача данных в буфере начинается немедленно, а буфер очищается после завершения передачи. Если передача принята, получатель отвечает OK.
REST — эта команда используется для уведомления получателя о необходимости сброса. Все данные получателя, хранящиеся в буфере, данные отправителя и данные, подлежащие передаче, должны быть очищены, и получатель должен ответить «ОК».
NOOP — эта команда не влияет на какие-либо параметры, но требует только ответа получателя «ОК» и не влияет на данные в буфере.
ВЫЙТИ — SMTP требует, чтобы получатель ответил ОК, а затем прервал передачу; до получения этой команды и ответа ОК получатель не должен прерывать соединение, даже если при передаче произошла ошибка. Отправитель не должен прерывать соединение до выполнения этой команды и получения ответа OK.
Вот коды и значения, используемые в ответе SMTP:
500 Syntax error, command unrecognized
[This may include errors such as command line too long]
501 Syntax error in parameters or arguments
502 Command not implemented
503 Bad sequence of commands
504 Command parameter not implemented
211 System status, or system help reply
214 Help message
[Information on how to use the receiver or the meaning of a
particular non-standard command; this reply is useful only to the human user]
220 Service ready
221 Service closing transmission channel
421 Service not available, closing transmission channel
[This may be a reply to any command if the service knows it must shut down]
250 Requested mail action okay, completed
251 User not local; will forward to
450 Requested mail action not taken: mailbox unavailable
[E.g., mailbox busy]
550 Requested action not taken: mailbox unavailable
[E. g., mailbox not found, no access]
451 Requested action aborted: error in processing
551 User not local; please try
452 Requested action not taken: insufficient system storage
552 Requested mail action aborted: exceeded storage allocation
553 Requested action not taken: mailbox name not allowed
[E.g., mailbox syntax incorrect]
354 Start mail input; end with .
554 Transaction failed
Наконец, давайте посмотрим на пример, приведенный в RFC821. Это письмо было отправлено Смитом с хоста Alpha.ARPA хосту Beta.ARPA.
Джонс, Грин и Браун, и предположим, что эти два хоста находятся в одной сети.
S: MAIL FROM:
R: 250 OK
S: RCPT TO:
R: 250 OK
S: RCPT TO:
R: 550 No such user here
S: RCPT TO:
R: 250 OK
S: DATA
R: 354 Start mail input; end with .
S: Blah blah blah...
S: ...etc. etc. etc.
S: .
R: 250 OK
Электронное письмо было наконец принято другой стороной.
◆ Как работает электронная почта
Электронная почта похожа на обычную почту. Отправитель указывает имя и адрес получателя (т. Е. Почтовый адрес), сервер отправителя отправляет почту на сервер получателя, а сервер получателя отправляет почту получателю. Почтовый ящик народа. Как показано ниже:
Дальнейшее объяснение включает в себя следующие концепции:
MUA — Mail User Agent, почтовый пользовательский агент, помогает пользователям читать и писать почту;
MTA — Mail Transport Agent, агент передачи почты, отвечающий за передачу почты с одного сервера на другой.
Устройство или агент доставки почты;
MDA — Mail Delivery Agent, агент доставки почты, помещает почту в почтовый ящик пользователя.
Весь процесс отправки почты выглядит следующим образом:
Используемый в настоящее время протокол SMTP является протоколом с промежуточным хранением, что означает, что он позволяет отправлять почту в конечный пункт назначения через ряд серверов. Сервер хранит поступающую почту в очереди, ожидая отправки в следующий пункт назначения. Следующим местом назначения может быть локальный пользователь или другой почтовый сервер, как показано на рисунке ниже.
Если нижестоящий сервер временно недоступен, MTA временно сохранит письмо в очереди и попытается отправить его позже.
◆ Структура и анализ фирменных бланков электронной почты
1. Структура почты
На самом высоком уровне структура почты очень проста. Формат почты, который пользователи видят в терминале, обычно:
1. From: [email protected]
2. To: [email protected]
3. Subject: Explaination of mail format
4. Date: Thu, 1 Apr 1999. 10:00:00 GMT
5. Hi, Jack
7. This mail is to explain you the mail format
8. — — — —
9. Thanks
10. Bob
Из них 1 ~~ 4 строки называются заголовком сообщения, а 6 ~~ 10 строк описывают содержание письма, которое называется телом сообщения. Пятая строка — это пустая строка. В соответствии с RFC822 пустая строка должна быть добавлена между заголовком и телом. [i] Заголовок обычно содержит поля «От», «Кому», «Тема» и «Дата», а некоторые электронные письма также содержат поля, такие как «Копия», «Скрытая копия».
2. Бланк сообщения.
Фактически, в процессе передачи почты сервер должен упаковать ее в объект данных, включая указанное выше письмо и конверт. Доставка почты основана на адресе или заголовке конверта (адрес конверта или заголовок конверта) на конверте, а не на адресе в письме, упомянутом выше.
На первый взгляд, электронное письмо отправляется прямо с машины отправителя на машину получателя, но обычно это неверно.Процесс отправки и получения электронного письма требует как минимум четырех компьютеров. См. Рисунок ниже. Пользователи обычно составляют и читают электронные письма на своем компьютере. Мы называем это клиентом (клиент 1 ~~ 4). В большинстве организаций для обработки почты используется специальный компьютер, называемый почтовым сервером (SMTP1, SMTP2). Если пользователь звонит из дома, почтовый сервер предоставляется провайдером.
Когда пользователь заканчивает писать электронное письмо перед своим компьютером Client1, а затем отправляет его на почтовый сервер SMTP1 своего провайдера. На данный момент ее машина завершила всю работу, но почтовый сервер SMTP1 все еще должен отправлять почту адресату. SMTP1 находит почтовый сервер SMTP2, который получатель распознает, читая адрес на бланке или конверте, затем устанавливает соединение с сервером, отправляет письмо на сервер получателя и ждет, пока получатель его заберет.
Ниже мы будем использовать пример, чтобы проиллюстрировать весь процесс передачи почты и изменение заголовка письма. Предположим, что имя отправителя — Sender, адрес электронной почты — [email protected], используемое имя компьютера — client1, а IP-адрес — [111.11.1.1] (предполагаемый адрес). Имя получателя — это квитанция, адрес электронной почты — [email protected], имя используемого компьютера — client2, а IP-адрес — [222. 22.2.2] (гипотетический адрес). Когда сообщение редактируется и отправляется на его почтовый сервер mail.domain1.com, формат заголовка сообщения следующий:
From: [email protected]
To: [email protected]
Date: Tue, Mar 18 1998 15:36:24 GMT
X-mailer:Sendmail 8.9.0
Subject: Greetings
Когда почтовый сервер mail.domain1.com отправляет почту на сервер получателя mail.domain2.com, сервер получателя записывает соответствующую информацию о компьютере на бланке, и бланк письма становится следующим:
Received: from client1.domain1.com (client1.domain1.com [111.11.1.1]) by mail.domain1.com (8.8.5) id 004A21; Tue, Mar 18 1998 15:3 7:24 GMT
From: [email protected]
To: [email protected]
Date: Tue, Mar 18 1998 15:36:24 GMT
Message-Id:
X-mailer:Sendmail 8.9.0
Subject: Greetings
Когда сервер получателя mail.domain2.com получает и сохраняет письмо и ожидает, пока получатель прочитает его, в заголовок письма будет добавлена другая запись:
Received: from mail.
domain1.com (mail.domain1.com [111.11.1.0] ) by mail.domain2.com (8.8.5/8.7.2) with ESMTP id LAA20869; Tue, Mar 18 1998 15:39:44 GMT
Received: from client1.domain1.com (client1.domain1.com [111.11.1.1]) by mail.domain1.com (8.8.5) id 004A21; Tue, Mar 18 1998 15:37:24 GMT
From: [email protected]
To: [email protected]
Date: Tue, Mar 18 1998 15:36:24 GMT
Message-Id:
X-mailer:Sendmail 8.9.0
Subject: Greetings
Вся приведенная выше запись будет полным заголовком сообщения, который увидит получатель. Давайте посмотрим на значение каждой строки в бланке построчно:
Received: from mail.domain1.com (mail.domain1.com [111.11.1.0] ) by mail.domain2.com (8.8.5/8.7.2) with ESMTP id LAA20869; Tue, Mar 18 1998 15:39:44 GMT
Это письмо получено с машины, которая называет себя mail.domain1.com; IP-адрес этой машины [111.11.1.0], а настоящее имя — номинальное имя mail.domain1.com; имя машины получателя Это mail. domain2.com, а запущенный почтовый сервер — Sendmail версии (8.8.5 / 8.7.2). Номер, присвоенный письму машиной получателя, — ESMTP id LAA20869, а время получения — Вт, 18 марта 1998 г., 15:39:44 GMT.
Received: from client1.domain1.com (client1.domain1.com [111.11.1.1]) by mail.domain1.com (8.8.5) id 004A21; Tue, Mar 18 1998 15:37:24 GMT
Эта запись указывает на то, что письмо было доставлено машиной client1.domain1.com (IP-адрес [111.11.1.1]) во вторник, 18 марта 1998 г., 15:37:24 GMT, на mail.domain1.com, и ему был присвоен номер с идентификатором 004A21.
От, Кому, Дата и Тема легко понять, указывая отправителя, получателя, дату редактирования и тему письма соответственно.
Message-Id:
Это номер, присвоенный этому сообщению почтовым сервером отправителя. В отличие от других номеров, этот номер следует за письмом от начала до конца.
◆ Принцип ОТКРЫТОГО РЕЛЕ и проверка
1. Принцип ОТКРЫТОГО РЕЛЕ
По техническим причинам до 1980-х годов сеть была не очень надежной, и между машинами было мало прямых разговоров для отправки почты. Людям нужно было найти эффективный путь подключения, а затем письма отправлялись шаг за шагом по пути к месту назначения. . Протокол SMTP четко указывает на то, что когда почта передается между разными сетями, она должна полагаться на ретранслятор промежуточного сервера.
Почта будет проходить через нерелевантный сторонний сервер между получателем и отправителем, который называется RELAY. Как показано ниже:
ПОЧТОВЫЙ СЕРВЕР на картинке может ограничивать почту, требующую пересылки, например пересылку почты только с определенного домена или почты с определенного IP. Если нет ограничений на пересылку, это называется OPEN RELAY или THIRD RELAY.
Исторически эстафета играла важную роль. В то время эти работы в основном выполнялись вручную, точно так же, как сегодня мы отправили письмо через почтовое отделение. Если я хочу отправить письмо из Шэньяна в Шэньчжэнь и пишу адрес получателя Шэньчжэнь на конверте, почтовое отделение должно найти определенный маршрут доставки: Шэньян, Пекин, Чжэнчжоу, Чанша, Гуанчжоу, Шэньчжэнь. Это даже дольше. Одним из наиболее важных моментов является то, что каждая ретрансляционная станция хорошо понимает, куда будет отправлено письмо и кто будет следующей принимающей станцией. В электронной почте это эквивалентно тому, что каждый сервер ретрансляции знает, кто будет следующей службой. Это пересылка почты.
В настоящее время в обычной пересылке почты больше нет необходимости. Напротив, неограниченная пересылка часто используется спамерами, чтобы скрыть истинный источник почты и заставить других думать, что это письмо, отправленное от другого интернет-провайдера; в то же время это также требует большой обработки. Перенос на чужую машину.
По историческим причинам, упомянутым ранее, подавляющее большинство почтовых серверов изначально позволяло ОТКРЫТЬ РЕЛЕ. ]’.
220 dns.ccert.edu.cn ESMTP Sendmail 8.11.1/8.11.1; Sat, 30 Jun 2001 21:07:10 +0800
helo mydomain
250 dns.ccert.edu.cn Hello point.ccert.edu.cn [202.112.50.3], pleased to meet you
mail from:[email protected]
250 2.1.0 [email protected]#yahoo.com… Sender ok
rcpt to:[email protected]
550 5.7.1 [email protected] Relaying denied
Последнее отклонение ретрансляции указывает на то, что сервер настроен безопасно и не будет ретранслировать ненужные электронные письма. Если отображаемый результат выглядит следующим образом, это означает, что сервер может пересылать любую почту.
rcpt to:[email protected]
y itself
250 [email protected] Recipient ok
data
354 Enter mail, end with "." on a line b
this is a test of the relay
.
250 VAA00289 Message accepted for delivery
В дополнение к тестированию с помощью командной строки выше, ссылка ниже предоставляет инструмент тестирования, просто введите IP.
Вопрос 16) Протоколы электронной почты и файлового обмена.
SMTP (англ. Simple Mail Transfer Protocol — простой протокол передачи почты) — это сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP.
ESMTP (англ. Extended SMTP) — масштабируемое расширение протокола SMTP. В настоящее время под «протоколом SMTP», как правило, подразумевают ESMTP и его расширения.
SMTP
используется для отправки почты от
пользователей к серверам и между
серверами для дальнейшей пересылки к
получателю. Для приёма почты почтовый
клиент должен использовать протоколы
POP3 или IMAP. Чтобы доставить сообщение до
адресата, необходимо переслать его
почтовому серверу домена, в котором
находится адресат. Для этого обычно
используется запись типа MX (англ. Mail
eXchange — обмен почтой) системы DNS. Если MX
запись отсутствует, то для тех же целей
может быть использована запись типа A.
Некоторые современные реализации
SMTP-серверов (например, Exim[1]) для определения
сервера, обслуживающего почту в домене
адресата, также могут задействовать
SRV-запись (RFC 2782). Протокол был разработан
для передачи только текста в кодировке
ASCII, кроме того, первые спецификации
требовали обнуления старшего бита
каждого передаваемого байта. Это не
даёт возможности отсылать текст на
национальных языках (например, кириллице),
а также отправлять двоичные файлы (такие
как изображения, видеофайлы, программы
или архивы).
Сервер SMTP — это конечный автомат с внутренним состоянием. Клиент передает на сервер строку команда<пробел>параметры<перевод строки>. Сервер отвечает на каждую команду строкой, содержащей код ответа и текстовое сообщение, отделенное пробелом. Код ответа — число от 100 до 999, представленное в виде строки, трактующийся следующим образом:
2ХХ — команда успешно выполнена
3XX — ожидаются дополнительные данные от клиента
4ХХ — временная ошибка, клиент должен произвести следующую попытку через некоторое время
5ХХ — неустранимая ошибка
Текстовая
часть ответа носит справочный характер
и предназначен для человека, а не
программы.
ESMTP — расширяемый протокол, в отличие от SMTP. При установлении соединения сервер объявляет о наборе поддерживаемых расширений (в качестве ответа на команду EHLO). Соответствующие расширения могут быть использованы клиентом при работе. Необходимо помнить, что если сессия начинается с команды HELO (используемой в «классическом» SMTP, RFC 821), то список расширений выводиться не будет.
Изначально
SMTP не поддерживал единой схемы авторизации.
В результате этого спам стал практически
неразрешимой проблемой, так как было
невозможно определить, кто на самом
деле является отправителем сообщения
— фактически можно отправить письмо
от имени любого человека. В настоящее
время производятся попытки решить эту
проблему при помощи спецификаций SPF,
Sender ID. Единой спецификации на настоящий
момент не существует. SPF позволяет
владельцу домена указать в TXT записи,
соответствующей имени домена, специальным
образом сформированную строку, указывающую
список серверов, имеющих право отправлять
email-сообщения с обратными адресами в
этом домене.
Агенты передачи почты получающие почтовые сообщения могут запрашивать SPF-информацию с помощью простого DNS-запроса, верифицируя таким образом сервер отправителя.
Пример SPF-данных в TXT-записи DNS:
example.org. IN TXT «v=spf1 +a +mx -all»
v= определяет используемую версию SPF. Далее следует перечисление механизмов верификации: в данном случае «a» разрешает прием писем от узла, IP-адрес которого совпадает с IP-адресом в A-записи для example.org; «mx» разрешает прием писем, если отправляющий узел указан в одной из MX-записей для example.org. Строка завершается «-all» — указанием того, что сообщения, не прошедшие верификацию с использованием перечисленных механизмов, следует отвергать.
Sender
ID — объединение
спецификаций
Sender Policy Framework и
Caller ID. SenderID
предназначен для защиты от подделки
Email-адреса отправителя путем публикации
в DNS политики использования домена — с
каких IP могут отправляться письма,
отправителем которых заявляется этот
домен.
Caller ID — технология, разработанная Microsoft с целью уменьшения количества спама, рассылаемого по электронной почте. Спецификация была опубликована 24 февраля 2004 года.
Суть данной технологии заключается в том, что администратор домена указывает IP адреса почтовых серверов SMTP, с которых может отправляться почта этого домена, в системе DNS. При получении входящего сообщения почтовый сервер проверяет, разрешена ли отправка сообщений из указанного в сообщении домена с используемого IP адреса. Если IP адреса отправителя нет в списке разрешённых, то это означает что адрес отправителя подделан.
POP3 (англ. Post Office Protocol Version 3 — протокол почтового отделения, версия 3) используется почтовым клиентом для получения сообщений электронной почты с сервера. Обычно используется в паре с протоколом SMTP.
В протоколе POP3 предусмотрено 3 состояния сеанса:
n Авторизация
n Клиент проходит процедуру Аутентификации
n Транзакция
n Клиент получает информацию о состоянии почтового ящика, принимает и удаляет почту
n Обновление
n Сервер удаляет выбранные письма и закрывает соединение
MAP
(англ. Internet Message Access Protocol — «Протокол
доступа к электронной почте Интернета»)
— протокол прикладного уровня для
доступа к электронной почте.
Аналогично POP3, служит для работы со входящими письмами, однако обеспечивает дополнительные функции, в частности, возможность поиска по ключевому слову без сохранения почты в локальной памяти.
IMAP предоставляет пользователю богатые возможности для работы с почтовыми ящиками, находящимися на центральном сервере. Почтовая программа, использующая этот протокол, получает доступ к хранилищу корреспонденции на сервере так, как будто эта корреспонденция расположена на компьютере получателя. Электронными письмами можно манипулировать с компьютера пользователя (клиента) без постоянной пересылки с сервера и обратно файлов с полным содержанием писем. Для отправки писем используется протокол SMTP.
======================файловый обмен.=====================================
FTP
(англ. File Transfer Protocol — протокол передачи
файлов) — протокол, предназначенный
для передачи файлов в компьютерных
сетях. FTP позволяет подключаться к
серверам FTP, просматривать содержимое
каталогов и загружать файлы с сервера
или на сервер; кроме того, возможен режим
передачи файлов между серверами (см.
FXP).
FTP является одним из старейших прикладных протоколов, появившимся задолго до HTTP, в 1971 году. До начала 90-х годов на долю FTP приходилось около половины трафика в сети Интернет[источник?]. Он и сегодня широко используется для распространения ПО и доступа к удалённым хостам.
Протокол FTP относится к протоколам прикладного уровня и для передачи данных использует транспортный протокол TCP. Команды и данные, в отличие от большинства других протоколов передаются по разным портам. Порт 20 используется для передачи данных, порт 21 для передачи команд.
Протокол
не шифруется, при аутентификации передаёт
логин и пароль открытым текстом. Если
злоумышленник находится в одном сегменте
сети с пользователем FTP, то, используя
сниффер, он может перехватить логин и
пароль пользователя, или, при наличии
специального ПО, получать передаваемые
по FTP файлы без авторизации. Чтобы
предотвратить перехват трафика,
необходимо использовать протокол
шифрования данных SSL, который поддерживается
многими современными FTP-серверами и
некоторыми FTP-клиентами.
SSL: SSL (англ. Secure Sockets Layer — уровень защищённых сокетов) — криптографический протокол, обеспечивающий безопасную передачу данных по сети Интернет.
Использует
шифрование с открытым ключом для
подтверждения подлинности передатчика
и получателя. Поддерживает надёжность
передачи данных за счёт использования
корректирующих кодов и безопасных
хэш-функций(Хеширование (иногда
хэширование, англ. hashing) — преобразование
входного массива данных произвольной
длины в выходную битовую строку
фиксированной длины. Такие преобразования
также называются хеш-функциями или
функциями свёртки, а их результаты
называют хешем, хеш-кодом или дайджестом
сообщени). SSL состоит из двух уровней.
На нижнем уровне многоуровневого
транспортного протокола (например, TCP)
он является протоколом записи и
используется для инкапсуляции (то есть
формирования пакета) различных протоколов
(SSL работает совместно с таким протоколами
как POP3, IMAP, SMTP и HTTP). Для каждого
инкапсулированного протокола он
обеспечивает условия, при которых сервер
и клиент могут подтверждать друг другу
свою подлинность, выполнять алгоритмы
шифрования и производить обмен
криптографическими ключами, прежде чем
протокол прикладной программы начнёт
передавать и получать данные.
Для доступа к веб-страницам, защищённым протоколом SSL, в URL вместо обычного префикса (schema) http, как правило, применяется префикс https, указывающий на то, что будет использоваться SSL-соединение. Стандартный TCP-порт для соединения по протоколу https — 443.
SSL
разработан для самостоятельной установки
и использования пользователем, без
дальнейшей существенной поддержки
поставщиком, причем техническая
документация (описание алгоритмов
криптографических преобразований,
протоколы взаимодействия, описание
интерфейсов и т.д.) для SSL является
общедоступной. SSL, как правило, является
компонентом операционных систем,
криптографические возможности которых
не могут быть изменены обычными
пользователями.
Для работы SSL требуется, чтобы на сервере имелся SSL-сертификат.
FXP (англ. File eXchange Protocol — протокол обмена файлами) — способ передачи файлов между двумя FTP сайтами напрямую, не закачивая их на свой компьютер . При FXP сессии, клиент открывает два FTP соединения к двум разным сайтам, запрашивая пакеты данных у первого сайта как будто бы от имени второго. Польза этого метода в том, что можно перекачивать файлы по сети с огромной скоростью, обладая низкоскоростным соединением. Это свойство протокола FTP обнаружили и стали использовать ещё до появления файлообменных программ (p2p).
Все, что вам нужно знать о SMTP (Simple Mail Transfer Protocol)
Мы постоянно отправляем друг другу электронные письма — каждый день отправляется и принимается колоссальное количество электронных писем — 306,4 миллиарда. Это один из самых распространенных способов связи как для компаний, так и для частных лиц, но вы когда-нибудь останавливались и задавались вопросом, что происходит после того, как вы нажимаете «отправить»? Как ваше сообщение идет от вас к вашим получателям?
За кулисами происходит сложный процесс, позволяющий доставлять ваши электронные письма туда, где они должны быть. В центре всего этого находится протокол электронной почты, известный как SMTP, который имеет решающее значение для отправки электронных писем… и вы собираетесь узнать о нем все, что вам нужно знать.
Что такое SMTP? #
SMTP (простой протокол передачи почты) — это протокол электронной почты, используемый для отправки сообщений электронной почты с одной учетной записи электронной почты на другую через Интернет.
Протоколы электронной почты — это наборы правил, которые позволяют различным почтовым клиентам и учетным записям легко обмениваться информацией, и SMTP является одним из наиболее распространенных наряду с POP и IMAP. Это также единственный выделенный протокол для отправки электронных писем. Большинство почтовых клиентов, включая Outlook, Apple Mail, Gmail и Yahoo Mail, полагаются на SMTP для «проталкивания» или отправки сообщений от отправителя получателю.
Что такое SMTP-сервер? #
Как и все серверы, SMTP-сервер представляет собой приложение, предоставляющее услуги другим приложениям в сети, называемым клиентами. В частности, SMTP-сервер обрабатывает отправку, получение и ретрансляцию электронной почты.
Вы можете думать о серверах как о своих реальных почтовых отделениях. Когда вы отправляете письмо из города А в город Б, оно сначала достигает местного почтового отделения в городе А; здесь он обрабатывается и отправляется в почтовое отделение в городе Б, которое отвечает за его доставку в конечный пункт назначения.
То же самое происходит с SMTP-серверами, хотя процесс занимает не несколько дней, а максимум несколько минут.
Возможно, вы также встречали термин SMTP-порт. Это конечные точки связи, которые обрабатывают передачу данных электронной почты по SMTP при их перемещении по сети с одного сервера на другой. Мы подробно расскажем о них здесь.
Как работает SMTP? #
Лучший способ объяснить, как работает SMTP, — рассмотреть процесс отправки, отдельные правила и команды, управляющие им, и ошибки, с которыми вы можете столкнуться. Справедливое предупреждение: здесь начинаются технические подробности. Тем не менее, мы сделаем все возможное, чтобы сжать этот протокол в простые для восприятия фрагменты.
После установки SMTP-сервера почтовые клиенты могут подключаться к нему и взаимодействовать с ним. Когда пользователь нажимает «отправить» в сообщении электронной почты, почтовый клиент открывает SMTP-соединение с сервером, чтобы он мог отправить его. (Соединение SMTP построено на так называемом соединении TCP, что означает протокол управления передачей.)
Оттуда клиент SMTP использует команды, чтобы сообщить серверу, что делать, и передать данные, такие как адрес электронной почты отправителя, адрес получателя. адрес электронной почты и содержание письма. Агент передачи почты или агент передачи сообщений (MTA) проверяет, принадлежат ли оба адреса электронной почты одному домену электронной почты, например gmail.com:
- Если они есть, он сразу отправляет электронное письмо
- Если нет, сервер использует систему доменных имен (DNS) для идентификации домена получателя, а затем отправляет его на нужный сервер.
Вам не нужно копаться в SMTP, чтобы начать отправлять электронные письма. Служба электронной почты Postmark SMTP может справиться со всем этим за вас, и начать работу так же просто, как скопировать некоторые учетные данные в файл конфигурации.
Узнать больше →
Основные SMTP-команды #
Как мы упоминали ранее, SMTP-команды представляют собой набор кодов, обеспечивающих передачу сообщений электронной почты между серверами. Вот основные команды SMTP, о которых вы должны знать:
- HELO или EHLO (Hello): Это важная команда для начала всего процесса отправки электронной почты. Почтовый клиент идентифицирует себя на SMTP-сервере. Это начало диалога, и обычно сервер отправляет команду HELO вместе со своим доменным именем/IP-адресом.
- ПОЧТА ОТ: После команды идентификации отправитель поделится кодом, указывающим, от кого отправлено письмо.
Это обрисовывает в общих чертах адрес электронной почты и сообщает SMTP-серверу, что новая транзакция вот-вот начнется. Отсюда сервер сбрасывает все и готов принять адрес электронной почты. После принятия он ответит кодом ответа 250 OK.
- RCPT TO (получатель): Следующая команда следует за кодом ответа 250 OK, определяющим, кому отправляется электронное письмо. Опять же, SMTP-сервер отвечает тем же кодом, после чего можно отправить другую команду RCPT TO с другим адресом электронной почты получателя. Это может повторяться столько раз, сколько потребуется, в зависимости от того, сколько людей получит электронное письмо.
- ДАННЫЕ: Инициирует передачу данных между клиентом и сервером. Все содержимое сообщения будет перемещено на SMTP-сервер, который ответит кодом ответа 345. Содержимое сообщений передается на сервер, где одна точка отправляется в строке сама по себе, чтобы сигнализировать об окончании сообщения. Если он принят и готов к доставке, сервер отправляет еще один код 250 OK.
В этот момент сообщение находится на пути к получателям.
- ВЫХОД: Когда электронное письмо отправлено, клиент отправляет на сервер команду ВЫХОД, разрывая соединение. Если он был успешно закрыт, сервер ответит кодом 221.
- RSET (сброс): Эта команда отправляется на сервер, когда почтовая транзакция должна быть прервана. Он не закрывает соединение, но сбрасывает все и удаляет все предыдущие данные об электронной почте и вовлеченных сторонах. Вы обычно будете использовать это, когда произошла ошибка, например, ввод неправильной информации о получателе, и процесс необходимо перезапустить.
Представьте себе эти команды как язык, который позволяет почтовым серверам общаться друг с другом. Их чат будет выглядеть примерно так:
Существуют и другие команды SMTP, которые выполняют аутентификацию и повышают безопасность, например AUTH и STARTTLS. Если вам интересно узнать о них или увидеть примеры работы SMTP, прочтите это руководство по командам SMTP.
Понимание кодов ошибок SMTP #
Процесс отправки электронной почты не всегда проходит так гладко, как в приведенном выше примере болтовни наших почтовых серверов. Отказы, блокировки или другие проблемы могут помешать отправке электронной почты. В этом случае принимающий сервер может уведомить вас о проблемах с помощью кодов ошибок SMTP, а знание их значения поможет вам диагностировать и устранять препятствия для доставки электронной почты.
Например, вот две группы часто возникающих ошибок SMTP:
- 4.X.X Постоянный переходный сбой: Эти коды ошибок начинаются с цифры «4», за которой следуют две другие цифры. Обычно они означают, что произошел временный сбой почтового сервера. Повторение команды может устранить ошибку, но эти коды часто используются серверами для защиты от ненадежных отправителей.
- 5.X.X Постоянная ошибка: Эти коды ошибок начинаются с цифры «5», за которой следуют две цифры.
Обычно они означают, что соединение SMTP разорвано. Если вы попытаетесь отправить электронное письмо повторно, это, скорее всего, приведет к той же ошибке.
PS: если вам интересно узнать больше об ошибках SMTP, здесь, в Postmark, мы начали общедоступное Полевое руководство по SMTP, чтобы задокументировать коды ошибок, которые мы видим чаще всего. Проверьте это! Вы даже можете добавить свои собственные записи, если заметили ошибку SMTP, с которой мы раньше не сталкивались.
Чем SMTP отличается от других протоколов электронной почты? #
Вспомните определение SMTP, и вы вспомните, что мы говорили, что это один из многих протоколов электронной почты. POP и IMAP — два других наиболее распространенных протокола электронной почты.
Основное различие между этими протоколами заключается в том, что SMTP является единственным протоколом для отправки или «проталкивания» электронной почты с одного неизвестного почтового сервера на другой. POP и IMAP — это протоколы для получения или «вытягивания» почты для получателя с их собственного почтового сервера. Итак, POP и IMAP ограничивают передачу почты только проверенным почтовым серверам. Их нельзя использовать для связи за пределами вашей собственной сети.
Ниже мы более подробно объясним, как работают протоколы POP и IMAP и чем они отличаются от SMTP.
POP #
POP означает протокол почтового отделения и используется для получения входящих сообщений. Самой последней версией является POP3, последний раз обновленный в 1988 году.
Этот протокол получил свое название, потому что он работает как реальное почтовое отделение в цифровом мире. POP3 будет получать электронные письма и удерживать их для клиентов, пока они их не заберут. Все электронные письма загружаются и хранятся локально, что делает его удобным решением для тех, кто использует только один компьютер для проверки электронной почты. Он также широко используется предприятиями, чтобы сотрудники могли проверять электронную почту в автономном режиме.
Чем отличаются протоколы POP и SMTP?
- SMTP — это протокол передачи сообщений, а POP — протокол доступа к сообщениям. Другими словами, SMTP используется для отправки почты от одного пользователя другому, а POP — для получения электронной почты.
- SMTP используется дважды: один раз при установлении соединения и отправке информации между отправителем и почтовым сервером и второй раз при отправке информации и соединении с получателем. POP используется только один раз между получателем и его почтовым сервером.
IMAP #
IMAP означает протокол доступа к сообщениям в Интернете. Короче говоря, IMAP хранит сообщения на сервере электронной почты, но пользователь может получить доступ к этому серверу для проверки и настройки своей электронной почты. Разница между этим и POP заключается в том, что IMAP использует облачный сервер, поэтому электронные письма могут быть аутентифицированы и классифицированы на любом устройстве. Многие пользователи электронной почты предпочитают IMAP POP из-за удобства и эффективности.
Если вы когда-либо устанавливали свой собственный почтовый клиент, вы, вероятно, сталкивались с IMAP в интерфейсе, подобном этому:
Чем отличаются IMAP и SMTP?
- SMTP — это протокол передачи сообщений, а IMAP — это протокол доступа к сообщениям (например, POP). Таким образом, в то время как SMTP отправляет сообщения и обрабатывает исходящую электронную почту, IMAP только извлекает сообщения и обрабатывает входящую электронную почту.
Запуск собственного SMTP-сервера или использование стороннего почтового сервиса: что лучше? #
Когда дело доходит до настройки и использования SMTP-сервера, есть два основных варианта:
- Запустить самостоятельно
- Воспользоваться сторонней службой
Какой вариант лучше? Однозначного ответа нет, все зависит от ваших потребностей и ресурсов. Ниже мы рассмотрим оба и выделим плюсы и минусы каждого, чтобы вы могли определить, по какому пути идти.
Запуск собственного SMTP-сервера: плюсы и минусы #
Какие преимущества и недостатки вы видите в настройке и запуске собственного SMTP-сервера? Вот обзор, а также дополнительное пошаговое руководство по настройке и аутентификации SMTP для более подробного изложения.
- Pro: Нет ограничений на объем отправки. Многие провайдеры услуг электронной почты и интернет-провайдеры (ISP) ограничивают ваши ежедневные электронные письма, как и некоторые веб-хостинги. Если у вас есть собственный выделенный SMTP, вы можете отправлять столько писем, сколько вам нужно, ежечасно или ежедневно.
- Pro: полностью контролировать доставку электронной почты. Независимо от того, что произойдет с вашей электронной почтой после того, как вы нажмете кнопку «Отправить», вы получите полезную информацию о доставке. Вы можете увидеть, были ли ваши сообщения отправлены получателю, и изучить коды ошибок.
- Pro: Ваш список адресов электронной почты является закрытым. Еще одно преимущество использования собственного SMTP заключается в том, что вам не нужно ни с кем делиться информацией из списка адресов электронной почты, что обеспечивает конфиденциальность данных вашей компании и ваших клиентов.
- Против: может потребоваться больше времени, денег и усилий.
Для запуска SMTP-сервера требуется много ресурсов: вам нужно будет постоянно следить за тем, чтобы все работало и работало, и, возможно, даже потребуется нанять специального специалиста или команду — и это после того, как вы настроите сам сервер, который является совсем другая история. Для многих предприятий это просто слишком дорого.
- Против: это местное. Еще одним недостатком использования собственного SMTP-сервера является то, что он является локальным, поэтому он будет уязвим для отключения электроэнергии или проблем с подключением к Интернету в вашем регионе. Вы можете настроить серверы резервного копирования и отказоустойчивую защиту, но опять же, для этого требуются технические ноу-хау.
- Против: у вас могут возникнуть проблемы с доставкой и безопасностью . Если вы не отправляете сообщения определенным/ограниченным получателям, потребуется время, чтобы обеспечить правильную доставку, особенно когда объем вашей электронной почты меняется.
Кроме того, вам придется защищать свой сервер электронной почты от несанкционированного доступа и спама, а это может стать настоящей проблемой. В этом большое преимущество использования стороннего сервиса: они уже разобрались со всем этим и имеют специальные процессы для определения необходимости корректировок.
Говоря об этом…
Использование стороннего почтового сервиса: плюсы и минусы #
Теперь, по общему признанию, мы будем здесь немного пристрастны, потому что в Postmark мы действительно используем супернадежный почтовая платформа, которую вы можете использовать для доставки электронной почты через SMTP. При этом мы также знаем, что Postmark и другие сторонние службы предназначены не для всех, поэтому вот список преимуществ и недостатков выбора сторонней службы электронной почты.
- Pro: Значительно меньше хлопот для вас. Использование стороннего поставщика услуг электронной почты позаботится обо всем за вас.
Вам не нужно обладать значительными техническими знаниями или тратить время на обслуживание и мониторинг вашего почтового сервера, и вы часто можете обратиться в службу технической поддержки, чтобы помочь с любыми проблемами.
- Pro: более безопасный. Большинство сторонних провайдеров предлагают несколько вариантов резервного копирования, чтобы сохранить вашу электронную почту в безопасности, если один из серверов выйдет из строя. Они также поддерживают свою безопасность в соответствии с последними отраслевыми стандартами, обеспечивая постоянную безопасность ваших данных.
- Pro: экономичнее. Плата за услугу, которой вы будете пользоваться постоянно, означает, что вам никогда не придется иметь дело с почтовыми серверами самостоятельно. Это может сэкономить время и деньги вашего бизнеса, поскольку вам не нужно будет нанимать кого-либо для мониторинга и обслуживания вашего сервера или тратить деньги на устранение проблем с доставкой и безопасностью.
- Pro: Более надежная доставка. Сторонние службы имеют давние отношения с интернет-провайдерами и поставщиками почтовых ящиков, имеют опыт решения проблем и адаптации к уникальным требованиям различных получателей, имеют все процессы мониторинга и исключения из списка и, конечно же, имеют множество экспертов по доставляемости в штате, поэтому вам не нужно ни о чем беспокоиться.
- Против: Зависимость от других. Один из недостатков использования сторонней установки SMTP заключается в том, что вам придется полагаться на другую компанию, если у вас возникнут проблемы с вашим почтовым сервером. Поэтому, если вы пойдете по этому пути, убедитесь, что выбрали службу и команду с большим опытом в предметной области, и которые делают качественную поддержку клиентов своим приоритетом.
Совет для профессионалов: вы можете проверить репутацию своего провайдера на сайтах с обзорами, таких как G2, или просматривая разговоры в Twitter и других социальных сетях. Реальные отзывы от реальных пользователей продукта могут дать вам хорошее представление о том, чего ожидать.
Ой. Спасибо Вал. 💛
- Минусы: работа со сторонними условиями. Наконец, вам придется соблюдать условия обслуживания (TOS) провайдера, которые могут включать ограничения на количество электронных писем, которые вы можете отправить. Тем не менее, редко можно найти TOS, который значительно сократит или повлияет на ваш объем отправки, будь то транзакционная электронная почта или рекламная электронная почта.
В целом выбор сторонней службы электронной почты — самый простой и надежный способ для большинства предприятий. Это означает меньше рисков и меньше головной боли, позволяя вам сосредоточиться на своей стратегии электронной почты и отправлять электронные письма, не беспокоясь о технической стороне вещей.
Выберите службу электронной почты, на которую вы можете положиться #
Вот итог: электронная почта в мире работает на SMTP, и хотя вы определенно можете настроить свой собственный SMTP-сервер, это может оказаться более сложной задачей, чем нужно. быть, особенно если у вас нет предварительных знаний о внутренней работе почтовых протоколов, у вас мало ресурсов и вы беспокоитесь о безопасности. И хотя мы в Postmark с энтузиазмом относимся к разработке идеальной инфраструктуры электронной почты, мы понимаем, что большинство обычных людей не хотели бы иметь с этим дело.
В большинстве случаев лучше всего найти стороннюю службу электронной почты, и если вы выберете Postmark, у вас будет служба электронной почты, на которую вы действительно можете положиться. Наши SMTP-серверы распределены по всему миру, что дает вам доступ к простой и безопасной доставке электронной почты в любое время. А поскольку у нас есть серьезный авторитет у провайдеров почтовых ящиков, мы доставляем ваши электронные письма быстро и надежно.
Лучшие провайдеры SMTP: параллельное сравнение #
Ищете лучшую службу электронной почты SMTP для вашего бизнеса? Мы сравниваем функции, стоимость и идеальные варианты использования популярных инструментов и делимся удобной сравнительной таблицей, которая может помочь вам в ваших исследованиях.
Готовы начать отправку?
Зарегистрируйтесь в Postmark сегодня и получите бесплатную пробную версию.
Начать бесплатную пробную версию → Кредитная карта не требуется
Узнайте больше об отправке SMTP с помощью почтового штемпеля:
- Руководство пользователя почтового штемпеля: Отправка электронной почты с помощью SMTP
- Как отправлять сообщения из Outlook с помощью SMTP
Изучите основы работы SMTP с простым SMTP Пример сервера
Электронная почта является наиболее предпочтительным способом связи для любого бизнеса в эпоху цифровых технологий . И, следовательно, ни человек, ни организация не захотят идти на компромисс в отношении доставляемости своей электронной почты. Вы хотели бы, чтобы ваши электронные письма были доставлены без каких-либо перерывов, будь то личные или деловые. SMTP-сервер может быть идеальным выбором для безопасной и надежной доставки электронной почты .
Gmail и Outlook являются одними из наиболее предпочтительных платформ для общения. Эти платформы лучше всего подходят для индивидуального общения . У бизнеса или любой организации есть разные потребности в электронной почте. Вам может потребоваться отправить автоматических рассылок . SMTP-сервер эффективно выполняет эту работу.
Прежде чем углубиться в пример SMTP, давайте сначала посмотрим, что означает SMTP и как он работает.
Что такое SMTP-сервер?
SMTP или простой протокол передачи почты — это приложение, которое используется для отправки, получения и ретрансляции исходящих сообщений электронной почты между отправителями и получателями. Когда электронное письмо отправлено, он передается через Интернет с одного сервера на другой с использованием SMTP . Проще говоря, электронная почта SMTP — это просто электронная почта, отправленная с использованием SMTP-сервера.
Если SMTP-сервер используется для отправки электронной почты, то мы можем определить ретрансляцию SMTP как процесс передачи электронной почты с одного сервера на другой. В основном используется для доставки электронной почты из одного домена в другой домен, который отличается от домена пользователя . Служба ретрансляции SMTP может использоваться для решения многих проблем, таких как доставка электронной почты, занесение IP-адресов в черный список и т. д.
Понимание важности SMTP-сервера
Как упоминалось ранее, SMTP-сервер используется для надежной и безопасной доставки транзакционной и массовой электронной почты . На рынке существует множество поставщиков услуг SMTP. Ниже приведены несколько преимуществ, предоставляемых такими поставщиками услуг SMTP:
- Безопасная среда для отправки электронной почты.
- выделенных IP-адреса, а также гибкая настройка API и SMTP.
- Сегодня большинство поставщиков услуг SMTP не использует порт 25 в качестве SMTP-порта, и, следовательно, отправленные электронные письма имеют минимальную вероятность попадания в папку спама пользователя.
- Удобное программное обеспечение.
- Быстрая и настраиваемая интеграция с электронной почтой.
- Аналитика в режиме реального времени для отслеживания вашей электронной почты.
Доступны различные открытые и бесплатные SMTP-серверы. Кроме того, большинство платных SMTP-сервисов предлагают бесплатные пробные планы. Вы можете попробовать различные варианты, прежде чем выбрать услугу, подходящую для ваших нужд. Как правило, 9Бесплатные планы 0107 имеют ограничение на количество отправляемых писем в день или месяц . Итак, если вы ищете службу SMTP для крупной организации, которая может отправлять сотни и тысячи электронных писем массово, рекомендуется выбрать платную службу SMTP .
Работа SMTP-сервера
Функционирование SMTP-сервера можно разбить на два этапа. Первый шаг включает в себя проверку конфигурации компьютера, через который отправляется электронное письмо, и предоставление разрешения .0048 для процесса. На втором этапе он отправляет сообщение и следует за успешной доставкой электронной почты. Если по какой-либо причине электронное письмо не может быть доставлено, оно возвращается отправителю.
SMTP-сервер понимает простые текстовые команды . Наиболее распространены следующие команды:
HELO: Представьтесь
EHLO: Представьтесь и запросите расширенный режим
ПОЧТА ОТ: Укажите отправителя
RCPT TO: Укажите получателя
ДАННЫЕ: Укажите тело письма
Как узнать свой SMTP-сервер?
Вы когда-нибудь задумывались и спрашивали себя: «Какой у меня SMTP-сервер?» Вы можете найти его, выполнив несколько шагов в командной строке:
- Нажмите клавишу Windows на клавиатуре Windows.
- Введите «cmd» в поле поиска.
- Откройте приложение командной строки и введите одну из следующих двух команд:
ping smtp.mysite.com
ping mail.mysite.com
- Имя вашего SMTP-сервера будет отображаться сразу после слова «Pinging».
Понимание SMTP с помощью простого примера SMTP-сервера
Теперь рассмотрим пример, чтобы упростить протокол SMTP и лучше понять поток электронной почты.
Рассмотрим двух человек — Тома и Джерри. У Тома есть учетная запись Gmail — tom@gmail.com, а у Джерри — учетная запись Yahoo — jerry@yahoo.com. Том хочет отправить электронное письмо Джерри.
Следующие шаги объясняют процесс доставки электронной почты из учетной записи Тома в учетную запись Джерри:
- Том создает электронное письмо на своем ПК с Windows.
- Затем он предоставляет адрес электронной почты Джерри и нажимает «Отправить».
- Почтовый клиент Тома подключается к SMTP-серверу его домена, который отправляет электронную почту. Этот сервер можно назвать smtp.example.com. Здесь почтовый сервер Тома будет играть роль SMTP-клиента.
- Почтовый сервер Тома взаимодействует с почтовым сервером yahoo.
com, чтобы доставить сообщение Джерри.
- После того, как начальное SMTP-квитирование между двумя серверами выполнено , SMTP-клиент отправляет сообщение Тома на почтовый сервер Джерри. Здесь почтовый сервер Джерри будет играть роль SMTP-сервера.
- SMTP-сервер Джерри сканирует входящее сообщение и распознает домен и имя пользователя.
- Почтовый сервер Джерри получает электронное письмо, которое затем сохраняется в почтовом ящике. Это электронное письмо можно позже получить и прочитать с помощью почтового приложения, такого как Outlook.
Заключительные слова
Итак, роль электронной почты и SMTP-серверов имеет ключевое значение для бесперебойного функционирования любой организации . Мы рассмотрели пример SMTP-сервера , чтобы дать вам краткое представление о том, как работает SMTP и как его эффективность удовлетворяет коммуникационные потребности вашей организации. Всегда лучше потратить некоторое время на базовое исследование типов SMTP-серверов, доступных на рынке , прежде чем выбрать тот, который подходит для вашего бизнеса или личных нужд. Ведь эффективная коммуникация – залог успеха!
Присоединяйтесь к тысячам организаций, использующих DuoCircle
Узнайте, насколько это доступно для вашей организации сегодня, и вы будете приятно удивлены.
Заинтересованы в нашей партнерской программе для MSP и VAR? Посетите нашу партнерскую программу MSP.
Протокол SMTP/сервер SMTP (Статья)
Когда вы отправляете сообщение электронной почты со своего компьютера на другой компьютер, оно пройдет через множество разных серверов, прежде чем он действительно достигнет вашего получателя компьютер. Первой остановкой для вашего сообщения электронной почты является сервер электронной почты SMTP. Этот сервер связывается напрямую с вашим компьютером, используя протокол с именем SMTP . SMTP — это сокращение от Simple Mail Transfer Protocol . и это стандарт де-факто для передачи электронной почты от клиентов к почтовые серверы через Интернет. ![]() Протокол SMTP Клиентские компьютеры взаимодействуют с электронной почтой серверы (SMTP-серверы) по протоколу SMTP. SMTP — это относительно простой текстовый протокол, который использует ограниченный набор команд и кодов ответов для своей связи. Протокол SMTP определен в RFC 2821 — простой Протокол передачи почты. Цель простого протокола передачи почты заключается в надежной, эффективной и простой передаче сообщений электронной почты. SMTP это не зависит от конкретной подсистемы передачи и требует только надежное соединение для передачи данных. SMTP использует порт 25 SMTP-серверы обычно взаимодействуют с во внешний мир через TCP-порт 25. Это означает, что клиентский компьютер который хочет подключиться к SMTP-серверу, должен установить соединение с номер порта сервера 25 и использовать TCP (протокол управления передачей) для его общение на низком уровне. ![]() Команды SMTP Протокол SMTP в своей основе состоит форму, состоящую примерно из десяти команд, которая используется для связи между клиент и сервер. Ниже приведены некоторые из команд, используемых в SMTP-соединении. описано:
Клиент отправляет эти команды почтовый сервер и сервер отвечает числовыми кодами и дополнительным текстом сообщения после числового кода. Эти коды ответов сообщают клиенту, если предыдущая отправленная команда выполнена успешно или не удалось. Команды и ответы состоят из символов из набора символов ASCII. Каждая команда обычно состоит из 4 символов. широкий (иногда с дополнительной подкомандой после) и код ответа всегда состоит из 3 цифр. Длина текста после кода ответа может варьироваться в зависимости от используемого почтового сервера, но длина текста обычно менее 100 символов (но может быть до 508 символов в соответствии с определение протокола SMTP). Пробел используется для разделения числового код из смс. Как видно из приведенной выше таблицы для идентификации отправителя используются две команды: HELO и EHLO. ![]() Если вы хотите получить больше информации и более глубокое понимание SMTP-команд вы можете прочитать следующую техническую статью: Справочник по командам SMTP. Пример связи SMTP Сеанс Ниже приведен пример базового обмен данными между клиентом и SMTP-сервером. Сообщение электронной почты отправлено с mail@samlogic.com на john@mail.com в следующем примере:
(C=Клиент, S=Сервер) Команда HELO используется для идентификации вас на SMTP-сервере. Если все все в порядке, SMTP-сервер ответит кодом ответа 250. Команда MAIL FROM: сообщает SMTP сервер, на который будет отправлено сообщение электронной почты. Он также сообщает серверу адрес электронной почты отправителя. Если почтовый сервер одобряет электронную почту отправителя адрес следующей команды для отправки — это команда RCPT TO:. Эта команда сообщает почтовый сервер адрес электронной почты получателя. Если мы преуспели так далеко, время для отправки фактических данных. Это делается путем первой отправки команды DATA а затем фактические данные после того, как мы получили код ответа 354 от сервер. ![]() Если почтовый сервер принял сообщение электронной почты для доставки, он ответит кодом ответа 250. затем вы можете выйти из сеанса, отправив команду QUIT. После этого сервер ответьте с кодом ответа 221, и ваше сообщение электронной почты уже в пути! Путь сообщения электронной почты от Клиент клиенту После отправки сообщения электронной почты на SMTP-сервер, который связывается с вашим компьютером, сообщение по-прежнему должен пройти долгий путь, прежде чем он достигнет компьютера получателя. момент после того, как сообщение электронной почты было успешно переведен на ваш SMTP-сервер; сервер должен найти почтовый сервер вашего получателя и передать сообщение на этот сервер. Чтобы найти сервер, который использует получатель, адрес электронной почты получателя будет проверен, а доменное имя извлечено прочитав информацию после » @ «символ (доменное имя всегда находится после символа « @ » в адресе электронной почты). ![]() Связь между этими двумя почтовыми серверы в основном такие же, как связь между вашим компьютером и ваш SMTP-сервер. Используется протокол SMTP и номер порта 25 (в почтовый сервер вашего получателя). Используемые команды обычно также то же самое, и сообщение электронной почты передается так же, как и при был передан с вашего компьютера на ваш SMTP-сервер. Однако иногда могут возникать технические проблемы на сервере получателя и сообщение электронной почты не может быть передано. Чтобы справиться с такой ситуацией, сообщение помещается в очередь. SMTP-сервер на большинстве машин используется программа под названием sendmail , отправки, поэтому эта очередь называется очередью sendmail. Sendmail будет периодически попробуйте повторно отправить сообщения в своей очереди. ![]() Если сообщение было успешно переданы на почтовый сервер вашего получателя, они будут сохранены в его/ее POP3-сервер, и когда получатель начнет загружать свои электронные письма, ваш сообщение электронной почты появится в папке «Входящие» почтового клиента получателя. программа. Ссылки: RFC 5321 — простой Протокол передачи почты RFC 1869 — SMTP Дополнительные услуги
Связанные продукты: SamLogic MultiMailer Интернет-компоненты SamLogic Другие статьи |
Справочник по командам SMTP Что такое почтовый сервер и как он работает? |
SMTP — история, использование и значение электронной почты
Эта статья предназначена для тех, кто интересуется подробностями процесса передачи электронной почты и историей SMTP. Мы расскажем, что важно знать о SMTP при работе с электронной почтой. Мы также предоставим вам список связанных ресурсов об инфраструктуре электронной почты.
Проще говоря, SMTP — это простой протокол передачи почты — наиболее распространенный стандарт для почтовых серверов для отправки и получения сообщений через Интернет. Впервые он был представлен в 1982 году, почти 40 лет назад. Это большой срок с точки зрения развития технологий. Почему мы до сих пор его используем? Как он изменился за эти годы и чего можно ожидать?
История развития электронной почты и SMTP
Электронная почта существовала еще до изобретения протокола SMTP. Первое упоминание по электронной почте восходит к началу 1960-е годы. Тогда это выглядело как обмен файлами на общем диске или обмен сообщениями между пользователями терминалов. Система MAILBOX, используемая в Массачусетском технологическом институте (MIT), считается одной из первых в своем роде.
Однако это была не совсем электронная почта, так как она позволяла обмениваться сообщениями внутри одного терминала (компьютера). В то время не было ни сетей, ни адресов электронной почты.
Первое электронное письмо между разными компьютерами было отправлено в 1971 году через сеть ARPANET, созданную Министерством обороны США. Здесь мы должны упомянуть первое имя в нашем историческом путешествии: Рэй Томлинсон. Он известен как изобретатель электронной почты, и именно он создал первый почтовый клиент. Он также является отцом неотъемлемого атрибута электронной почты — знака «@», который используется для обозначения пользователей сообщений на определенных компьютерах (пользователь@компьютер).
Ray Tomlinson, 1998 © Henry Horenstein
Система электронной почты на основе ARPANET была предшественницей современного Интернета и, в частности, протокола SMTP. Протокол SMTP был представлен десятью годами позже Джоном Постелом, «богом Интернета» того времени. Он также работал над реализацией протоколов ARPANET в начале 1970-х. В ноябре 1981 года он опубликовал RFC788 под заголовком «Простой протокол передачи почты» . Вот как официально началась его история.
Джон Постел. Фото Ирэн Фертик, Служба новостей USC. Copyright 1994, USC
В то же время был выпущен первый агент передачи почты (программа, которая передает электронные сообщения между компьютерами с помощью SMTP). Именно Sendmail стал основной версией (и используется до сих пор).
SMTP не сильно изменился за эти годы. Однако в 1980-х годах электронные сообщения использовались внутри страны, в основном государственными и образовательными учреждениями. Их передача по SMTP была быстрой и надежной, но не содержала никаких механизмов безопасности.
Модель использования SMTP представлена в RFC788
С развитием Интернета и цифрового бизнеса в начале 1990-х использование SMTP стало более распространенным и коммерческим. Продажи и реклама также перешли в онлайн, и поэтому спам стал проблемой.
Чтобы справиться с новой реальностью и требованиями, в 1995 году была представлена структура для расширения SMTP. Основных изменений было три:
- Вместо HELO была введена новая команда EHLO для запуска сеанса SMTP. Оба должны по-прежнему приниматься любым SMTP-сервером, но EHLO требуется для информирования принимающего сервера о том, что он поддерживает расширения ESMTP.
- В реестре расширений службы SMTP определены необязательные ключевые слова и команды EHLO.
- Объявлены дополнительные параметры для команд SMTP MAIL FROM и RCPT TO.
Следующим важным этапом эволюции SMTP стало введение 9Стандарт отправки сообщений 0047 (RFC2476). Это произошло в конце 1998 года. Стандарт отправки сообщений был разработан для разделения сообщений на отправку и передачу.
Изначально SMTP создавался только для передачи сообщений (с помощью MTA — агентов пересылки почты). Этого было достаточно для успешного и надежного обмена сообщениями в условиях одной организации.
Будьте либеральны в том, что вы принимаете, и консервативны в том, что вы отправляете.
Джон Постел Ученый-компьютерщик и «бог интернета»
Но затем процесс отправки сообщений усложнился и задействовал MSA — агенты отправки сообщений. Они должны были контролировать переписывание исходных сообщений, чтобы исправить проблемы с форматированием при отправке сообщений за пределы организации. Стандарт отправки сообщений впервые представил аутентификацию для отправки электронной почты .
В начале 1999 г. SMTP Сервисное расширение для аутентификации (RFC2554). Он фактически определил команду AUTH и механизм аутентификации.
Современный SMTP — это версия ESMTP, которая последний раз обновлялась в 2008 году, как указано в RFC5321.
SMTP-сервер, SMTP-ретранслятор и другие важные термины, связанные с SMTP
Существует множество связанных с SMTP слов и терминов, которые часто путают, например SMTP-сервер, SMTP-ретранслятор, MTA и т. д. Чтобы понять разницу, давайте разберемся. как на самом деле работает SMTP и что происходит внутри процесса отправки электронной почты.
Передачу электронных сообщений часто сравнивают с доставкой в автономном режиме почтальоном. Модель также очень похожа на международную курьерскую службу.
Представьте, что вам нужно отправить клиенту посылку (договор, счета, образцы продукции и т.д.). Вы подготавливаете содержание своего сообщения и кладете его в конверт, указывая свое имя и адрес вместе с адресом получателя. В электронном мире конверт предоставляется вашим почтовым агентом (MUA) 9.0048, а правила записи адресов «От» и «Кому» определяются SMTP-протоколом .
Затем вы вызываете курьера ( MUA, ваш почтовый клиент ), чтобы забрать ваш конверт или доставить эту посылку в офис курьерской службы самостоятельно ( ваше собственное почтовое приложение ).
Затем посылка должна быть доставлена в транспортно-экспедиторский центр (SMTP-сервер ) на грузовике или самолете (почтовый агент , MTA ). Для электронных писем эта часть процесса доставки называется 9.0047 Реле SMTP . Затем ваша посылка должна быть обработана и назначена для доставки получателю. Процедура его получения регулируется таможней ( IMAP4 или POP3 протокол для приема писем).
Проверьте свою электронную почту сейчас
Итак,
- SMTP-сервер — это приложение для отправки электронной почты. Он получает электронные письма от почтовых приложений или клиентов (MUA) и ретранслирует их на другие серверы, которые могут получать сообщения.
- SMTP relay — это процесс передачи между SMTP-серверами, размещенными в разных доменах (например, Gmail и Yahoo).
- MTA — это программа для отправки почты, которая обрабатывает и передает электронную почту.
Конечно, это очень упрощенное объяснение процесса доставки электронной почты. Чтобы углубиться в технические детали, прочитайте наши следующие статьи:
- Что такое SMTP-сервер
- Что такое ретрансляция SMTP
- Разница между протоколами электронной почты IMAP, POP3 и SMTP
- Что такое MTA?
Роль SMTP или другие способы отправки электронной почты
SMTP — это основной протокол, используемый для отправки электронной почты. На самом деле, это единственный специализированный метод отправки электронной почты. Независимо от способа отправки электронной почты, в какой-то момент будет задействован SMTP.
Однако существует два распространенных метода управления отправкой электронной почты из вашего приложения: интеграция SMTP-сервера или использование почтового API .
API электронной почты на самом деле не предназначен для отправки электронной почты — это просто название для использования протокола HTTP для отправки электронной почты. HTTP — это общий веб-протокол, используемый для передачи данных во всех типах компьютерных сетей. API означает интерфейс прикладного программирования и включает в себя функции стороннего сервиса для обработки ваших электронных писем.
Вы можете выбрать, хотите ли вы настроить свой собственный SMTP-сервер или использовать облачное решение, но API всегда предоставляется третьей стороной.
Каждый из этих методов имеет свои особенности, плюсы и минусы, которые мы объяснили в разделе Как отправлять электронную почту с помощью API или SMTP. Если вы не хотите подробно изучать эту тему, вот несколько важных идей:
- SMTP проще интегрировать и подходит для случайных отправителей
- Интеграция API электронной почты требует навыков программирования
- SMTP не зависит от платформы и прост в тестировании
- API электронной почты обеспечивает лучшую доставку и более широкие возможности аналитики
- SMTP в основном используется для интеграции с системой CRM или почтовым клиентом и массовые отправители
Заключительные слова и список полезных статей
Мы тщательно изучили эти темы инфраструктуры электронной почты и объяснили их во многих статьях в нашем блоге. Этот пост был предназначен для того, чтобы познакомить вас с наиболее распространенными терминами SMTP, его использованием и рассказать вам историю его эволюции. Если вам нужна дополнительная техническая информация и вы хотите расширить свои знания об SMTP и инфраструктуре электронной почты в целом, мы рекомендуем прочитать следующие статьи:
- Все о SMTP-портах
- Контрольный список проверки электронной почты
- Список бесплатных SMTP-серверов: 10 вариантов отправки больших объемов электронной почты Test SMTP Relay
- Что такое аутентификация SMTP и почему ее нельзя игнорировать
- Что такое очередь SMTP и как управлять электронной почтой
- Настройки SMTP WordPress
Простой протокол передачи почты (SMTP) — Глоссарий
- Проекты
- Публикации Развернуть или свернуть
- Темы Развернуть или свернуть
- Новости и обновления
- События
- Глоссарий
- О CSRC Развернуть или свернуть
Поиск
Сортировать по
Релевантность (наилучшее совпадение)Срок (A-Z)Срок (Z-A)
Пункты на странице 100200500Все
- Глоссарий
А | Б | С | Д | Е | Ф | грамм | ЧАС | я | Дж | К | л | М | Н | О | п | Вопрос | р | С | Т | U | В | Вт | Икс | Д | Z
Simple Mail Transfer Protocol (SMTP)
Abbreviation(s) and Synonym(s):
SMTP
CNSSI 4009-2015
NIST SP 1800-16D
NIST SP 1800-19B
NIST SP 1800-26C
NIST SP 1800-6
NIST SP 800-113
NIST SP 800-115
NIST SP 800-203
NIST SP 800-28 Версия 2
NIST SP 800-41 Rev. 1
NIST SP 800-45 Версия 2
NIST SP 800-53 Версия 5
NIST SP 800-70 Ред. 4
NIST SP 800-77 Ред. 1
NIST SP 800-82 Ред. 2
NIST SP 800-83 Ред. 1
NIST SP 800-83 Ред. 8183A Том. 2NISTIR 8183A Том. 3
NISTIR 8320A
Определения:
Протокол MTA, определенный в IETF RFC 2821. SMTP является наиболее часто используемым протоколом MTA.
Источник(и):
NIST SP 800-45 Версия 2
основной протокол, используемый для передачи сообщений электронной почты в Интернете.
Источник(и):
НИСТ СП 1800-16Б
по простому протоколу передачи почты
из
НИСТИР 7387
НИСТ СП 1800-16С
по простому протоколу передачи почты
из
НИСТИР 7387
НИСТ СП 1800-16D
из
НИСТИР 7387
НИСТИР 7250
по простому протоколу передачи почты
НИСТИР 7387
по простому протоколу передачи почты
Объяснение простого протокола передачи почты — что такое SMTP и как он работает?
Объяснение простого протокола передачи почты — что такое SMTP и как он работает?. Трудно вспомнить время, когда не было электронных писем, но да, когда-то было. Также трудно представить сегодняшний день без общения по электронной почте. Общение по электронной почте стало одной из самых неотъемлемых частей как нашей личной, так и профессиональной жизни.
Поэтому было бы преуменьшением сказать, что мы все многим обязаны простому протоколу передачи почты (SMTP). В этой статье мы подробно рассмотрим этот неотъемлемый компонент современного метода коммуникации.
Что такое протокол?
В сетевой терминологии протокол — это стандартизированный набор правил форматирования и обработки данных, которые позволяют подключенным устройствам взаимодействовать друг с другом.
Хотя подключенные устройства могут использовать разные операционные системы, программное и аппаратное обеспечение, они могут использовать общий протокол для связи друг с другом.
Стандартизированные протоколы действуют как общие языки между двумя подключенными устройствами.
Например, ПК с Windows может обмениваться данными с компьютером с Linux, поскольку они оба используют протокол управления передачей/Интернет-протокол (TCP/IP) для подключения к Интернету.
Что такое SMTP?
SMTP или Simple Mail Transfer Protocol — это стандартный коммуникационный протокол Интернета для передачи электронной почты. Он был изобретен в 1981 году.
Этот протокол позволяет почтовым серверам и другим агентам передачи сообщений (MTA) отправлять и получать электронные сообщения. Это протокол, который используется, например, при отправке сообщений электронной почты через Интернет.
Многие почтовые клиенты, которыми мы пользуемся каждый день, в том числе такие, как Gmail и Outlook, используют SMTP для «проталкивания» или отправки сообщений соответствующим получателям.
Этот протокол иногда сочетается с IMAP и POP3, которые обрабатывают получение сообщений, в то время как SMTP в основном отправляет сообщения на сервер для завершения цикла или процесса отправки и получения электронной почты.
SMTP отправляет только текст
Нам необходимо принять во внимание, что SMTP может передавать только текстовые сообщения. Другими словами, его нельзя использовать для отправки любых других форматов.
Но его можно использовать с другим протоколом, который помогает ему переносить и передавать изображения в виде вложений. Этот «дополнительный» протокол известен как Многоцелевое расширение почты Интернета (MIME) и кодирует все нетекстовые данные в текстовый формат.
Изображения преобразуются обратно в исходный формат после того, как они доставлены в пункт назначения.
Что такое порт SMTP?
SMTP-порт — это конечная точка связи подключенных устройств, на которую возложена задача передачи данных электронной почты через Интернет и с использованием SMTP — он обозначается номером.
Когда электронное письмо отправляется на другой домен, к нему прикрепляется номер порта, чтобы сообщить, на какой порт оно должно идти для правильной доставки.
Если бы мы отправляли электронное письмо на домен example.com с IP-адресом xxx.xxx.xxx.xxx и использовали порт SMTP 587 для получения электронных писем, адрес «отправить электронное письмо» был бы xx x. ххх.ххх.ххх:587 .
Что такое SMTP-сервер?
SMTP-сервер — это машина, предназначенная для обработки отправки, получения и ретрансляции электронной почты по сети — будь то в локальной сети (LAN) или через Интернет.
Когда пользователи нажимают кнопку «Отправить» для отправки электронного письма, почтовый клиент отправляет запрос на подключение и связь на SMTP-сервер.
SMTP-сервер принимает запрос, открывает соединение и начинает принимать инструкции по передаче электронной почты. Информация, включенная в инструкции, сообщает серверу адреса электронной почты отправителя и получателя, а также содержащееся сообщение.
После подтверждения данных агентом пересылки почты (MTA) электронная почта ретранслируется на SMTP-сервер домена получателя, который передает ее почтовому клиенту получателя.
Типы SMTP-серверов
Существует два типа SMTP-серверов:
- Обычные SMTP-серверы — это обычные SMTP-серверы, которым поручено ретранслировать электронные письма между источником и получателем сообщений. Пример SMTP-сервера — hMailServer 9.0033
- Прокси-серверы SMTP — это серверы, которые аутентифицируют электронные письма перед их ретрансляцией получателю. Их можно настроить так, чтобы они были двунаправленными и обрабатывали как входящую, так и исходящую проверку подлинности электронной почты. Примером может служить почтовый прокси-сервер Nginx.
Как работает SMTP? – Реальные примеры использования
Команды SMTPпредставляют собой набор кодов, которые помогают передавать сообщения электронной почты между серверами. Некоторые из основных SMTP-команд включают в себя:
- Hello, HELO, EHLO — команда, используемая для запуска процесса отправки электронной почты.
Почтовый клиент идентифицирует себя на SMTP-сервере, используя такую информацию, как имя домена и IP-адрес.
- Hello, HELO, EHLO — команда, используемая для запуска процесса отправки электронной почты.
- ПОЧТА ОТ — идентифицирует отправителя электронной почты, используя адрес электронной почты, запускает транзакцию и гарантирует, что сервер готов принять электронную почту. Когда все готово, сервер отвечает кодом ответа 250 OK.
- RCPT TO, Recipient To — эта команда обращается к получателю или тому, кому отправляется электронное письмо. Сервер снова отвечает кодом ответа 250 OK. Этот цикл повторяется для каждого получателя в адресе.
- ДАННЫЕ — теперь пришло время передать данные с клиента на сервер. Весь контент перемещен на сервер. Получив все это, сервер отвечает кодом ответа 345, сигнализирующим об окончании сообщения, за которым следует одна точка, обозначающая конец сообщения. В ожидании приемки и готовности к сдаче еще код 250 ОК.
Затем сообщение отправляется получателю.
- ДАННЫЕ — теперь пришло время передать данные с клиента на сервер. Весь контент перемещен на сервер. Получив все это, сервер отвечает кодом ответа 345, сигнализирующим об окончании сообщения, за которым следует одна точка, обозначающая конец сообщения. В ожидании приемки и готовности к сдаче еще код 250 ОК.
- ВЫЙТИ — после передачи сообщения почтовый клиент отправляет команду ВЫЙТИ, чтобы разорвать соединение с сервером, который отвечает кодом 221.
- RESET — эта команда отправляется на сервер, когда необходимо завершить транзакцию электронной почты. Все переменные сбрасываются, и весь процесс можно перезапустить. Обычно он используется, когда возникает ошибка и процесс необходимо повторить с нуля.
Обмен данными между клиентом и сервером будет выглядеть примерно так:
Как работает SMTPОбщие ошибки SMTP
Как и любой другой технический процесс, процесс электронной почты также может привести к ошибке. Сообщения могут возвращаться, их можно блокировать или просто отклонять, и в этом случае сервер-получатель уведомляет клиентов, используя коды ошибок SMTP.
Существует две распространенные группы ошибок SMTP:
- 4.
X.X Persistent Transient Failure — указывает на временный сбой почтового сервера. Это можно решить, повторяя команду снова и снова, хотя эти коды часто используются серверами для защиты от ненадежных отправителей.
- 4.
- 5.X.X Постоянная ошибка — указывает, что SMTP-соединение было разорвано и будет создаваться до тех пор, пока не вернется в оперативный режим.
Преимущества владения SMTP-сервером
Мы видели, что SMTP является важным протоколом, поддерживающим наше общение через Интернет. Это неотъемлемая часть офисной среды, и наличие собственного SMTP-сервера имеет смысл.
Некоторые веские причины для бизнеса иметь собственный SMTP-сервер включают в себя:
- Полный контроль над сервером — компания должна иметь полный контроль над своими серверами, включая SMTP-сервер; управление, мониторинг, администрирование, восстановление, безопасность и резервное копирование сервера полностью контролируются бизнесом.
- Полный контроль над сервером — компания должна иметь полный контроль над своими серверами, включая SMTP-сервер; управление, мониторинг, администрирование, восстановление, безопасность и резервное копирование сервера полностью контролируются бизнесом.
- Неограниченная отправка электронной почты и создание учетной записи — большинство сторонних служб ретрансляции SMTP имеют ограничение на количество электронной почты, которую можно отправить. Конечно, клиенты могут покупать пакеты с неограниченными возможностями отправки, но это имеет свою цену. Можно создать столько учетных записей, сколько необходимо.
- Отслеживание электронной почты — наличие сервера означает, что компания может отслеживать электронные письма; споры относительно того, было ли отправлено и доставлено электронное письмо, могут быть легко разрешены путем просмотра записей.
- Предотвращает попадание в черный список — компания может защитить свою репутацию и предотвратить попадание своего IP-адреса в черный список.
- Проверка электронной почты — предприятия могут защитить себя от электронных писем, рассылаемых спамерами, злоумышленниками и содержащих вредоносный контент с непроверенных адресов.
- Проверка электронной почты — предприятия могут защитить себя от электронных писем, рассылаемых спамерами, злоумышленниками и содержащих вредоносный контент с непроверенных адресов.