smtp шлюз что это

Шлюз для почтового сервера

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

У компании имеются удаленные партнерские филиалы, равномерно распределенные по всей Западной Европе, использующие один почтовый сервер. К сожалению, бюджет IT-отдела не очень большой, а пользователей достаточно много (около 700 почтовых аккаунтов). Использовался, да и сейчас используется для почты Exchange 2010 с последними обновлениями и более-менее настроенными правилами фильтрации спама, а вот с антивирусом как-то не заладилось. Купленное решение отказывалось нормально работать, раздувая очередь входящей корреспонденции до неприличных размеров и вешая намертво всю почту. (Да, я знаю, что все best practice говорят о необходимости и edge-сервера, и отдельно сервера архивации, но что было на тот момент, то и было.)

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

Из того, что было в конечном итоге протестировано и опробовано:

Начнем по порядку. Zentyal отпал достаточно быстро, потому что цели менять всю инфраструктуру Active Directory и переезжать на open-source решение не стояло, да и вообще, он скорее представляет из себя эдакий комбайн из всего, что только возможно. Как мне кажется, он прекрасно подошел бы SMB до 50 пользователей.

После усиленного гугления и пробы еще нескольких продуктов, я остановил свой выбор на Xeams. Да, к большому сожалению, это не OpenSource, а закрытый продукт, однако, он очень дружелюбен к тем администраторам, у которых нет большого опыта в связках Linux&Dovecot&Postfix&etc. Кроме того, он кросплатформенный, так что не возникнет проблем даже у тех, кто с линкусом на вы.

Работать он может в трех режимах:
Stand alone server — да, xeams умееть быть и просто почтовым сервером. На сколько хорошим не могу сказать, потому что эта функция интересовала меня в последнюю очередь.
Spam firewall — в этом режими xeams только принимает весь почтовый трафик на себя и дальше распределяет на корпоративные почтовые сервера.
Hybrid mode — Гибридный режим. Объединяет два других, рекомендую ставить его, поскольку полноценно фильтровать спам он не сможет без пропуска исходящего трафика через себя.

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это
Так как у нас уже был почтовый сервер, то использовался вариант SMTP-Proxy

Установка производилась на чистую машину с Ubuntu 14.04. Единственное, что необходимо было доставить, так это Java, на которой, собственно, работает движок Xeams.

Xeams использует ClamAV, правда, рекомендует ставить его на отдельную машину, но в процессе использования на одной машине никаких проблем замечено не было. Если необходимо позже переконфигурировать настройки ClamAV, то это тоже можно сделать без проблем.

Качаем архив с инсталлятором отсюда. Распаковываем, даем права и выполняем.

Если все прошло успешно, Web-Interface будет доступен по 5272 порту.

Главная страница содержит отчеты, графики и основные параметры потребления ресурсов. Мы дали машине 8Гб RAM, пиковая нагрузка несколько раз достигала 6, так что такие цифры вполне оправданы.

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

Переходим к самой настройке. На Firewall весь трафик на 25 порт заворачиваем на IP нашего Xeams на порт 2525. Это сделано потому, что у нас Xeams не только получает, но через него и отправляется почта, так что входящая приходит на 2525й порт, а исходящая на 25й порт.

В целом, настройка Xeams простая и достаточно удобная. На которые моменты все-таки, хотелось бы обратить внимание:

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

Указываем порт для http/https web-доступа.
DNS, если указан в настройках самой машины, то можно не указывать
И адрес, для ежедневных отчетов.

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

На вкладке Advanced необходимо указать HELO (как правило, можно просто скопировать из настроек имеющегося почтового сервера), чтобы самим не попасть в СпамЛисты.

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

Используйте только Closing relay и пропишите адреса и хосты, с которых можно будет отправлять почту без аутентификации.
Со стороны Exchange это выглядит вот так, где закрашенным прописан адрес smtp-relay

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

