В вычислительной технике почтовый протокол ( POP ) — это стандартный интернет - протокол прикладного уровня , используемый почтовыми клиентами для получения электронной почты с почтового сервера. [1] Сегодня наиболее часто используемой версией является POP версии 3 ( POP3 ). Вместе с IMAP это один из самых распространенных протоколов для получения электронной почты.
Почтовый протокол обеспечивает доступ через сеть Интернет-протокола (IP) для клиентского приложения пользователя к почтовому ящику ( maildrop ), поддерживаемому на почтовом сервере. Протокол поддерживает операции списка, извлечения и удаления сообщений. Клиенты POP3 подключаются, извлекают все сообщения, сохраняют их на клиентском компьютере и, наконец, удаляют их с сервера. [2] Такая конструкция POP и его процедур была обусловлена потребностью пользователей иметь только временные подключения к Интернету, такие как коммутируемый доступ , что позволяет этим пользователям извлекать электронную почту при подключении, а затем просматривать и обрабатывать извлеченные сообщения в автономном режиме.
Клиенты POP3 также имеют возможность оставлять почту на сервере после получения, и в этом режиме работы клиенты будут загружать только новые сообщения, которые идентифицированы с помощью команды UIDL (список уникальных идентификаторов). Напротив, протокол доступа к сообщениям в Интернете (IMAP) был разработан для того, чтобы обычно оставлять все сообщения на сервере, чтобы разрешить управление с помощью нескольких клиентских приложений и поддерживать как подключенный ( онлайн ), так и отключенный ( офлайн ) режимы работы.
Сервер POP3 прослушивает известный порт с номером 110 на предмет запросов на обслуживание. Зашифрованная связь для POP3 запрашивается либо после инициализации протокола с использованием команды STLS , если она поддерживается, либо с помощью POP3S, который подключается к серверу с использованием Transport Layer Security (TLS) или Secure Sockets Layer (SSL) на известном порту TCP с номером 995.
Сообщения, доступные клиенту, определяются, когда сеанс POP3 открывает maildrop, и идентифицируются по message-number, локальному для этого сеанса , или, опционально, по уникальному идентификатору, назначенному сообщению сервером POP. Этот уникальный идентификатор является постоянным и уникальным для maildrop и позволяет клиенту получать доступ к одному и тому же сообщению в разных сеансах POP. Почта извлекается и помечается для удаления по message-number. Когда клиент выходит из сеанса, почта, помеченная для удаления, удаляется из maildrop.
Первая версия почтового протокола POP1 была определена в RFC 918 (1984) Джойсом К. Рейнольдсом . POP2 был определен в RFC 937 (1985).
POP3 — наиболее часто используемая версия. Он возник в RFC 1081 (1988), но самая последняя спецификация — RFC 1939, обновленная механизмом расширения (RFC 2449) и механизмом аутентификации в RFC 1734. Это привело к появлению ряда реализаций POP, таких как Pine, POPmail и других ранних почтовых клиентов.
В то время как первоначальная спецификация POP3 поддерживала только незашифрованный механизм входа USER/ PASS или контроль доступа Berkeley .rhosts , сегодня POP3 поддерживает несколько методов аутентификации для обеспечения различных уровней защиты от несанкционированного доступа к электронной почте пользователя. Большинство из них предоставляются механизмами расширения POP3. Клиенты POP3 поддерживают методы аутентификации SASL через расширение AUTH. Проект MIT Project Athena также выпустил версию Kerberos . RFC 1460 ввел APOP в основной протокол. APOP — это протокол вызова-ответа , который использует хеш-функцию MD5 в попытке избежать атак повторного воспроизведения и раскрытия общего секрета . Клиенты, реализующие APOP, включают Mozilla Thunderbird , Opera Mail , Eudora , KMail , Novell Evolution , RimArts' Becky!, [ 3] Windows Live Mail , PowerMail, Apple Mail и Mutt . RFC 1460 был заменен RFC 1725, который, в свою очередь, был заменен RFC 1939.
POP4 существует только как неофициальное предложение, добавляющее базовое управление папками, поддержку многокомпонентных сообщений, а также управление флагами сообщений, чтобы конкурировать с IMAP; однако его разработка не продвигалась с 2003 года. Сейчас известны две реализации сервера POP4. По состоянию на октябрь 2013 года домен и веб-сайт POP4.org теперь размещены на simbey.com, который также запускает другую реализацию сервера POP4. [4]
Механизм расширения был предложен в RFC 2449 для размещения общих расширений, а также для организованного объявления поддержки дополнительных команд, таких как TOP и UIDL. RFC не намеревался поощрять расширения и подтвердил, что роль POP3 заключается в предоставлении простой поддержки для основных требований загрузки и удаления при обработке почтовых ящиков.
Расширения называются возможностями и перечисляются командой CAPA. За исключением APOP, необязательные команды были включены в первоначальный набор возможностей. Следуя примеру ESMTP (RFC 5321), возможности, начинающиеся с X, обозначают локальные возможности.
Расширение STARTTLS позволяет использовать Transport Layer Security (TLS) или Secure Sockets Layer (SSL) для согласования с помощью команды STLS на стандартном порту POP3, а не на альтернативном. Некоторые клиенты и серверы вместо этого используют метод альтернативного порта, который использует порт TCP 995 (POP3S).
Demon Internet представил расширения POP3, которые позволяют использовать несколько учетных записей на домен, и стали известны как Standard Dial-up POP3 Service (SDPS). [5] Для доступа к каждой учетной записи имя пользователя включает имя хоста, например john@hostname или john+hostname .
Google Apps использует тот же метод. [6]
В вычислительной технике локальные клиенты электронной почты могут использовать Kerberized Post Office Protocol ( KPOP ), стандартный протокол Интернета прикладного уровня , для получения электронной почты с удаленного сервера через соединение TCP/IP . Протокол KPOP основан на протоколе POP3 — отличаясь тем, что он добавляет безопасность Kerberos и работает по умолчанию через порт TCP номер 1109 вместо 110. Одна реализация программного обеспечения почтового сервера находится в сервере Cyrus IMAP .
Следующий диалог сеанса POP3 является примером в RFC 1939: [7]
S: <ожидание подключения по TCP-порту 110>C: <открыть соединение>S: +OK POP3-сервер готов <[email protected]>C: APOP mrose c4c9334bac560ecc979e58001b3e22fbS: +OK В почтовом ящике mrose есть 2 сообщения (320 октетов)C: СТАТС: +ОК 2 320С: СПИСОКS: +OK 2 сообщения (320 октетов) S: 1 120 S: 2 200 S: .С: РЕТР 1S: +OK 120 октетов S: <сервер POP3 отправляет сообщение 1> S: .С: ДЕЛЕ 1S: +OK сообщение 1 удаленоС: РЕТР 2S: +OK 200 октетов S: <сервер POP3 отправляет сообщение 2> S: .С: ДЕЛЕ 2S: +OK сообщение 2 удаленоС: ВЫХОДS: +OK Dewey POP3-сервер отключается (почтовый ящик пуст)C: <закрыть соединение>С: <ждите следующего соединения>
Серверы POP3 без дополнительной команды APOP ожидают, что клиент войдет в систему с помощью команд USER и PASS:
C: USER mrose S: +OK Пользователь принятC: PASS танстафS: +OK Пропуск принят
Internet Message Access Protocol (IMAP) — это альтернативный и более новый протокол доступа к почтовому ящику. Основные отличия: