Прикладные протоколы smtp pop3 и imap4. Что такое протокол электронной почты

В Интернете для доставки электронной почты машина-источник устанавливает TCP-соединение с портом 25 машины приемника. Этот порт прослушивается почтовым демоном, и их общение происходит с помощью протокола SMTP (Simple Mail Transfer Protocol простой протокол электронной почты). Этот демон принимает входящие соединения и копирует сообщения из них в соответствующие почтовые ящики. Если письмо невозможно доставить, отправителю отправляется сообщение об ошибки, содержащее первую часть этого письма.

MTA (Mail Transfer Agent) - агент передачи почты - является основным компонентом системы передачи почты Internet, который представляет данный сетевой компьютер для сетевой системы электронной почты. Обычно пользователи работают не с MTA, а с программой MUA (Mail User Agent) - клиентом электронной почты. Схематично принцип взаимодействия показан на рисунке.

Протокол SMTP представляет собой простой ASCII протокол. Установив ТСР-соединение с портом 25. передающая машина выступающая в роли клиента, ждет запроса принимающей машины, работающей в режиме сервера. Сервер начинает диалог с того что посылает текстовую строку, содержащую его идентификатор и сообщающую о его готовности (или неготовности) к приему почты. Если сервер не готов, клиент разрывает соединение и продолжает попытку позднее.

Если сервер готов принимать почту, клиент объявляет, от кого поступила почта и кому она предназначается. Если получатель почты существует, сервер дает клиенту добро на пересылку сообщения. Затем клиент посылает сообщение. А сервер подтверждает его получение. Контрольные суммы не проверяются, так как протокол ТСР обеспечивает надежный байтовый поток. Если у отправителя есть еще почта. Она также отправляется. После передачи всей почты в обоих направлениях соединение разрывается.

Простейший пример SMTP-сессии С: - клиент, S: - сервер

S: (ожидает соединения)

C: (Подключается к порту 25 сервера)

S:220 mail.company.tld ESMTP CommuniGate Pro 5.1.4i is glad to see you!

S:250 domain name should be qualified

S:250 Этот адрес e-mail защищен от спам-ботов. Чтобы увидеть его, у Вас должен быть включен Java-Script sender accepted

S:250 Этот адрес e-mail защищен от спам-ботов. Чтобы увидеть его, у Вас должен быть включен Java-Script ok

S:550 Этот адрес e-mail защищен от спам-ботов. Чтобы увидеть его, у Вас должен быть включен Java-Script unknown user account

S:354 Enter mail, end with "." on a line by itself

S:250 769947 message accepted for delivery

S:221 mail.company.tld CommuniGate Pro SMTP closing connection

S: (закрывает соединение)

В результате такой сессии письмо будет доставлено адресату Этот адрес e-mail защищен от спам-ботов. Чтобы увидеть его, у Вас должен быть включен Java-Script , но не будет доставлено адресату Этот адрес e-mail защищен от спам-ботов. Чтобы увидеть его, у Вас должен быть включен Java-Script , потому что такого адреса не существует.

Некоторые команды SMTP

HELO {SP} {string}{CRLF}

Идентифицирует SMTP-сервер отправителя, открывает сеанс {SP} пробел

Завершает SMTP-сеанс.

MAIL {SP} FROM:{reverse-path} {CRLF}

Задает адрес отправителя.

RCPT {SP} TO:{forward-path} {CRLF}

Задает адрес получателя.

Указывает на начало сообщения. Для окончания сообщения указывается {CRLF}.

VRFY {SP} {string}{CRLF}

проверяет существование получателя.

EXPN {SP} {string}{CRLF}

пустая операция

сервер и клиент меняются ролями после ответа сервера 200 OK

сброс сессии в исходное состояние

информация о поддерживаемых командах

Из-за проблем со спамом, почти все современные сервера игнорируют команды VRFY и EXPN, как раскрывающие информацию о пользователе.

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

Post Office Protocol Version 3 - протокол почтового отделения, версия 3 - это сетевой протокол, используемый почтовым клиентом для получения сообщений электронной почты с сервера. Обычно используется в паре с протоколом SMTP.

Предыдущие версии протокола (POP, POP2) устарели. Альтернативным протоколом для сбора сообщений с почтового сервера является IMAP. По умолчанию использует TCP-порт 110. Существуют реализации POP3-серверов, поддерживающие TLS и SSL.


После установки соединения протокол РОР3 проходит три последовательных состояния

  • 1. Авторизация клиент проходит процедуру аутентификации
  • 2. Транзакция клиент получает информацию о состоянии почтового ящика, принимает и удаляет почту.
  • 3. Обновление сервер удаляет выбранные письма и закрывает соединение.

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

Пример сессии

S: <Сервер ожидает входящих соединений на порту 110>

C: <подключается к серверу>

S: +OK POP3 server ready < Этот адрес e-mail защищен от спам-ботов. Чтобы увидеть его, у Вас должен быть включен Java-Script >

C: APOP mrose

S: <сервер передает сообщение 1>

S: +OK message 1 deleted

S: <сервер передает сообщение 2>

S: +OK message 2 deleted

S: +OK dewey POP3 server signing off (maildrop empty)

C: <закрывает соединение>

S: <продолжает ждать входящие соединения>

Пользователю, имеющему одну учетную запись у одного провайдера и всегда соединяющегося с провайдером с одной и той же машины, вполне достаточно протокола РОР3. Этот протокол используется повсеместно благодаря его простоте и надежности. Но у многих пользователей есть одна учетная запись в учебном заведении или на работе, но они хотят иметь к ней доступ и из дома, и с места работы (учебы), и во время командировки те из разных мест. Хотя протокол РОР3 и позволяет разрешить такую ситуацию. Но проблема в том, что при таком использовании электронной почты вся корреспонденция пользователя очень быстро распространится по случайным машинам, с которых он получал доступ в Интернет, и некоторые из этих компьютеров могут вообще не принадлежать пользователь.

Это неудобство привело к созданию альтернативного протокола для получения почты, IMAP.

IMAP (англ. Internet Message Access Protocol) - интернет-протокол прикладного уровня для доступа к электронной почте.

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

IMAP был разработан для замены более простого протокола POP3 и имеет следующие преимущества по сравнению с последним:

  • 4. Письма хранятся на сервере, а не на клиенте. Возможен доступ к одному и тому же почтовому ящику с разных клиентов. Поддерживается также одновременный доступ нескольких клиентов. В протоколе есть механизмы с помощью которых клиент может быть проинформирован об изменениях, сделанных другими клиентами.
  • 5. Поддержка нескольких почтовых ящиков (или папок). Клиент может создавать, удалять и переименовывать почтовые ящики на сервере, а также перемещать письма из одного почтового ящика в другой.
  • 6. Возможно создание общих папок, к которым могут иметь доступ несколько пользователей.
  • 7. Информация о состоянии писем хранится на сервере и доступна всем клиентам. Письма могут быть помечены как прочитанные, важные и т. п.
  • 8. Поддержка поиска на сервере. Нет необходимости скачивать с сервера множество сообщений для того чтобы найти одно нужное.
  • 9. Поддержка онлайн-работы. Клиент может поддерживать с сервером постоянное соединение, при этом сервер в реальном времени информирует клиента об изменениях в почтовых ящиках, в том числе о новых письмах.
  • 10. Предусмотрен механизм расширения возможностей протокола.

Текущая версия протокола имеет обозначение IMAP4rev1 (IMAP, версия 4, ревизия 1). Протокол поддерживает передачу пароля пользователя в зашифрованном виде. Кроме того, IMAP-трафик можно зашифровать с помощью SSL.

3. Сводная таблица по почтовым клиентам и серверам для различных ОС


4. Наиболее известные WEB-клиенты работы с почтой

Eudora Mail - клиент электронной почты, который появился еще на заре Интернета, когда электронная почта была чуть ли не единственным средством общения.

Evolution - графическая клиентская программа управления электронной почтой, контактами и временем для платформы Linux. Разработана и поддерживается фирмой Novell. Содержит календарь, систему планирования временем, адресную книги, поддерживает все распространенные почтовые протоколы IMAP, POP, SMTP.

Fidolook - клиент электронной почты, который является встраиваемым дополнением к Outlook Express из состава пакета Internet Explorer. Существенно расширяет такие возможности Outlook Express, как цитирование сообщений, шаблоны сообщений, настройка заголовков сообщения, возможности работы с папками новостей, импорт и экспорт сообщений.

Foxmail! - бесплатная программа для работы с электронной почтой для ОС Windows. Разрабатывается китайской корпорацией TenCent. Поддерживает протоколы SMTP, POP3 и RSS. Основные возможности:

  • o отправка писем без участия SMTP-сервера (компьютер пользователя выступает в роли SMTP-сервера);
  • o возможность установки пароля на аккаунт;
  • o настройка приёма почты с нескольких E-mail адресов в один аккаунт;
  • o сортировщик писем на основе фильтров;
  • o создание и редактирование шаблонов новых писем;
  • o работа с диспетчером писем (управление сообщениями на сервере);
  • o возможность шифрования сообщений;
  • o удобная адресная книга, интегрированная в интерфейс;
  • o RSS-агрегатор.

KMail - клиент электронной почты, распространённый в операционных системах семейства *nix. Поддерживает SMTP, POP3, IMAP, локальные почтовые ящики, а также существует поддержка, антивирусов, антиспама, пользовательских фильтров.

M2 - внутреннее название почтового и новостного клиента, встроенного в браузер Opera и официально называемого Opera Mail. Его интерфейс отличается от остальных почтовых клиентов с целью обеспечения лучшей интеграции с Opera, а также имеется фильтр спама, поддержка POP3 и IMAP, новостных групп, RSS и Atom новостных лент.

MailMan - почтовый клиент для мобильных устройств и телефонов, является java приложением. Основные возможности:

  • o работа с файловой системой (сохранение, добавление вложений файлов любых форматов, работа с адресной книгой, сохранение истории загрузок на диск в.txt, проигрывание заданной мелодии);
  • o возможность работы с кодировками и транслитом;
  • o просмотр html, wml, pda и xml-подобных страниц в виде текста без ссылок и изображений с возможностью настройки шрифта;
  • o огромное количество параметров и гибкая настройка;
  • o программа распространяется бесплатно.

Microsoft Outlook - компьютерная программа-органайзер с функциями почтового клиента, входящая в пакет офисных программ Microsoft Office. Основные возможности:

  • o является полноценным Органайзером, предоставляющим функции календаря, планировщика задач, записной книжки и менеджера контактов;
  • o позволяет отслеживать работу с документами пакета Microsoft Office для автоматического составления дневника работы;
  • o может использоваться как отдельное приложение, так и выступать в роли клиента для почтового сервера Microsoft Exchange Server, что предоставляет дополнительные функции для совместной работы пользователей одной организации: общие почтовые ящики, папки задач, календари, конференции, планирование и резервирование времени общих встреч, согласование документов.

Mozilla Thunderbird - бесплатная, свободно распространяемая программа для работы с электронной почтой и группами новостей. Является составной частью проекта Mozilla. Поддерживает протоколы SMTP, POP3, IMAP, NNTP, RSS, работает в Windows, Mac OS X и Linux, причём набор возможностей и расположение элементов управления на всех платформах одинаковые.

Outlook Express - программа для работы с электронной почтой и группами новостей, которая поставляется в составе ОС Windows, начиная с Windows 95 OSR 2.5, а также вместе с браузером Internet Explorer, начиная с версии 4.0. Новая версия Outlook Express, включенная в состав Windows Vista вместе с Internet Explorer 7.0, носит название Windows Mail. Название Outlook Express предполагает, что эта программа является "облегчённой" версией Microsoft Outlook и, в отличие от Outlook Express, не имеет функций для работы с группами новостей.

The Bat! - условно-бесплатная программа для работы с электронной почтой для ОС Windows. Разрабатывается молдавской компанией RitLabs. Поддерживает протоколы SMTP, POP3, IMAP, имеет довольно развитую систему фильтрации сообщений и поддерживает большое количество кириллических кодировок. Существуют две версии программы: Home и Professional. В версии Professional имеется возможность проверки орфографии, шифрации сообщений и биометрической аутентификации.

6. Настройки безопасности в почтовых системах: TLS, SSL, цифровая подпись, сертификат. Понятие СПАМ

TLS (англ. Transport Layer Security) -- криптографический протокол, обеспечивающий безопасную передачу данных между пользователями в сети Интернет.

TLS-протокол основан на Netscape SSL-протоколе версии 3.0 и состоит из двух частей -- TLS Record Protocol и TLS Handshake Protocol. Различие между SSL 3.0 и TLS 1.0 незначительные, поэтому далее в тексте термин «SSL» будет относиться к ним обоим. Большинство современных браузеров поддерживает данный протокол. TLS Working Group, основанная в 1996 году, продолжает работать над протоколом.

SSL, используя криптографию, предоставляет возможности аутентификации и безопасной передачи данных через Интернет. Часто происходит лишь аутентификация сервера, в то время как клиент остается неаутентифицированным. Для взаимной аутентификации каждая из сторон должна поддерживать инфраструктуру открытого ключа (PKI), которая позволяет защитить клиент-серверные приложения от перехвата сообщений, редактирования существующих сообщений и создания поддельных.

SSL включает в себя три основных фазы:

  • o Диалог между сторонами, целью которого является выбор алгоритма шифрования
  • o Обмен ключами на основе криптосистем с открытым ключом или аутентификация на основе сертификатов.
  • o Передача данных, шифруемых при помощи симметричных алгоритмов шифрования

В первой фазе клиент и сервер обсуждают выбор криптографического алгоритма для дальнейшего использования. В данной версии протокола доступны следующие алгоритмы:

  • o Для обмена ключами и проверки их подлинности применяются комбинации алгоритмов: RSA (асимметричный шифр), Diffie-Hellman (безопасный обмен ключами), DSA (алгоритм цифровой подписи) и алгоритмы технологии Fortezza.
  • o Для симметричного шифрования: RC2, RC4, IDEA, DES, Triple DES или AES;
  • o Для хэш-функций: MD5 или SHA.

SSL (англ. Secure Sockets Layer -- протокол защищённых сокетов) -- криптографический протокол, обеспечивающий безопасную передачу данных по сети Интернет. При его использовании создаётся защищённое соединение между клиентом и сервером. SSL изначально разработан компанией Netscape Communications, в настоящее время принят IETF как стандарт. Поддерживается всеми популярными браузерами.

Использует шифрование с открытым ключом для подтверждения подлинности передатчика и получателя. Поддерживает надёжность передачи данных за счёт использования корректирующих кодов и безопасных хэш-функций.

SSL состоит из двух уровней. На нижнем уровне многоуровневого транспортного протокола (например, TCP) он является протоколом записи и используется для инкапсуляции (то есть формирования пакета) различных протоколов. Для каждого инкапсулированного протокола он обеспечивает условия, при которых сервер и клиент могут подтверждать друг другу свою подлинность, выполнять алгоритмы шифрования и производить обмен криптографическими ключами, прежде чем протокол прикладной программы начнёт передавать и получать данные.

Для доступа к страницам, защищённым протоколом SSL, в URL вместо обычного префикса (schema) http, как правило, применяется префикс https (порт 443), указывающий на то, что будет использоваться SSL соединение. Так как операции шифрования / расшифрования требуют много вычислительных ресурсов, чтобы снизить нагрузку на веб-серверы, используют аппаратные SSL-ускорители.

Для работы SSL требуется, чтобы на сервере имелся SSL-сертификат.

Электронная цифровая подпись (ЭЦП)-- реквизит электронного документа, предназначенный для удостоверения источника данных и защиты данного электронного документа от подделки.

Цифровая подпись обеспечивает:

  • o Удостоверение источника документа. В зависимости от деталей определения документа могут быть подписаны такие поля, как «автор», «внесённые изменения», «метка времени» и т. д.
  • o Защиту от изменений документа. При любом случайном или преднамеренном изменении документа (или подписи) изменится хэш, следовательно, подпись станет недействительной.
  • o Невозможность отказа от авторства. Так как создать корректную подпись можно лишь, зная закрытый ключ, а он известен только владельцу, то владелец не может отказаться от своей подписи под документом.

Возможны следующие угрозы цифровой подписи:

  • o Злоумышленник может попытаться подделать подпись для выбранного им документа.
  • o Злоумышленник может попытаться подобрать документ к данной подписи, чтобы подпись к нему подходила.
  • o Злоумышленник может попытаться подделать подпись для хоть какого-нибудь документа.

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

Тем не менее, возможны ещё такие угрозы системам цифровой подписи:

  • o Злоумышленник, укравший закрытый ключ, может подписать любой документ от имени владельца ключа.
  • o Злоумышленник может обманом заставить владельца подписать какой-либо документ, например используя протокол слепой подписи.
  • o Злоумышленник может подменить открытый ключ владельца (см. управление ключами) на свой собственный, выдавая себя за него.

Сертификат (сертификат открытого ключа, сертификат ЭЦП) -- цифровой или бумажный документ, подтверждающий соответствие между открытым ключом и информацией, идентифицирующей владельца ключа. Содержит информацию о владельце ключа, сведения об открытом ключе, его назначении и области применения, название центра сертификации и т. д.

Открытый ключ может быть использован для организации защищённого канала связи с владельцем двумя способами:

  • o для проверки подписи владельца (аутентификация)
  • o для шифрования посылаемых ему данных (конфиденциальность)

Существует две модели организации инфраструктуры сертификатов: централизованная (PKI) и децентрализованная (PGP). В централизованной модели существуют корневые центры сертификации, подписи которых обязан доверять каждый пользователь. В децентрализованной модели каждый пользователь самостоятельно выбирает, каким сертификатам он доверяет и в какой степени.

Спам (англ. spam) -- сообщения, массово рассылаемые людям, не выразившим желание их получать. В первую очередь термин «спам» относится к электронным письмам.

Способы борьбы со спамом

  • o Превентивные методы
  • o Самый надёжный способ борьбы со спамом -- не позволить спамерам узнать электронный адрес. Это трудная задача, но некоторые меры предосторожности можно предпринять.
  • o К сожалению, даже такие суровые меры не дают полной гарантии того, что спамер не узнает электронный адрес. Методы сбора адресов включают использование вирусов с целью охоты за контакт-листами пользователей. Вирусы эксплуатируют изъяны в известных почтовых программах и отправляют адреса из контакт-листа злоумышленнику или самостоятельно отправляют по этим адресам копии нежелательных писем.
  • o Автоматическая фильтрация
  • o Существует программное обеспечение (ПО) для автоматического определения спама (т. н. фильтры). Оно может быть предназначено для конечных пользователей или для использования на серверах. Это ПО использует два основных подхода.
  • o Первый заключается в том, что анализируется содержание письма и делается вывод, спам это или нет. Если письмо классифицировано как спам, оно может быть помечено, перемещено в другую папку или даже удалено. Такое ПО может работать как на сервере, так и на компьютере клиента. При таком подходе вы не видите отфильтрованного спама, но продолжаете полностью или частично нести издержки, связанные с его приемом, так как антиспамное ПО в любом случае получает каждое спамерское письмо (затрачивая ваши деньги), а только потом решает, показывать его или нет. С другой стороны, если ПО работает на сервере, вы не несёте издержек по копированию его на свой компьютер.
  • o Второй подход заключается в том, чтобы, применяя различные методы, опознать отправителя как спамера, не заглядывая в текст письма. Это ПО может работать только на сервере, который непосредственно принимает письма. При таком подходе можно уменьшить издержки -- деньги затрачиваются только на общение со спамерскими почтовыми программами (т. е. на отказы принимать письма) и обращения к другим серверам (если таковые нужны) при проверке. Выигрыш, однако, не такой большой, как можно было бы ожидать. Если получатель отказывается принять письмо, спамерская программа пытается обойти защиту и отправить его другим способом. Каждую такую попытку приходиться отражать отдельно, что увеличивает нагрузку на сервер.

Методы автоматической фильтрации

Программы автоматической фильтрации используют статистический анализ содержания письма для принятия решения, является ли оно спамом. Наибольшего успеха удалось достичь с помощью алгоритмов, основанных на теореме Байеса. Для работы этих методов требуется «обучение» фильтров, т. е. нужно использовать рассортированные вручную письма для выявления статистических особенностей нормальных писем и спама.

Неавтоматическая фильтрация

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

Черные списки. В черные списки заносятся IP-адреса компьютеров, о которых известно, что с них ведется рассылка спама. Также широко используются списки компьютеров, которые можно использовать для рассылки -- «открытые релеи» и «открытые прокси», а также -- списки «диалапов» -- клиентских адресов, на которых не может быть почтовых серверов. Можно использовать локальный список или список, поддерживаемый кем-то еще. Благодаря простоте реализации, широкое распространение получили черные списки, запрос к которым осуществляется через службу DNS. Они получили название DNSBL (DNS Black List). В настоящее время этот метод не очень эффективен. Спамеры находят новые компьютеры для своих целей быстрее, чем их успевают заносить в черные списки. Кроме того, несколько компьютеров, отправляющих спам, могут скомпрометировать весь почтовый домен или подсеть, и тысячи законопослушных пользователей на неопределённое время будут лишены возможности отправлять почту серверам, использующим такой чёрный список.

Авторизация почтовых серверов. Были предложены различные способы для подтверждения того, что компьютер, отправляющий письмо, действительно имеет на это право (Sender ID, SPF, Caller ID, Yahoo DomainKeys, MessageLevel), но они пока не получили широкого распространения. Кроме того, эти технологии ограничивают некоторые распространённые виды функциональности почтовых серверов: становится невозможно автоматически перенаправлять корреспонденцию с одного почтового сервера на другой (SMTP Forwarding).

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

Серые списки Метод серых списков основан на том, что «поведение» программного обеспечения, предназначенного для рассылки спама отличается от поведения обычных почтовых серверов, а именно, спамерские программы не пытаются повторно отправить письмо при возникновении временной ошибки, как того требует протокол SMTP. Точнее, пытаясь обойти защиту, при последующих попытках они используют другой релей, другой обратный адрес и т. п., поэтому это выглядят для принимающей стороны, как попытки отправки разных писем.

Как и всякая сетевая служба, электронная почта реализуется с помощью пары программ и протокола взаимодействия между ними. Со стороны Интернета работает программа-сервер, а со стороны потребителя - программа-клиент. Характерная особенность электронной почты, отличающая её от других служб Интернета, состоит в том, что её работа основана на двух прикладных протоколах. Один используется для отправки исходящих сообщений, а другой - для получения входящей корреспонденции. Соответственно, со стороны Интернета работа электронной почты обеспечивается двумя серверами: сервером исходящих сообщений и сервером входящих сообщений. Сервер входящих сообщений очень часто называют просто «почтовым ящиком».Необходимость в наличии двух разных протоколов связана с требованиями безопасности. Например, при отправке сообщений обычно не нужна строгая процедура идентификации отправителя. С аналогичным явлением мы сталкиваемся и в обычной почте, когда для отправки письма достаточно бросить конверт в любой почтовый ящик. Служба исходящих сообщений основана на протоколе SMTP (Simple Mail Transfer Protocol - простейший протокол передачи почты) и со стороны Интернета обеспечивается серверами SMTP.

С входящими сообщениями дело обстоит иначе. Для получения сообщения клиент должен предъявить определённые права. В обычной почте клиент либо предъявляет документ в почтовом отделении (при получении заказной корреспонденции), либо должен иметь ключ от собственного почтового ящика (ключ - это механическое средство идентификации личности). Фактически служба входящих сообщений электронной почты выполняет роль почтового отделения. Она проверяет права клиента на основании его регистрационного имени и пароля, после чего поставляет ему корреспонденцию, накопившуюся в «почтовом ящике». Наиболее распространённым протоколом этой службы является протокол POP3 (Post Office Protocol 3 - протокол почтового отделения, версия 3).

Протокол POP3

Для небольших организаций невыгодно держать у себя систему для передачи сообщений (message transport system). Это связано с тем, что в небольших, не специализирующихся на компьютерных технологиях организациях, как правило, рабочие станции клиентов сети не имеют достаточно ресурсов (производительности или дискового пространства) для обеспечения работы полного SMTP-сервера. Кроме того, таким пользователям электронной почты может быть просто невыгодно держать персональный компьютер постоянно подключенным к Internet.

Для решения этой проблемы был разработан почтовый протокол для работы в офисе -- POP (Post Office Protocol). Его наиболее распространенный вариант -- РОРЗ (Протокол почтового отделения версия 3). Этот протокол позволяет рабочим станциям динамически получать доступ к своим почтовым ящикам, расположенным на сервере, предназначенном для обслуживания электронной почты в данной организации.

РОРЗ -- это простейший протокол для работы пользователя с содержимым своего почтового ящика. Он позволяет только забрать почту из почтового ящика сервера на рабочую станцию клиента и удалить ее из почтового ящика на сервере. Всю дальнейшую обработку почтовое сообщение проходит на компьютере клиента.

РОРЗ - сервер не отвечает за отправку почты, он работает только как универсальный почтовый ящик для группы пользователей. Когда пользователю необходимо отправить сообщение, он должен установить соединение с каким-либо SMTP-сервером и отправить туда свое сообщение по SMTP. Этот SMTP-сервер может быть тем же хостом, где работает РОРЗ -сервер, а может располагаться совсем в другом месте.

Как правило, при работе с электронной почтой небольшие организации используют для получения своей корреспонденции РОРЗ -сервер, установленный на каком-либо компьютере в офисе, а отправляют почту по SMTP на один из хорошо доступных общеизвестных SMTP-серверов города (найти такие совсем несложно).

Система электронной почты состоит из трех компонентов: пользовательского агента, позволяющего пользователям читать и составлять сообщения, транспортных агентов для отправки и доставки сообщений. Задача транспортного агента – принимать почту от пользовательского агента, интерпретировать адреса получателей и перенаправлять почту на соответствующие машины для последующей доставки. Доставочный агент отвечает за прием почты от транспортного агента и ее доставку получателям.

Протокол smtp

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

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

Сообщение в почтовый ящик пользователя может быть доставлено различными маршрутами. Чтобы направить почту по нужному пути, указываются промежуточные агенты-MTA. В следующем примере [email protected] является почтовым ящиком, a HOSTI, HOST2 и HOST3 - промежуточными агентами:

MAIL FROM:<@HOSTI, @HOST2, @HOST3: [email protected] >

Как правило, между двумя компьютерами находится один или несколько промежуточных агентов. Аргументом команды MAIL является обратный маршрут, включающий имя источника сообщения и имена всех промежуточных агентов. Обратный маршрут используется SMTP, когда нужно передать сообщение о случившейся ошибке или о невозможности доставить сообщение, когда оно уже прошло через промежуточный агент. По мере продвижения сообщения по Internet записи о его маршрутах изменяются.

Протокол pop3

На компьютере пользователя существуют два отдельных почтовых агента - доставки (POP) и отправки (SMTP).

Post Office Protocol (POP) - протокол доставки почты пользователю. Доставка сообщений осуществляется в почтовые ящики пользователя, расположенные на круглосуточно работающем почтовом сервере. Пользователь может получить доступ к своему почтовому РОР-серверу из любой точки доступа к Интернет. Для этого необходимо запустить почтовый агент и настроить его для работы со своим почтовым сервером.

В протоколе РОРЗ, который является более поздней версией POP, оговорены три стадии процесса получения почты: авторизация, транзакция и обновление. На стадии авторизации клиент себя идентифицирует. Если авторизация прошла успешно, сервер открывает почтовый ящик клиента и начинается стадия транзакции почты. На стадии обновления сеанс связи заканчивается.

Протокол imap4

Протокол IMAP4 (Internet Message Access Protocol) позволяет клиентам получать доступ и манипулировать сообщениями электронной почты на сервере. В отличие от протокола РОРЗ, IMAP4 поддерживает работу с системой каталогов удаленных сообщений, как если бы они располагались на локальном компьютере. IMAP4 позволяет клиенту создавать, удалять и переименовывать почтовые ящики, проверять наличие новых сообщений и удалять старые. Структура папок в значительной степени зависит от типа почтовой системы, но в любой системе у клиента есть специальный каталог INBOX, куда попадают поступающие клиенту сообщения. Протокол IMAP4 работает поверх транспортного протокола, который обеспечивает надежный и достоверный канал передачи данных между клиентом, и сервером IMAP4. При работе по TCP, IMAP4 использует 143-й порт. Команды и данные IMAP4 передаются по транспортному протоколу в том виде, в каком их отправляет сервер или пользователь.

Принцип передачи данных по протоколу IMAP4 такой же, как и у других подобных протоколов. Сначала клиент и сервер обмениваются приветствиями. Затем клиент отправляет на сервер команды и данные. Сервер, соответственно, передает клиенту ответы на обработку команд и данных. После завершения обмена канал закрывается.

Важной особенностью протокола IMAP является то, что взаимодействие клиента сервером не строится по принципу "запрос-ответ. Сервер может обрабатывать несколько команд одновременно и отвечать на каждую из них по ее окончанию. При этом ответ на более позднюю команду может поступить раньше, поэтому ответ сервера всегда содержит тег той команды, к которой он относится. Для работы в таком режиме, клиент и сервер должны фиксировать весь поток данных обмена, поскольку как сервер так и клиент в своих запросах и ответах мог ссылаться на команды и данные, введенные на предыдущих стадиях сессии обмена.

IMAP4 - гибкий и многофункциональный протокол с широкими возможностями. Он обслуживает более 20 различных команд клиента по управлению состоянием почты.

Сегодня мы подробно расскажем про наиболее используемые в сети интернет протоколы – POP3, IMAP и SMTP. Каждый из указанных протоколов имеет определенное назначение и функциональные возможности. Давайте попробуем разобраться.

Протокол POP3 и его порты

Post Office Protocol 3 (POP3) это стандартный протокол почты созданные для получения электронных писем с удаленного сервера на e-mail клиент.POP3 позволяет вам сохранить почтовое сообщение на ваш компьютер и даже прочесть его, в случае, если вы находитесь не в сети. Важно отметить, что если вы решили использовать POP3 для подключения к учетной записи почты, письма, которые уже скачаны на компьютер, будут удалены с почтового сервера. Как пример, если вы используете несколько компьютеров для подключения к одному почтовому аккаунту, то протокол POP3 может быть не лучшим выбором в данной ситуации. С другой стороны, так как почта хранится локально, на ПК конкретного пользователя, это позволяет оптимизировать дисковое пространство на стороне почтового сервера.

По умолчанию, протокол POP3 использует следующие порты:

  • Порт 110 – это порт протокола POP3 по умолчанию. Не является безопасным.
  • Порт 995 – этот порт следует использовать в том случае, если вы хотите установить безопасное соединение.

Протокол IMAP и порты

Internet Message Access Protocol (IMAP) – это почтовый протокол, созданный для доступа к почте с локального почтового клиента. IMAP и POP3 – наиболее популярные в сети интернет протоколы, используемые для получения e-mail. Оба этих протокола поддерживается всеми современными почтовыми клиентами (MUA - Mail User Agent) и WEB – серверами.

В то время как POP3 позволяет доступ к почте только с одного приложения, IMAP позволяет доступ из множества клиентов. По этой причине, IMAP наиболее адаптивен в тех случаях, когда доступ к одному почтовому аккаунту необходим для нескольких пользователей.

По умолчанию, протокол IMAP использует следующие порты:

  • Порт 143 – порт по умолчанию. Не безопасен.
  • Порт 993 – порт для безопасного соединения.
Протокол SMTP и его порты

Simple Mail Transfer Protocol (SMTP) – это стандартный протокол для отправки почтовых сообщений по сети интернет.

Данный протокол описан в RFC 821 и RFC 822, впервые опубликованных в августе 1982 года. В рамках данных RFC, формат адреса должен быть в формате имя_пользователя@доменное_имя . Доставка почты, аналогична работе обычной почтовой службы: например, письмо на адрес [email protected], будет интерпретирован так: ivan_ivanov – адрес, а merionet.ru – почтовый индекс. Если доменное имя получателя отличается от доменного имени отправителя, то MSA (Mail Submission Agent) отправит письмо через Mail Transfer Agent (MTA). Главная идея MTA в том, чтобы перенаправлять письма в другую доменную зону, по аналогии, как традиционная почты отправляет письма в другой город или область. MTA так же получает почту от других MTA.

Протокол SMTP использует следующие порты.



Похожие статьи