Здесь все просто, указываем порты, на которые принимается почта, указываем адрес пересылки и порт. В нашем случае, это адрес корпоративного Exchange

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

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

Если у Вас поднят Active Directory, то его без проблем можно интегрировать в Xeams. Зачем? Хотя бы для того, чтобы пользователи не мучали Вас в первое время, что у них не доходит почта. Пользователь без проблем сможет зайти и проверить свой почтовый ящик, просмотреть свой спам и прописать свои black/whitelist:

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

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

Если Вы, также, как и я установили ClamAV на тот же сервер, что и Xeams, то страница настройки будет приглядеть примерно вот так:

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

чуть ниже я расскажу о некоторых нюансах его использования.

У Xeams достаточно большой набор спамфильтров:

Real-time Black-hole servers (RBL). Каждому списку можно выставить свои очки значимости, на основе которых, Xeams определяет благонадежность письма.

Из адаптивных фильтров используется Bayesian Analysis, которая вполне справляется с возложенными на нее функциями. Были опасения, что работать он будет плохо, из-за большого количества языков переписки (русский, немецкий, английский, испанский, итальянский, польский, греческий), однако, процент ложных срабатываний достаточно низок.

Auto Learn Sender. Отличная вещь, именно из-за него мы пропускаем весь исходящий почтовый трафик через Xeams, который анализирует адреса получателей и принимает их во внимание, когда выносит окончательную оценку благонадежности письма.

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

Теперь несколько слов хотелось бы уделить не совсем очевидным нюансам:
После нескольких дней использования, мы изменили стандартные настройки фильтров и конфигурацию очков:

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

и Bayesian Score подняли до 115.
Самым распрастраненнным ложным срабатыванием являлась проблема правильной кодировки, так как, все-таки, Xeams заточен на английский язык, решилась отключением этой настройки.

В целом, через две недели после использования и анализа спама, возможного спама, можно сказать, что 98% спама действительно не проходит.

Буду рад предложениям, комментариям и критике в комментах.

Источник

Почтовая кухня #2: SMTP

SMTP (англ. Simple Mail Transfer Protocol — простой протокол передачи электронной почты) — это сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP.
ESMTP (англ. Extended SMTP) — масштабируемое расширение протокола SMTP. В настоящее время под «протоколом SMTP», как правило, подразумевают ESMTP и его расширения.

Сразу отмечу, что в настоящее время SMTP в чистом виде практически не используется, т.к. он даже не поддерживает элементарно авторизацию… Используется ESMTP. Когда/если вы отправляете почту почтовым клиентом (Outlook, Thunderbird, Evolution, TheBat) происходит работа именно по этому протоколу.

Для работы по этому протоколу нужно соединиться с почтовым сервером по определенному порту и отправить некоторую последовательность ESMTP команд.
Команда представляет из себя строку вида
КОМАНДА[пробел]параметр(опционально)
В ответ на команду сервер возвращает строку вида
XXX[пробел]доп. информация
При этом XXX число в ответе сервера обозначает:
2ХХ — команда успешно выполнена
3XX — ожидаются дополнительные данные от клиента
4ХХ — временная ошибка, клиент должен произвести следующую попытку через некоторое время
5ХХ — неустранимая ошибка

Так вот, давайте перейдем ближе к делу — попробуем элементарно отправить e-mail из консоли через какой-нибудь почтовый сервер (не важно, линукс у вас или виндоус). Так будет проще познакомиться с этим протоколом — сразу на практике. Привожу комманды и параллельно объясняю их значение.

Для нашего эксперимента буду использовать почтовый сервер яндекса. Подразумевается, что уже есть там аккаунт…
Сразу предупреждаю, что после соединения все команды нужно вводить максимально быстро, т.к. при задержке около 15 секунд соединение автоматически разрывается. Рекомендую сперва все команды заранее набрать в текстовом редакторе а после просто вставлять их в командную строку.

telnet smtp.yandex.ru 2025 #соединяемся с smtp почтовым сервером. Адрес и порт smtp сервера можно посмотреть в инструкциях на сайте почтовика
Ответ:

Trying 213.180.204.38…
Connected to smtp.yandex.ru.
Escape character is ‘^]’.
220 Yandex ESMTP (NO UCE)(NO UBE) server ready at Mon, 2 Feb 2009 13:47:22 +0300

Код 220 говорит об успешном соединении

EHLO [91.198.212.5] #Приветствуем сервер и отсылаем ему наш внешний IP (IP не обязательно отсылать, можно обойтись просто EHLO, но сервер скорее всего на это ругнется)
UPD: Желательно отправлять даже не IP а доменное имя для этого IP вродеEHLO you.provider.domain без квадратных скобок
Ответ:

250-smtp18.yandex.ru Hello 91.198.212.5
250-SIZE 20971520
250-8BITMIME
250-PIPELINING
250-CHUNKING
250-ENHANCEDSTATUSCODES
250-DSN
250-X-RCPTLIMIT 25
250-AUTH=LOGIN
250-AUTH LOGIN
250-STARTTLS
250 HELP

Сервер принял приветствие и выслал список поддерживаемых команд. Из этого списка нас интересует AUTH LOGIN. Это команда для авторизации на сервере по base64-закодированному логину и паролю. Так вот, нужно заранее подготовить закодированные в base64 пароль и логин от вашей почты. Можно это сделать, например, здесь seriyps.ru/crypt или командой в Linux echo [ваш пароль/логин] | base64

AUTH LOGIN # Сообщаем серверу о намерении пройти авторизацию
Ответ:

Этот самый VXNlcm5hbWU6 — закодированное в base64 слово “Username:”, а номер ответа 3ХХ означает, что сервер ждет от нас дополнительной информации. Не будем его огорчать:

ВАШ_ЛОГИН_ПОЧТЫ_В_BASE_64 #Отправляем ваш логин почты в base64, например dmFzaWFwdXBraW4=
Ответ:

Это, как можно догадаться, “Password:” в base64

ВАШ_ПАРОЛЬ_ПОЧТЫ_В_BASE_64 # Отправляем пароль почты в base64, например MTIzNDU2
Ответ:

т.е. авторизация прошла успешно. Теперь можно отправлять e-mail)

MAIL FROM: vasiapupkin@ya.ru # Сообщаем, что хотим отправить почту с адреса vasiapupkin@ya.ru Адрес может быть любым (в том числе с несуществующих доменов, однако он может проверяться при проверке на спам)
Ответ:

RCPT TO: billy@microsoft.com # Сообщаем, что хотим отправить письмо на адрес billy@microsoft.com
Ответ:

250 2.1.5 Recipient address syntax Ok; rcpt=

DATA # Здесь сообщаем, что начинаем передачу данных.
Ответ:

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

Два раза Энтер, затем вводим сам текст письма.
Hello, Billy! You’ll die tomorrow!
Энтер. Энтер # Сообщаем, что закончили передачу сообщения
Ответ:

250 2.0.0 accepted; S10436885AbZBBKvs

Т.е. сообщение принято для передачи

Теперь можно отправить еще какое-нибудь письмо (MAIL FROM: RCPT TO:) или завершить сеанс работы
QUIT # Завершаем сеанс
Ответ:

221 2.0.0 smtp18.yandex.ru Out
Connection closed by foreign host.

Это все. Как видно, протокол довольно простой, основные сложности — в формировании самого тела письма.

Конечно, здесь не приведена информация по отправке почты в кодировках текста, отличных от ASCII, не написано про вложенные файлы и MIME но если вам нужны подробности, вот несколько ссылок:
Электронная_почта Wiki
SMTP Wiki
MIME Wiki
rfc5321

При разработке приложений непосредственно с SMTP обычно работать не приходится, для этого используют различные фреймворки или стандартные функции. Для PHP можно посмотреть:
SMTP PEAR расширение
PHPMailer библиотека для работы с электронной почной

Удачных экспериментов!

Источник

SMTP-сервер

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

Создайте рассылку в конструкторе за 15 минут. Отправляйте до 1500 писем в месяц бесплатно.

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что этоОтправить рассылку

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

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

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

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

Схема отправки письма по протоколу 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-сервер для рассылок, но не хотите заморачиваться с настройками, воспользуйтесь готовым решением, выбрав один из сервисов транзакционных рассылок. Самое приятное, что у большинства таких сервисов есть бесплатные тарифы.

Источник

Что такое SMTP-протокол и как он устроен?

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

SMTP (Simple Mail Transfer Protocol) — протокол передачи почты. Он был представлен еще в 1982 году, но не теряет актуальности до сих пор. В статье разбираемся, какие задачи решает протокол и как он работает.

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

У протокола две главные задачи:

SMTP и его место в стеке TCP/IP

Теоретически SMTP умеет работать с практически любыми протоколами так называемого транспортного уровня, включая TCP, UDP и другие. Еще на заре развития протокола за ним закрепили два номера порта:

В большинстве случаев протокол SMTP используется для передачи исходящей почты с использованием порта TCP 25. То есть можно сказать, что SMTP-порт — это как раз TCP 25, хоть и не всегда. Иногда задействуется еще порт 465. Так происходит, когда порт требует защищенного SSL-соединения.

Но в большинстве случаев используется лишь один транспортный протокол TCP с портом 25 (это SMTP-порт по умолчанию). Другие варианты применяются крайне редко, например, когда провайдеры по какой-то причине закрывают доступ к 25 порту. Они могут делать это, например, для блокировки спам-рассылок.

Электронное письмо и его формат

Сообщение электронной почты всегда состоит из трех элементов:

Конверт применяется для передачи сообщений электронной почты от клиенту к серверу и обратно. При этом как клиент, так и сервер взаимодействуют друг с другом в обычном формате «запрос-ответ». В ходе взаимодействия между ними передаются текстовые строки.

Что касается заголовка и тела письма, то их параметры прописаны в отдельном документе — RFC2822.

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

Формат поля заголовка 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. Есть и другие, но они используются реже.

Ответы SMTP

Здесь все одновременно и проще, и сложнее. Ответы в случае SMTP состоят из двух частей:

Коды сообщений начинаются на 2, 3, 5. Если сообщение начинается на 2, это значит, что предыдущая команда успешно завершена. «Тройка» в коде означает успешную отправку с необходимостью предоставить дополнительные данные.

Если сообщение начинается на 5, это означает технический сбой. Так, ошибка 502 — индикатор нереализованной команды, а 503 сообщает о неправильной последовательности команд.

Как работает SMTP — простыми словами

Давайте представим, что вы установили и настроили собственный SMTP-сервер. Далее вы планируете отправить письмо. Работает отправка по определенному алгоритму:

Если все хорошо, то далее в работу вступают уже другие протоколы — POP и IMAP, но о них мы поговорим в другой статье.

Пример работы SMTP

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

smtp шлюз что это. Смотреть фото smtp шлюз что это. Смотреть картинку smtp шлюз что это. Картинка про smtp шлюз что это. Фото smtp шлюз что это

Здесь мы видим подключение к почтовому серверу по 25 порту. Говоря техническим языком, подключение выполнено по адресу 220 smtp.example.ru ESMTP Postfix на 25 порт. Начало подключения — использование команды HELO, которая нужна для указания собственного домена. После этого вступает в работу сервер, который возвращает статус 250. Что это такое? Все просто: соединение установилось без проблем. После этого сервер еще раз пишет доменное имя в текстовом сообщении.

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

Наступает следующий этап — использование команды Mail FROM для того, чтобы указать адрес отправителя. Если сервер возвращает статус 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».

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *