Ретранслятор почты по запросу - On-Demand Mail Relay
Эта статья нужны дополнительные цитаты для проверка.Август 2011 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
Ретранслятор почты по запросу (ODMR) является Расширение SMTP стандартизирован в RFC 2645 это позволяет электронное письмо для передачи получателям после их аутентификации. Он использует расширенную команду SMTP ATRN
, аналогично ETRN команда, но доступна для динамически назначаемых IP-адресов.
ODMR работает следующим образом: проверять входящую почту, клиенты выдать команды EHLO и AUTH службе ODMR, за которыми следует команда ATRN (Authenticated TuRN); после успешной команды ATRN сервер ODMR начинает действовать как SMTP-клиент и начинает отправлять все сообщения, направленные на клиентский домен (или домены) с использованием протокола SMTP через одно и то же TCP-соединение. Поскольку соединения инициируются клиентами, этот протокол хорошо работает для машин, имеющих динамически назначаемые IP-адреса и / или защищенных брандмауэром (т.е. ваш интернет-провайдер может блокировать входящее соединение на порту 25 или может использовать NAT ). Только сервер ODMR, называемый провайдер, должен прослушивать SMTP-соединения на фиксированном IP-адресе.
Внешняя поддержка ODMR
Конструкция ODMR позволяет использовать протокол с SMTP-сервером, который изначально не поддерживает его. Отдельное приложение можно использовать для выполнения начального согласования протокола ODMR (EHLO, AUTH и ATRN), а затем передать соединение серверу SMTP, как только протокол перейдет в «обратное» состояние.
Пример транспорта ODMR
Типичный пример получения писем с помощью odmr.
В целях иллюстрации здесь (не часть протокола) обмены протоколами имеют префиксы для сервера (>) и клиента (<).
> 220 ПРИМЕР. Готовый сервер ретрансляции почты .NET по запросу> 250-EXAMPLE.NET> 250-AUTH CRAM-MD5 ВНЕШНИЙ> 250 ATRN> 334 <последовательность клавиш>> 235 теперь аутентифицирован как example.org> 250 ОК, теперь меняем соединение<220 example.org готов к получению электронной почты> ПРИМЕР EHLO.NET<250-example.org <250 РАЗМЕР> ПОЧТА ОТ: <250 ОК> RCPT TO: <250 ОК, получатель принят ...> ПОКИДАТЬ<221 example.org закрытие соединения
ODMR-клиенты
- fetchmail (GPL ) работает со многими протоколами, включая ODMR; порты win32 требуют Cygwin: похоже, что это не поддерживает TLS обмен данными (с использованием STARTTLS)
- xatrn (закрытый код), только win32; не поддерживает обмен данными TLS (с использованием STARTTLS)
- xODMR (GPL ), переносимый (чистый Python), отлично работает с TLS.