Что такое SMTP

Оглавление

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

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

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

Принцип работы SMTP

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

Место SMTP в стеке TCP/IP и порты
Для работы по SMTP обычно используют 2 порта:

  • 25 — благодаря ему письма пересылаются между серверами;
  • 587 — через него происходит передача корреспонденции от почтового клиента к серверу.

SMTP способен работать с различными протоколами, но наиболее часто его задействуют для пересылки исходящих писем посредством TCP 25. Также, если требуется защищённое SSL-соединение, иногда используется порт 465. По умолчанию SMTP портом считается порт 25. Другие используются, если по какой-то причине перекрыт порт 25, например, в целях защиты от спама.

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

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

Через SMTP удалённый сервер и клиент МТА также обмениваются запросами. Клиент отправляет команды серверу, а тот отвечает на запросы. Процесс обмена командами и ответами на них называется почтовой транзакцией. Для передачи команд и данных используется формат NVT ASCII. Отправка команд осуществляется в формате ключевых слов, указывающих на необходимость выполнить то или иное действие.

Основные команды:
Команда
Что делает
HELO
Открывает приглашение от клиента
MAIL
Определяет отправителя сообщения
RCPT
Определяет адресатов
DATA
Указывает на начало сообщения
DATA
Отправляет сообщение на терминал
SOML
Send-or-Mail
SAML
Send-and-Mail
RSET
Сбрасывает SMTP-соединения
VRFY
Проверяет имя пользователя
EXPN
Запрашивает перечень псевдонимов
HELP
Запрашивает перечень команд
NOOP
Сообщает, что не нужно выполнять никаких действий
QUIT
Прекращает сеанс SMTP
TURN
Реверс ролей в SMTP
AUTH
Показывает механизм аутентификации
После получения команды от клиента SMTP сервер отправляет ответ со статусом и сообщением.

Ответы SMTP
Ответы представляют собой два компонента:
  • Код — подтверждает корректность отправки.
  • Текстовое сообщение — расшифровка события, которое произошло при доставке. Обычно оно предназначается пользователям, а не программам.
Сессия включает несколько команд, которые передаёт клиент, а сервер отправляет ответы.
Вот что входит в операцию протокола:
  • MAIL FROM — указывает на отправителя;
  • RCPT TO — указывает на адресата;
  • DATA — отвечает за отправку содержимого письма, включающего заголовок и текст, разделённые пустой строкой.

Виды SMTP-серверов

Почтовые серверы подразделяются на входящие и исходящие. Первые задействуют порты 110 и 143 и функционируют на протоколах POP3 и IMAP. Вторые работают через порт 25 и протокол SMTP. Если вы выбираете сервер, учитывайте, что они бывают общие и выделенные.

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

Выделенные
Отличный вариант для отправки рассылок. Отправляйте хоть сотни тысяч и миллионы писем в сутки — ваш адрес не окажется заблокированным, а сообщения не попадут в “Спам”. Выделенные серверы можно настраивать самостоятельно. Более простой и удобный вариант — покупка или аренда у провайдера.
Покажем, как пользоваться, ответим на вопросы, предложим подходящий тариф.

Настройка SMTP-сервера

Удалённый почтовый сервер настраивают специалисты на стороне провайдера. Также вы можете задействовать свой web-сервер, чтобы использовать его как почтовый.

Для этого придётся настроить следующее:
  • список доверенных серверов — чтобы защитить себя от писем с вредоносным кодом и спам-рассылок;
  • IP;
  • домен, доменное имя;
  • режим доставки.

Дополнительно, для удобства работы, выполните ещё несколько настроек:
  • Адресная книга. Список контактов ускоряет процесс отправки. Можно расположить их так, чтобы вверху были наиболее часто используемые.
  • Внешние и внутренние фильтры. Они нужны для защиты от DDoS-атак и спамерских рассылок.
  • Антиспам. Можно использовать специальные программы, настроить фильтры или рассортировать адреса по чёрным и белым спискам.
  • Очерёдность. Если письма не доставляются вовремя, можно проверить, почему так происходит: ящик переполнен, сбиты настройки, произошла хакерская атака и т. д.

Проблемы безопасности в SMTP

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

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

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

В целях безопасности собственные SMTP-сервера работают только с локальными пользователями — приём писем происходит только от ограниченного круга адресов. Но есть серверы, которые работают в режиме «открытых релеев», то есть не контролируют отправителей. Чаще всего их используют злоумышленники для рассылки спама. поэтому нужно следить за тем, в каком режиме работает корпоративный сервер. Если проверка сети показала, что сервер настроен как open relay, администратору нужно исправить настройки.

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

Альтернативы собственному SMTP-серверу

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

Сервис рассылок избавляет от необходимости заниматься рутиной, при этом вы можете самостоятельно анализировать метрики. Хорошая платформа даёт возможность проводить А/В-тестирование, отслеживать открываемость и число конверсионных действий.

Используя собственный сервер, для некоторых видов работ придётся привлекать разработчиков или программистов. Также вы должны всё время следить, не попадают ли письма в спам, и принимать меры, если такое произошло. Используя сервис рассылок, вам не нужно этим заниматься, достаточно загрузить базу контактов, создать письмо и отправить рассылку.
Понятно пишет о сложных вещах в разъяснительной Mailganer. Работает с лендингами и подсказками внутри продукта. Делает рассылки компании и отвечает за новости в Телеграм-канале.
26.12.2024
дата публикации
10.02.2025
дата последнего обновления