Что такое смтп сервер
Что такое SMTP-сервер и зачем его использовать?
SMTP — это простой протокол передачи почты. С английского языка переводится, как Simple Mail Transfer Protocol. Исходя из названия, можно сделать вывод, что SMTP сервер отвечает за отправку почтовых рассылок. Его задача, как правило, состоит из двух основных функций:
проверка правильности настроек и выдача разрешения компьютеру, который пытается отправить электронное сообщение;
отправка исходящего сообщения на указанный адрес и подтверждение успешной отправки сообщения. Если доставка невозможна, сервер возвращает отправителю ответ с ошибкой отправки.
Отправляя email сообщения, SMTP-сервер отправителя устанавливает связь с тем сервером, который будет получать это сообщение. Такое «общение» происходит путем отправки и получения команд, формируя SMTP-сессию с неограниченным количеством SMTP-операций. Обязательными командами для каждой операции являются три:
определение обратного адреса (MAILFROM)
определение получателя email сообщения (RCPT TO)
отправка текста сообщения (DATA)
Определение адреса отправителя, получателя и наличие содержимого письма – это обязательные условия, без которых письмо не будет отправлено, даже по обычной, знакомой нам «бумажной» почте. Что уже говорить про электронную.
Вкратце о пользе SMTP сервера
Как уже упоминалось, основным предназначением SMTP сервера является отправка и контроль исходящей почты. Качественный SMTP сервер способен быстро отправлять большой объем email сообщений, уклоняясь от ограничений провайдера.
В случае если вы используете внешний SMTP сервер, то безопасность email сообщений и процент их доставки в папку «входящие» значительно повышается.
Где же найти этот внешний SMTP сервер? Детальнее об этом вопросе читайте здесь.
Электронная почта может проходить несколько SMTP серверов, прежде чем попадет в почтовый ящик получателя. Так как существует риск спам-атак, провайдеры зачастую пресекают отправку электронной почты без использования SMTP сервера. Поэтому пользователи порой имеют проблемы с рассылками писем.
Решением может выступить установка/интеграция отдельного внешнего SMTP сервера, который к тому же будет фильтровать сообщения исходящей почты на спам и вирусы.
Повышение безопасности рассылок достигается так же и авторизацией пользователя, который использует SMTP сервер: задав индивидуальный логин и пароль для подключения к серверу.
И, что важно, интеграция SMTP сервера происходит без установки дополнительного программного обеспечения или других особых требований. Вы просто прописываете основные параметры SMTP сервера в настройках вашего почтового клиента, и можете приступать к массовым email рассылкам.
Если вы планируете заниматься легальным email маркетингом, задумайтесь об использовании внешнего SMTP-сервера для безопасности и скорости рассылки своих массовых email кампаний.
SMTP-сервер
Создайте рассылку в конструкторе за 15 минут. Отправляйте до 1500 писем в месяц бесплатно.
Отправить рассылку
Simple Mail Transfer Protocol (SMTP) — простой протокол связи, применяемый с целью пересылки электронных писем с сервера отправителя на сервер получателя. Этот протокол не рассчитан на обработку входящих сообщений, его используют для отправки и последующей доставки писем адресату. Преимущественно с помощью SMTP отправляют массовые и транзакционные рассылки.
Иногда протокол SMTP путают с IMAP или POP. Но между ними есть существенная разница. SMTP применяют для пересылки писем, тогда как POP или IMAP используют для обработки этих писем после получения.
Схема отправки письма по протоколу SMTP
SMTP-сервер — сервер, который работает по протоколу SMTP. Его главная задача — выступать ретранслятором (передатчиком) между серверами отправителя и адресата. Каждый SMTP-сервер обладает собственным адресом в формате smtp.serveraddress.com. Это позволяет безошибочно определять нужный сервер при пересылке почты.
Как происходит отправка почты через SMTP
Протокол SMTP работает по несложному набору правил:
Функционал SMTP ограничивается доставкой писем. На стороне адресата электронное письмо извлекается с помощью POP и IMAP.
Отправка писем по SMTP происходит через получение ответов на команды:
Пошагово отправка письма по SMTP выглядит так:
Понять принцип работы SMTP просто, если представить себе почтальона, который забирает письмо у отправителя, находит правильный маршрут назначения и доставляет сообщение в почтовый ящик адресата.
Для работы по протоколу SMTP стандартно применяют 25 порт. Но во избежание спам-рассылок провайдеры могут закрыть к нему доступ. Тогда его заменяют дополнительными портами:
Какие типы SMTP-серверов существуют
Все SMTP-серверы условно разделяют на два типа:
Также SMTP-серверы можно классифицировать в зависимости от источника. Сервер для отправки писем могут предоставить:
Выбор подходящего сервера обусловлен целями компании и масштабами деятельности. При небольшом количестве писем можно обойтись бесплатными вариантами или функционалом своего сайта. Для массовых рассылок, когда количество писем достигает нескольких сотен, тысяч или миллионов, стоит обратить внимание на виртуальные серверы и коммерческие сервисы транзакционных рассылок.
К примеру, UniOne, сервис транзакционных рассылок от UniSender, позволяет отправлять миллионы писем через SMTP-сервер. Для отправки рассылок нужно всего лишь указать хост, логин и пароль.
Преимущества SMTP для email-маркетинга
Высокая доставляемость. Во избежание спама провайдеры могут блокировать отправку почты или ограничивать количество писем с одного почтового ящика. При использовании SMTP вероятность блокировки снижается за счёт обязательной авторизации пользователя. Обычно для авторизации применяют логин и пароль от учётной записи пользователя в конкретном сервисе или аккаунте.
Высокая безопасность взаимодействия. Личные данные подписчиков хранятся на сервере отправителя. SMTP-сервер лишь пересылает письмо, не сохраняя данные.
Не нужно устанавливать дополнительное программное обеспечение. Для запуска достаточно понимать принцип работы протокола и знать необходимый набор команд.
Детальные отчёты о доставке писем и возникающих ошибках. К примеру, ошибка на этапе передачи данных MAIL FROM означает, что ваш обратный адрес не понравился серверу получателя.
Высокая скорость доставки писем. При этом отправитель точно знает, получил ли адресат сообщение.
Низкая стоимость. Отправка писем через SMTP обойдётся в десятки раз дешевле в сравнении с отправкой сообщений через сервисы email-рассылок. Сервисы email-рассылок предоставляют дополнительные возможности для работы с письмами: конструкторы, шаблоны, автоматические цепочки, подробную аналитику. У SMTP-сервера лишь одна задача — доставить сообщение адресату. Когда вам требуется максимально оперативно доставить большое количество писем, например, транзакционных, лучше использовать SMTP.
Особенности применения SMTP
Несмотря на все плюсы SMTP-сервера, у него есть свои особенности, которые нужно учитывать:
Если вы планируете использовать SMTP-сервер для рассылок, но не хотите заморачиваться с настройками, воспользуйтесь готовым решением, выбрав один из сервисов транзакционных рассылок. Самое приятное, что у большинства таких сервисов есть бесплатные тарифы.
Что такое смтп сервер
Simple Mail Transfer Protocol
Отправка электронной почты
SMTP (англ. Simple Mail Transfer Protocol — простой протокол передачи почты) — это широко используемый сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP.
SMTP впервые был описан в RFC 821 (1982 год); последнее обновление в RFC 5321 (2008) включает масштабируемое расширение — ESMTP (англ. Extended SMTP ). В настоящее время под «протоколом SMTP», как правило, подразумевают и его расширения. Протокол SMTP предназначен для передачи исходящей почты с использованием порта TCP 25.
В то время, как электронные почтовые серверы и другие агенты пересылки сообщений используют SMTP для отправки и получения почтовых сообщений, работающие на пользовательском уровне клиентские почтовые приложения обычно используют SMTP только для отправки сообщений на почтовый сервер для ретрансляции. Для получения сообщений клиентские приложения обычно используют либо POP (англ. Post Office Protocol — протокол почтового отделения), либо IMAP (англ. Internet Message Access Protocol ), либо патентованные системы (такие как Microsoft Exchange и Lotus Notes/Domino) для доступа к учетной записи своего почтового ящика на сервере.
Содержание
История
В 1960-х годах использовались различные виды электронной связи. Люди связывались друг с другом с помощью систем, разработанных для определённых мейнфреймов. Когда всё больше компьютеров становились связанными, особенно в сети Правительства США, ARPANET, были разработаны стандарты для того, чтобы пользователи на различных системах могли писать электронные сообщения друг другу. Эти стандарты, разработанные в 1970-х годах, стали основой для SMTP.
Корни SMTP можно проследить в двух описанных в 1971 г. реализациях — Mail Box Protocol и SNDMSG, который был «изобретен» Рэем Томлинсоном из BBN Technologies для TOPS-20/TENEX-компьютеров, посылающих сообщения по ARPANET (в то время к ней были подсоединены менее 50 хостов).
Дальнейшие реализации включают в себя FTP Mail и Mail Protocol, разработанные в 1973 г. Разработка продолжалась на протяжении 1970-х, пока ARPANET не преобразовалась в современный Интернет около 1980 г. В том же году Джон Постел предложил Mail Transport Protocol (протокол передачи почты), благодаря которому FTP перестал быть основой для передачи почты. SMTP опубликован в RFC 821 (также написанном Постелом) в августе 1982 г.
Стандарт SMTP был разработан примерно в то же время, что и Usenet, сеть передачи данных, имеющая некоторые сходства с SMTP. SMTP стал широко использоваться в ранние 1980-е. В то время, он был дополнением для работающей под Unix почтовой программы Unix Copy Program (UUCP), которая больше подходила для обработки передачи электронных сообщений между периодически связанными устройствами. С другой стороны, SMTP прекрасно работает, когда как отправляющее, так и принимающее устройства связаны в сети постоянно. Оба устройства используют механизм хранения и пересылки и являются примером push-технологии (технологии «проталкивания»). Хотя новостные группы Usenet все еще распространяются между серверами с помощью UUCP, почта UUCP фактически исчезла вместе с маршрутом «bang path» (последовательность хост-машин в сети, по которой сообщение должно дойти до адресата), которые использовались как заголовки маршрутизации. В статье о перезаписи отправителя содержится техническая справочная информация о истории раннего SMTP и маршрутизации от источника до RFC 1123.
Sendmail был одним из первых (если не первым) агентом пересылки сообщений, в котором был реализован SMTP. В число других популярных серверных программ, поддерживающих SMTP, входят Postfix, qmail, Novell GroupWise, Exim, Novell NetMail, Microsoft Exchange Server, Sun Java System Messaging Server.
Предоставление сообщений (RFC 2476) и SMTP-AUTH (RFC 2554) были введены в 1998 и 1999 г.г. и описывали новые тенденции в передаче электронных сообщений. Изначально, SMTP-сервера были обычно внутренними для организации, получая сообщения от организаций извне и ретранслируя сообщения организации во внешнюю среду. Но с течением времени, SMTP-сервера (агенты пересылки сообщений), на деле, расширяли свои функции и в конце концов стали агентами предоставления сообщений для пользовательских почтовых приложений, некоторые из которых теперь ретранслировали почту извне организации (например, руководитель компании, будучи в поездке, хочет отправить электронное сообщение с помощью корпоративного SMTP-сервера).
Данный вопрос, являясь следствием быстрого развития и популярности Всемирной паутины, означает, что SMTP должен был включать в себя особые правила и методы для ретрансляции сообщений и авторизации пользователей для предотвращения таких злоупотреблений, как ретрансляция нежелательной почты (спам).
Поскольку этот протокол сначала был с текстовым (ASCII) интерфейсом, то он плохо работал с бинарными файлами и символами многих неанглийских языков. Такие стандарты, как Multipurpose Internet Mail Extensions (MIME), были разработаны для кодирования двоичных файлов для передачи через SMTP. Разработанные после Sendmail агенты пересылки, как правило, также осуществляли опцию чистых 8 бит, так что альтернативная стратегия «просто посылай восемь» может быть использована для передачи произвольных текстовых данных (в любой восьмибитной ASCII-подобной кодировке символов) через SMTP. Однако все еще оставалась проблема кракозябр, вызванная разным отображением наборов символов у производителей, хотя сами почтовые адреса все еще позволяли использовать исключительно ASCII. Сегодня агенты пересылки, работающие с чистыми 8 битами, как правило, поддерживают расширение 8BITMIME, позволяющее передавать бинарные файлы почти так же легко, как обычный текст. Недавно было создано расширение SMTPUTF8 для поддержки текста в кодировке UTF-8, благодаря чему стало возможным включать международное содержимое и адреса с использованием таких алфавитов, как кириллица или китайский.
Многие выдающиеся люди внесли свой вклад в спецификацию основного SMTP, среди них Джон Постел, Эрик Оллман, Дэйв Крокер, Нед Фрид, Рэндалл Джелленс, Джон Кленсин и Кейт Мур.
Модель обработки почты
Электронная почта представлена почтовым клиентом (MUA, mail user agent — пользовательский почтовый агент) для почтового сервера (MSA, mail submission agent — агент передачи электронной почты) с помощью SMTP по TCP-порту 587. Оттуда MSA доставляет почту своим агентам пересылки сообщений (MTA, mail transfer agent). Часто эти два агента являются просто различными образцами одного и того же программного обеспечения, запущенного с разными параметрами на одном устройстве. Локальная обработка может быть проведена как на отдельной машине, так и разделена между различными устройствами; в первом случае вовлеченные процессы имеют общий доступ к файлам, во втором случае SMTP используется для пересылки сообщения внутренне, причем каждый хост настроен на использование следующего устройства в качестве промежуточного хоста. Каждый процесс — сам по себе MTA, т. е. — SMTP-сервер.
Граничный MTA должен найти целевой хост. Он использует систему доменных имен (DNS) для поиска записей почтового обменника (mail exchanger — MX) домена получателя (часть адреса, находящаяся справа от символа @). Возвращаемая запись почтового MX содержит имя целевого хоста. Затем MTA подключается к серверу обмена в качестве SMTP-клиента.
Как только цель MX принимает входящее сообщение, она передает его агенту доставки почты (mail delivery agent — MDA) для локальной доставки сообщения. MDA предусматривает возможность сохранять сообщения в соответствующем формате почтового ящика. Прием почты, опять же, может быть проведен как несколькими, так и одним компьютером — изображение показывает два ближайших ящика для каждого случая. MDA может доставлять сообщения прямо на хранение или передавать их по сети с помощью SMTP или любых других средств, в том числе протокола локальной пересылки почты (Local Mail Transfer Protocol — LMTP) — производного от SMTP, предназначенного для этой цели.
После доставки на локальный почтовый сервер сообщение хранится для пакетного поиска по аутентифицированным почтовым клиентам (MUA). Сообщение извлекается приложениями конечного пользователя (почтовые клиенты) с использованием Internet Message Access Protocol (IMAP, который облегчает доступ к сообщениям и управляет хранящейся почтой), или же с помощью Post Office Protocol (POP), который обычно использует традиционный mbox-формат файлов, или фирменные системы вроде Miscrosoft Exchange/Outlook или Lotus Notes/Domino. Клиенты сетевой почты могут использовать любой метод, но протокол поиска часто не соответствует официальным стандартам.
SMTP определяет передачу сообщения, а не его содержание. Таким образом, он задает оболочку сообщения и её параметры (такие, как отправитель оболочки), но не заголовок либо тело самого сообщения. STD 10 и RFC 5321 определяют SMTP (оболочку), в то время как STD 11 и RFC 5322 — сообщение (заголовок и тело), официально называемый форматом почтового сообщения (Internet Message Format).
Обзор протокола
SMTP — требующий соединения текстовый протокол, по которому отправитель сообщения связывается с получателем посредством выдачи командных строк и получения необходимых данных через надёжный канал, в роли которого обычно выступает TCP-соединение (Transmission Control Protocol — протокол управления передачей). SMTP-сессия состоит из команд, посылаемых SMTP-клиентом, и соответствующих ответов SMTP-сервера. Когда сессия открыта, сервер и клиент обмениваются её параметрами. Сессия может включать нуль и более SMTP-операций (транзакций).
SMTP-операция состоит из трёх последовательностей команда/ответ (см. пример ниже). Описание последовательностей:
Помимо промежуточных ответов для DATA-команды, каждый ответ сервера может быть положительным (код ответа 2хх) или отрицательным. Последний, в свою очередь, может быть постоянным (код 5хх) либо временным (код 4хх). Отказ SMTP-сервера в передаче сообщения — постоянная ошибка; в этом случае клиент должен отправить возвращённое письмо. После сброса — положительного ответа, сообщение скорее всего будет отвержено. Также сервер может сообщить о том, что ожидаются дополнительные данные от клиента (код 3xx).
Изначальным хостом (SMTP-клиентом) может быть как почтовый клиент конечного пользователя (функционально определяемый как почтовый агент — MUA), так и агент пересылки сообщений (MTA) на сервере, т.е. сервер действует как клиент в соответствующей сессии для ретрансляции сообщения. Полностью функциональные сервера поддерживают очереди сообщений для повторной передачи сообщения в случае ошибок.
MUA знает SMTP-сервер для исходящей почты из своих настроек. SMTP-сервер, действующий как клиент, т. е. пересылающий сообщения, определяет, к какому серверу подключиться, просмотром ресурса записей MX (Mail eXchange) DNS для домена каждого получателя. В случае, если запись MX не найдена, совместимые MTA (не все) возвращаются к простой А-записи. Пересылающие сервера также могут быть настроены на использование Smart host.
SMTP-сервер, действующий как клиент, устанавливает TCP-соединение с сервером по разработанному для SMTP порту 25. MUA должен использовать порт 587 для подключения к агенту предоставления сообщений (MSA). Основное различие между MTA и MSA заключается в том, что SMTP-аутентификация обязательно только для последнего.
SMTP и извлечение сообщений
SMTP — всего лишь протокол доставки. Он не может по требованию взять сообщения с удаленного сервера. Для извлечения почты и управления почтовым ящиком разработаны другие протоколы, такие как POP и IMAP. Тем не менее, SMTP предоставляет возможность начать на удаленном сервере обработку очереди сообщений, при которой запрашивающая система может получать все направленные ей сообщения (см. Remote Message Queue Starting ниже). POP и IMAP предпочтительны, когда компьютер пользователя включен не постоянно, или же временно подключен к Интернету.
Remote Message Queue Starting
Remote Message Queue Starting (запуск удаленной очереди сообщений) — особенность SMTP, позволяющая удаленнному хосту начать обработку очереди сообщений на сервере так, что он может получать предназначенные ему сообщения с помощью команды TURN. Однако эта особенность считалась небезопасной и была расширена в RFC 1985 командой ETRN, которая работает надёжнее благодаря основанному на информации DNS методу аутентификации.
On-Demand Mail Relay
ODMR (On-Demand Mail Relay — ретрансляция почты по требованию) — стандартизированное в RFC 2645 SMTP-расширение, позволяющее проводить ретрансляцию сообщения аутентифицированному пользователю.
Интернационализация
Многие пользователи, чей набор символов отличается от латиницы, сталкиваются с требованием адреса электронной почты на латинице. Для решения этой проблемы был создан RFC 6531, предоставляющий возможности для интернационализации для SMTP — расширение SMTPUTF8. RFC 6531 предоставляет поддержку многобайтных и не-ASCII символов в почтовом адресе, например: δοκιμή@παράδειγμα.δοκιμή или 测试@测试.测试. Текущая поддержка ограничена, но есть большой интерес в широком распространении RFC 6531 и связанных с ним RFC в странах с обширной базой пользователей, для которых латиница не является родным алфавитом.
SMTP-сервер исходящей почты
Почтовый клиент должен знать IP-адрес SMTP-сервера, который задается как часть конфигурации (обыкновенно в виде DNS-имени). Сервер будет доставлять исходящие сообщения от лица пользователя.
Ограничения доступа к серверу исходящей почты
Администраторам сервера необходимо контролировать то, какие клиенты могут использовать сервер. Это позволяет им бороться с такими злоупотреблениями, как спам. Обычно используются два решения:
Ограничение доступа по местоположению
В этом случае SMTP-сервер интернет-провайдера не разрешит допуск пользователям «за пределами» сети провайдера. Точнее, сервер может допустить лишь тех пользователей, чей IP-адрес предоставлен данным провайдером, что эквивалентно требованию соединения с Интернетом с помощью этого провайдера. Мобильный пользователь часто может оказаться в сети, отличной от сети своего провайдера, и потому сообщения не будут отправляться.
У данной системы есть несколько разновидностей. Например, SMTP-сервер организации может предоставлять доступ только пользователям той же сети, блокируя остальных пользователей. Также сервер может проводить ряд проверок клиентского IP-адреса. Эти методы обычно использовались организациями и учреждениями, например университетами, для внутреннего пользования сервером. Однако, большая их часть теперь использует описанные ниже методы аутентификации.
Благодаря ограничению доступа определенным адресам, администраторы сервера могут легко определить адрес любого злоумышленника. Если пользователь может использовать различные провайдеры для соединения с Интернетом, этот вид ограничения становится нецелесообразным, а изменение настроенного адреса SMTP-сервера исходящей почты непрактично. Крайне желательно иметь возможность использовать такую информацию о настройках клиента, которая не нуждается в изменении.
Аутентификация клиента
Вместо описанного ранее ограничения по местоположению, современные SMTP-сервера обычно требуют аутентификацию пользователей перед получением доступа. Эта система, будучи более гибкой, поддерживает мобильных пользователей и предоставляет им фиксированный выбор настроенного сервера исходящей почты.
Открытый релей
Сервер, доступный для широкой сети и не предоставляющий эти виды ограничения доступа, называют открытым релеем. Сейчас такие сервера считаются дурным тоном.
Порты
Некоторые сервера настроены на отклонение всех ретрансляций по порту 25, но пользователям, прошедшим аутентификацию по порту 587, позволено перенаправлять сообщения на любой действительный адрес.
Некоторые провайдеры перехватывают порт 25, перенаправляя трафик на свой собственный SMTP-сервер вне зависимости от адреса назначения. Таким образом, их пользователи не могут получить доступ к серверу за пределами провайдерской сети по порту 25.
Некоторые сервера поддерживают аутентифицированный доступ по дополнительному, отличному от 25, порту, позволяя пользователям соединяться с ними, даже если порт 25 заблокирован.
Пример простейшей SMTP-сессии
C: — клиент, S: — сервер
В результате такой сессии письмо будет доставлено адресату user1@company.tld, но не будет доставлено адресату user2@company.tld, потому что такого адреса не существует.
Дополнительные расширения
Безопасность SMTP и спам
Однако, непрактичность широкого распространения реализации и управления SMTP-AUTH означает, что проблема спама не может быть решена с его помощью.
Обширное изменение SMTP, так же как и полная его замена, считаются непрактичными из-за огромной инсталированной базы SMTP. Internet Mail 2000 был одним из претендентов для такой замены.
Спам функционирует благодаря различным факторам, в том числе не соответствующие стандартам реализации MTA, уязвимости в защите операционных систем (усугубляемые постоянным широкополосным подключением), что позволяет спамерам удаленно контролировать компьютер конечного пользователя и посылать с него спам.
Расширения ESMTP
Если же сервер поддерживает ESMTP, то кроме приветствия он сообщит список поддерживаемых расширений протокола SMTP, например: