uCheckeruChecker

POP3 или IMAP: в чём разница и что выбрать

Марк АвриловОпубликовано обновлено

POP3 (Post Office Protocol version 3) это протокол для загрузки электронной почты с удалённого сервера на локальное устройство. Описан в RFC 1939 (1996 год). Логика POP3 предельно прямолинейна: клиент подключается к серверу, скачивает письма, разрывает соединение. После загрузки письма хранятся на устройстве, а с сервера по умолчанию удаляются.

Чем POP3 отличается от IMAP

Разница между POP3 и IMAP сводится к одному вопросу: где живёт почта. POP3 забирает письма на устройство и по умолчанию стирает их с сервера. IMAP оставляет всё на сервере, а клиент показывает копию и синхронизирует изменения в обе стороны.

Что сравниваемPOP3IMAP
Где хранятся письмаНа устройствеНа сервере
Несколько устройствКаждое видит своёВсе видят одно и то же
Папки на сервереТолько «Входящие»Любая структура
Работа без сетиПолнаяТолько по кешу
Место на сервереНе расходуетсяРасходуется полностью
Порты110, 995 (SSL)143, 993 (SSL)

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

Три фазы сессии

Каждое POP3-соединение проходит три последовательные стадии:

  1. Authorization. Клиент передаёт логин и пароль. Сервер проверяет учётные данные и блокирует ящик (maildrop lock), чтобы второе одновременное подключение не привело к повреждению данных.
  2. Transaction. Клиент запрашивает список писем, их размеры, скачивает содержимое, помечает письма для удаления. Все изменения накапливаются, но не применяются к ящику до завершения сессии.
  3. Update. Клиент отправляет команду QUIT. Сервер окончательно удаляет помеченные письма, снимает блокировку ящика и закрывает соединение.

Если соединение обрывается до QUIT, помеченные для удаления письма остаются на месте. Это защита от потери данных при сбое связи.

Команды протокола

  • USER / PASS. Передача имени пользователя и пароля.
  • APOP. Аутентификация с хешированием пароля (MD5). Защищает от перехвата, но MD5 давно считается слабым. На практике заменяется TLS-шифрованием всего соединения.
  • STAT. Число писем и суммарный размер ящика в октетах.
  • LIST. Перечень писем с порядковым номером и размером каждого.
  • RETR. Загрузка полного содержимого письма по номеру.
  • DELE. Пометка письма для удаления при закрытии сессии.
  • TOP. Загрузка заголовков и первых N строк тела. Полезно для предпросмотра без скачивания всего письма.
  • UIDL. Уникальные идентификаторы писем. Позволяют клиенту определять, какие письма уже были загружены ранее.
  • RSET. Сброс всех пометок на удаление в текущей сессии.
  • QUIT. Завершение сессии и применение удалений.

Порты и шифрование

  • Порт 110 — стандартный порт POP3 без шифрования. Поддерживает расширение STLS для перехода на TLS после подключения (аналог STARTTLS в SMTP).
  • Порт 995 — POP3S (POP3 over implicit TLS). Шифрование с первого байта. Рекомендуемый вариант для любых подключений.

Незашифрованный POP3 на порту 110 передаёт логин и пароль открытым текстом. В публичных сетях это позволяет перехватить учётные данные за секунды. В современных настройках порт 110 без STLS не используется.

Режим сохранения копий

Большинство почтовых клиентов (Thunderbird, Outlook, Apple Mail) позволяют настроить POP3 с опцией «оставлять копию на сервере». В этом режиме команда DELE не отправляется, и письма остаются доступными для повторной загрузки с другого устройства.

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

Когда POP3 остаётся полезным

  • Локальное архивирование. Скрипт или клиент скачивает всю входящую почту на локальный сервер, формируя офлайн-архив. Это используется в юридических и финансовых организациях, где нужно хранить переписку определённый срок.
  • Ограниченное серверное хранилище. Если провайдер даёт 100 МБ на ящик, POP3 со скачиванием и удалением освобождает место.
  • Единственное устройство. Если почта читается строго с одного рабочего компьютера, синхронизация IMAP не приносит пользы.
  • Изолированная среда. Системы мониторинга и автоматической обработки писем иногда используют POP3 из-за его простоты: подключился, забрал, обработал.

Ограничения протокола

POP3 работает только со входящими. Он не знает о папках Sent, Drafts, Trash. Нет серверного поиска. Нет механизма push- уведомлений о новых письмах (клиент опрашивает сервер по таймеру). Нет частичной загрузки структурированного письма (MIME-частей), команда RETR скачивает сообщение целиком.

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

POP3 и почтовая инфраструктура

На стороне сервера POP3 обслуживается MDA (Mail Delivery Agent), чаще всего Dovecot или Courier. Настройка POP3-сервиса проще, чем IMAP, поскольку не нужно поддерживать серверные папки, индексы и кэш метаданных. Нагрузка на сервер тоже ниже: клиент подключается, забирает письма и отключается, не удерживая долгоживущее соединение.

При развёртывании почтовой инфраструктуры разумно поддерживать оба протокола. Ряд устаревших устройств и встроенных систем умеет работать только по POP3, и отключение протокола может оставить их без доступа к почте.

uChecker валидирует email-адреса через DNS-, MX- и SMTP-проверки. Независимо от того, какой протокол получатель использует для чтения почты, валидация гарантирует, что адрес существует и принимает сообщения.

POP3протоколзагрузка почтыпочтовый клиентofflineИнфраструктура
← Глоссарий

Марк Аврилов · Автор материала

Опубликовано Обновлено