SMTP-прокси — это специализированные почтовые серверы, которые, как и другие типы прокси-серверов , передают сеансы простого протокола передачи почты (SMTP) на другие SMTP-серверы без использования подхода агента передачи почты (MTA) с промежуточным хранением . Когда прокси-сервер SMTP принимает соединение, он инициирует новый сеанс SMTP с целевым SMTP-сервером. Любые ошибки или информация о состоянии с сервера назначения будут переданы обратно отправляющему MTA через прокси. [1]
SMTP-прокси обычно используются для обработки и фильтрации входящего и исходящего трафика электронной почты. [2]
SMTP-прокси часто служат начальным сетевым уровнем в системе электронной почты, обрабатывая SMTP-соединения от клиентов перед пересылкой данных на второй уровень почтовых серверов . [3] SMTP-прокси часто реализуют первый и/или единственный уровень защиты в системе фильтрации входящего спама , где они могут анализировать сообщения с помощью фильтра спам-контента или антивирусной программы , блокировать или ограничивать соединения с помощью черных списков DNS и систем репутации. и балансировку нагрузки SMTP-соединений во избежание перегрузки почтовых серверов.
Поскольку прокси-серверы SMTP не хранят сообщения, как это делает MTA, они могут отклонять соединения SMTP или содержимое сообщений в режиме реального времени , устраняя необходимость во внеполосных отчетах о недоставке (NDR) , которые являются причиной обратного рассеяния. электронная почта , серьезная проблема в системе электронной почты Интернета .
Некоторые прокси-серверы SMTP реализуют управление TCP-соединениями (также известное как управление потоком ), что может помочь уменьшить ущерб нижестоящим почтовым серверам в результате всплесков TCP-трафика от вредоносных SMTP-клиентов. Управление TCP-соединениями в контексте SMTP обычно включает регулирование пропускной способности и/или введение задержек в ответах на команды SMTP (также известное как tarpitting ). При замедлении некоторые вредоносные источники SMTP-трафика, такие как спам-боты, имеют тенденцию сдаваться, вместо того чтобы продолжать доставлять полное сообщение электронной почты . [4]
Сетевое тарпитирование может быть сложно реализовать на почтовом сервере , поскольку каждое SMTP-соединение обрабатывается медленнее, чем обычно, часто задерживая ценные системные ресурсы, такие как память и процессор. Поскольку прокси-серверы SMTP могут быть реализованы с использованием более легких методов программирования, таких как асинхронный ввод-вывод (например , nginx , Node.js , Netty и libevent ), тысячи соединений можно манипулировать, используя те же ресурсы, что и гораздо меньшее количество соединений в контекст полноценного почтового сервера с промежуточным хранением .
SMTP-прокси иногда вставляются между отправляющими почтовыми серверами в локальной сети и их принимающими аналогами в Интернете. В этом контексте часто используются SMTP-прокси для фильтрации исходящего спама ; однако существуют и другие приложения, такие как подпись DomainKeys Identified Mail (DKIM) [5].
SMTP-прокси бывают нескольких основных разновидностей: