Протоколы POP, IMAP, SMTP: основные принципы и применение
Гаврилюк, В. И. Протоколы POP, IMAP, SMTP: основные принципы и применение / В. И. Гаврилюк, В. И. Гаврилюк. — Текст : непосредственный // Молодой ученый. — 2020. — № 19 (309). — С. 119-121. — URL: https://moluch.ru/archive/309/69847/ (дата обращения: 13.07.2023).
В этой статье мы рассмотрим различные почтовые интернет протоколы. В частности, мы рассмотрим протоколы Post Office Protocol Version 3 (далее POP3), Internet Message Access Protocol (далее IMAP), Simple Mail Transfer Protocol (далее SMTP), а также их преимущества, недостатки и проведем сравнительную характеристику.
Ключевые слова: RFC, SMTP, IMAP, POP, протокол, передача данных.
Принцип работы
Электронное письмо — это текстовый файл, который снабженный несколькими служебными полями. Электронное письмо имеет строго заданную структуру, которая позволяет гарантировано доставить письмо адресату. Электронная почта позволяет пересылать не только тексты, но при необходимости программы, картинки и другую информацию, рассылать копии своего письма другим пользователям сети. При работе с электронной почтой пользователь создает свой уникальный почтовый адрес (или почтовый ящик), состоящий из имени пользователя и имени домена.
Работа службы электронной почты работает по принципу «клиент-сервер», а непосредственно связь между почтовым сервером и пользователем определяется почтовым протоколом (рис. 1). На данный момент наиболее распространенными являются протоколы POP3, IMAP и SMTP.
Рис. 1. Принцип пересылки электронного письма
Post Office Protocol
Для начала рассмотрим протокол POP3. POP 3 — это стандартный интернет протокол, который используется клиентами электронной почты с целью получения электронных писем с удаленного сервера по средствам установленного TCP соединения. Первая версия протокола POP3 (Post Office Protocol) была разработана в 1984 году Институтом Информатики на базе Университета Южной Калифорнии в рамках RFC 918. Вторая версия появилась в 1985 году (Post Office Protocol Version 2) в рамках RFC 937. Первая спецификация третьей версии протокола была определена в 1988 году в рамках RFC 1081.
Теперь рассмотрим принцип работы протокола. При просмотре почты с использованием протокола POP3 все электронные письма загружаются на локальную машину пользователя и удаляются на сервере. При таком подходе использование данного протокола будет удобно только при работе на одной локальной машине. Однако следует отметить что современные почтовые клиенты предлагают возможность не удалять письма с сервера. По умолчанию протокол работает с портом 110 — для передачи данных без шифрования и с портом 995 — для передачи данных с использованием SSL/TLS методов шифрования. Также следует отметить, что протокол POP3 работает только в одном направлении. Это означает, что данные с сервера могут быть загружены на ваш локальный клиент, но не могут быть отправлены с локального клиента на удаленный сервер.
InternetMessageAccessProtocol
Протокол IMAP является успешной попыткой улучшить ранее рассмотренный протокол POP. Главным недостатком POP протокола является невозможность управлением сообщениями на сервере в связи с односторонней работой протокола. Для решения этой проблемы в 1986 году сотрудник Стэндфордского университета Марк Криспин создал новый протокол для получения почты с сервера. Далее этот протокол несколько раз улучшался. Так в 1987 году появился IMAP2 (описан в рамках RFC 1064), в 1991 году — IMAP3 (описан в рамках RFC 1203). Последняя модификация IMAP4rev1 увидела свет в 2003 и была описана в рамках RFC 3501.
Принцип работы IMAP протокола заключается в следующем. При просмотре почты пользователем на его локальную машину загружается не все письмо, а только заголовки электронных писем. Текст письма остается на удаленном сервере. Полностью письмо будет загружено только по запросу от пользователя. По умолчанию протокол работает с портом 143 для передачи данных без шифрования и с портом 993 — для передачи данных с использованием шифрования. По сравнению с POP, IMAP имеет ряд дополнительных преимуществ:
– Одновременный доступ для нескольких клиентов
– Поддержка нескольких постовых ящиков и папок
– Возможность создания общих папок для нескольких пользователей
– Информация о состоянии писем доступна для всех клиентов и хранится непосредственно на сервере
– Поиск происходит на сервере, следовательно, нет необходимости выгружать все письма с сервера для поиска
– Связь с сервером поддерживается постоянно, что позволяет получать информацию с сервера в онлайн режиме.
Simple Mail Transfer Protocol
В отличие от ранее рассмотренных протоколов, SMTP служит для отправки электронных писем. Впервые данный протокол был описан в рамках RFC 821 в 1982 году. Последняя модификация данного протокола была в 2008 году и описана в RFC 5321.
Отправку любого письма можно описать последовательными действиями. Вначале устанавливается стабильное соединение с получателем посредствам TCP соединения. Пока соединение открыто, клиент и сервер обмениваются параметрами в рамках SMTP-операций. Каждая операция состоит из трех отдельных последовательных команд: MAIL FROM — необходима для установления обратного адреса, RCPT TO — необходима для установления получателя (в случае массовой рассылки она может быть вызвана несколько в соответствии с количеством получателей), DATA — непосредственно для отправки текста сообщения. Пример SMTP сессии можно увидеть на рисунке 2. Для работы SMTP протокол использует различные порты для шифрованной и не шифрованной передачи. Так порт 25 используется для передачи данных без шифрования, а порт 465 — для SSL/TLS передачи.
- Philip, Hazel The Exim SMTP Mail Server: Official Guide for Release 4 / Hazel Philip. — 1st Edition. — London: UIT Cambridge, 2003. — 616 c.
- Peer, Heinlein Dovecot: POP3/IMAP Servers for Enterprises and ISPs / Heinlein Peer. — 1st Edition. — Scotts Valley: CreateSpace Independent Publishing Platform, 2016. — 378 c.
Основные термины (генерируются автоматически): RFC, SMTP, IMAP, POP, передача данных, протокол, SSL, TCP, TLS, электронная почта.
Самое интересное про SMTP, POP3 и IMAP
Сегодня мы подробно расскажем про наиболее используемые в сети интернет протоколы – POP3, IMAP и SMTP. Каждый из указанных протоколов имеет определенное назначение и функциональные возможности. Давайте попробуем разобраться.
Как работает электронная почта: SMTP, IMAP, 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, формат адреса должен быть в формате имя_пользователя@доменное_имя. Доставка почты, аналогична работе обычной почтовой службы: например, письмо на адрес ivan_ivanov@merionet.ru, будет интерпретирован так: ivan_ivanov – адрес, а merionet.ru – почтовый индекс. Если доменное имя получателя отличается от доменного имени отправителя, то MSA (Mail Submission Agent) отправит письмо через Mail Transfer Agent (MTA). Главная идея MTA в том, чтобы перенаправлять письма в другую доменную зону, по аналогии, как традиционная почты отправляет письма в другой город или область. MTA так же получает почту от других MTA.
Протокол SMTP использует следующие порты:
- Порт 25 – порт SMTP по умолчанию. Не безопасен.
- Порт 2525 – данный порт используется в том случае, если интернет провайдер фильтрует порт 25.
- Порт 465 – порт для безопасного соединения.