Введение
Компьютерная программа, используемая для доступа и управления электронной почтой пользователя.
mail readers for Internet e mail
Клиент электронной почты, почтовый клиент или, более формально, агент пользовательских сообщений (MUA) или почтовый агент – это компьютерная программа, используемая для доступа и управления электронной почтой пользователя. Веб-приложение, предоставляющее функции управления сообщениями, их составления и получения, может выступать в качестве веб-клиента электронной почты, а любое компьютерное оборудование или программное обеспечение, основная или наиболее заметная роль которого – функционирование в качестве клиента электронной почты, также может называться таким образом.
Получение сообщений из почтового ящика
Как и большинство клиентских программ, почтовый клиент активен только при запуске его пользователем. Обычно пользователь электронной почты (клиент) договаривается с удаленным сервером агента передачи почты (MTA) о приеме и хранении своих электронных писем. MTA, используя подходящий агент доставки почты (MDA), добавляет входящие электронные письма в хранилище клиента. Удаленное хранилище почты называется почтовым ящиком пользователя. По умолчанию во многих Unix-системах почтовый сервер хранит отформатированные сообщения в формате mbox в домашней директории пользователя. Разумеется, пользователи системы могут войти в систему и запустить почтовый клиент на том же компьютере, где размещены их почтовые ящики; в этом случае сервер фактически не является удаленным, за исключением в общем смысле. Электронные письма хранятся в почтовом ящике пользователя на удаленном сервере до тех пор, пока почтовый клиент пользователя не запросит их загрузку на свой компьютер или не получит доступ к почтовому ящику пользователя на удаленном сервере. Почтовый клиент может быть настроен на подключение к нескольким почтовым ящикам одновременно и запрашивать загрузку электронных писем либо автоматически, например, через заданные интервалы, либо по ручному запросу пользователя. Доступ к почтовому ящику пользователя можно получить двумя основными способами. Протокол POP (Post Office Protocol) позволяет пользователю загружать сообщения по одному и удаляет их с сервера только после успешного сохранения на локальном хранилище. Можно оставить сообщения на сервере, чтобы другие клиенты могли к ним получить доступ. Однако протокол POP не предусматривает возможности пометить сообщение как прочитанное, отвеченное или пересланное, поэтому он неудобен для пользователей, обращающихся к одной и той же почте с разных устройств. В качестве альтернативы, протокол IMAP (Internet Message Access Protocol) позволяет пользователям хранить сообщения на сервере и помечать их соответствующим образом. IMAP предоставляет папки и подпапки, которыми можно совместно пользоваться между разными пользователями с различными правами доступа. Обычно по умолчанию создаются папки "Отправленные", "Черновики" и "Корзина". IMAP поддерживает расширение idle для обновлений в реальном времени, обеспечивающее более быстрое уведомление, чем опрос, при условии наличия устойчивых соединений. См. также раздел "Удаленные сообщения" ниже. JSON Meta Application Protocol (JMAP) реализован с использованием JSON API через HTTP и разработан как альтернатива IMAP/SMTP. Кроме того, к хранилищу почтовых ящиков можно получить прямой доступ из программ, работающих на сервере, или через общие диски. Прямой доступ может быть более эффективным, но менее переносимым, поскольку зависит от формата почтового ящика; он используется некоторыми почтовыми клиентами, включая некоторые веб-приложения.
(MTA) server for the receipt and storage of the client's emails. The MTA, using a suitable mail delivery agent (MDA), adds email messages to a client's storage as they arrive. The remote mail storage is referred to as the user's mailbox. The default setting on many Unix systems is for the mail server to store formatted messages in mbox, within the user's home directory. Of course, users of the system can log in and run a mail client on the same computer that hosts their mailboxes; in which case, the server is not actually remote, other than in a generic sense. Emails are stored in the user's mailbox on the remote server until the user's email client requests them to be downloaded to the user's computer, or can otherwise access the user's mailbox on the possibly remote server. The email client can be set up to connect to multiple mailboxes at the same time and to request the download of emails either automatically, such as at pre set intervals, or the request can be manually initiated by the user. A user's mailbox can be accessed in two dedicated ways. The Post Office Protocol (POP) allows the user to download messages one at a time and only deletes them from the server after they have been successfully saved on local storage. It is possible to leave messages on the server to permit another client to access them. However, there is no provision for flagging a specific message as seen, answered, or forwarded, thus POP is not convenient for users who access the same mail from different machines. Alternatively, the Internet Message Access Protocol (IMAP) allows users to keep messages on the server, flagging them as appropriate. IMAP provides folders and sub folders, which can be shared among different users with possibly different access rights. Typically, the Sent, Drafts, and Trash folders are created by default. IMAP features an idle extension for real time updates, providing faster notification than polling, where long lasting connections are feasible. See also the remote messages section below. The JSON Meta Application Protocol (JMAP) is implemented using JSON APIs over HTTP and has been developed as an alternative to IMAP/SMTP. In addition, the mailbox storage can be accessed directly by programs running on the server or via shared disks. Direct access can be more efficient but is less portable as it depends on the mailbox format; it is used by some email clients, including some webmail applications.
Состав сообщения
Клиенты электронной почты обычно содержат пользовательские интерфейсы для отображения и редактирования текста. Некоторые приложения позволяют использовать внешний редактор. Клиенты электронной почты выполняют форматирование заголовков и тела сообщения, а также используют MIME для нетекстового содержимого и вложений. Заголовки включают поля получателя: To, Cc (сокращение от Carbon copy) и Bcc (Blind carbon copy), а также поля отправителя: From (автор сообщения), Sender (в случае нескольких авторов) и Reply To (для ответов, направляемых на другой почтовый ящик). Чтобы облегчить пользователю работу с полями получателя, многие клиенты поддерживают одну или несколько адресных книг и/или возможность подключения к серверу каталогов LDAP. Для полей отправителя клиенты могут поддерживать различные идентификаторы. Настройки клиента требуют указания реального имени пользователя и адреса электронной почты для каждого идентификатора, а также, возможно, списка серверов LDAP.
Отправка сообщений на сервер
Когда пользователь хочет создать и отправить электронное письмо, почтовый клиент выполняет эту задачу. Почтовый клиент обычно автоматически настраивается для подключения к почтовому серверу пользователя, который чаще всего является MSA или MTA – двумя вариантами протокола SMTP. Почтовый клиент, использующий протокол SMTP, создает расширение для аутентификации, которое почтовый сервер использует для проверки подлинности отправителя. Этот метод упрощает модульность и мобильные вычисления. Ранее почтовый сервер определял клиента по IP-адресу, например, если клиент находился на той же машине и использовал внутренний адрес 127.0.0.1, или если IP-адрес клиента контролировался тем же интернет-провайдером, который предоставлял как доступ в интернет, так и почтовые услуги. Настройки клиента требуют указания имени или IP-адреса предпочтительного исходящего почтового сервера, номера порта (25 для MTA, 587 для MSA) и, при необходимости, имени пользователя и пароля для аутентификации. Также существует нестандартный порт 465 для SMTP-сессий, зашифрованных с помощью SSL, который поддерживается многими клиентами и серверами для обеспечения обратной совместимости.
Шифрование
Без шифрования, как и в случае с открытками, активность электронной почты видна любому случайно подключившемуся к сети. Шифрование электронной почты позволяет защитить конфиденциальность, шифруя сеансы обмена почтой, тело сообщения или и то, и другое. Без него любой, имеющий доступ к сети и необходимые инструменты, может перехватывать электронную почту и получать логины и пароли. Примеры, вызывающие опасения, включают государственную цензуру и слежку, а также других пользователей беспроводных сетей, например, в интернет-кафе. Все актуальные протоколы электронной почты предоставляют возможность шифровать весь сеанс, чтобы предотвратить перехват имени пользователя и пароля. Они настоятельно рекомендуются для мобильных пользователей и в тех случаях, когда провайдеру интернет-доступа нельзя доверять. При отправке почты пользователи могут контролировать шифрование только на первом этапе – от клиента к настроенному исходящему почтовому серверу. На последующих этапах сообщения могут передаваться как с шифрованием, так и без него, в зависимости исключительно от общей конфигурации передающего сервера и возможностей принимающего. Зашифрованные сеансы обмена почтой доставляют сообщения в исходном формате – будь то обычный текст или зашифрованное тело – в локальный почтовый ящик пользователя и на сервер назначения. Последним сервером управляет поставщик услуг хостинга электронной почты, который может отличаться от текущего провайдера интернет-доступа. Шифрование сеанса получения электронной почты, например, с помощью SSL, может защитить обе части сеанса – аутентификацию и передачу сообщений. В качестве альтернативы, если у пользователя есть доступ SSH к своему почтовому серверу, он может использовать перенаправление портов SSH для создания зашифрованного туннеля, через который можно получать электронную почту.
Шифрование текста сообщения
Существуют две основные модели управления криптографическими ключами. S/MIME использует модель, основанную на доверенном центре сертификации (ЦС), который подписывает открытые ключи пользователей. OpenPGP использует несколько более гибкий механизм «сети доверия», позволяющий пользователям подписывать открытые ключи друг друга. OpenPGP также более гибок в отношении формата сообщений, поскольку он по-прежнему поддерживает шифрование и подпись обычных сообщений, как это работало до стандартизации MIME. В обоих случаях шифруется только тело сообщения. Поля заголовков, включая отправителя, получателей и часто тему, остаются в открытом виде.
Веб-почта
Помимо почтовых клиентов, работающих на настольном компьютере, существуют также почтовые клиенты, размещенные удаленно, либо как часть удаленной UNIX-системы, доступной через telnet (то есть через учетную запись командной строки), либо размещенные в сети Интернет. Оба этих подхода имеют ряд преимуществ: они позволяют отправлять и получать электронную почту вне основной рабочей среды пользователя, используя веб-браузер или telnet-клиент, что избавляет от необходимости установки отдельного почтового клиента на устройство пользователя. Некоторые веб-сайты специализируются на предоставлении услуг электронной почты, а многие интернет-провайдеры предлагают веб-почту как часть своего пакета услуг. Основные ограничения веб-почты заключаются в том, что взаимодействие с пользователем зависит от операционной системы веб-сайта и в общей невозможности загружать электронные сообщения и создавать или редактировать их в автономном режиме, хотя существуют программные пакеты, которые могут интегрировать часть функциональности веб-почты в операционную систему (например, создавать сообщения непосредственно из сторонних приложений через MAPI). Как и IMAP и MAPI, веб-почта позволяет хранить электронные сообщения на почтовом сервере. См. следующий раздел.
Удаленные сообщения
POP3 предоставляет возможность оставлять сообщения на сервере. В отличие от него, IMAP и веб-почта по своему принципу работы хранят сообщения на сервере, хотя пользователи могут создавать локальные копии по своему желанию. Хранение сообщений на сервере имеет как преимущества, так и недостатки.
Преимущества
Доступ к сообщениям возможен с различных компьютеров или мобильных устройств из разных мест, с использованием различных клиентов. Обычно сервер предоставляет резервное копирование.
Недостатки
При ограниченной пропускной способности доступ к длинным сообщениям может занять много времени, если почтовый клиент не сохраняет локальную копию в кэше. Существуют также опасения по поводу конфиденциальности, так как сообщения, постоянно хранящиеся на сервере, с большей вероятностью могут быть случайно просмотрены ИТ-специалистами, если не используется сквозное шифрование.
Протоколы
Популярные протоколы для получения почты включают POP3 и IMAP4. Отправка почты обычно выполняется с использованием протокола SMTP. Другим важным стандартом, поддерживаемым большинством почтовых клиентов, является MIME, который используется для отправки бинарных файлов в виде вложений к электронной почте. Вложения – это файлы, которые не являются частью самого сообщения электронной почты, но отправляются вместе с ним. Большинство почтовых клиентов используют поле заголовка User Agent для идентификации программного обеспечения, использованного для отправки сообщения. Это поле заголовка определено для Netnews, но не для электронной почты, и, следовательно, не является стандартным в заголовках электронной почты. Документ «Подача сообщений по почте» подробно описывает роль агента подачи сообщений. Документ «Операции по отправке электронной почты: требования к доступу и подотчетности» содержит обзор концепций MTA, MSA, MDA и MUA. В нем указано, что «провайдеры доступа не должны блокировать пользователям доступ к внешнему Интернету через порт SUBMISSION 587» и что «MUA должны использовать порт SUBMISSION для подачи сообщений». Документ «Расширяемый формат отчетов об обратной связи по электронной почте» предоставляет «расширяемый формат и тип MIME, который операторы почты могут использовать для отправки отзывов о полученной электронной почте другим сторонам».
Номера портов
Серверы электронной почты и клиенты по соглашению используют номера портов TCP, указанные в следующей таблице. Для MSA, IMAP и POP3 в таблице также приведены метки, которые клиент может использовать для запроса записей SRV и определения имени хоста и номера порта соответствующей службы.
While webmail obeys the earlier HTTP disposition of having separate ports for encrypt and plain text sessions, mail protocols use the STARTTLS technique, thereby allowing encryption to start on an already established TCP connection. While used to discourage the use of the previously established ports 995 and 993, promotes the use of implicit TLS when available.
Протокол | Использование | Обычный текст или шифрование сессий | Только обычный текст | Только шифрование
------- | -------- | -------- | -------- | --------
POP3 | Входящая почта | 110 | pop3.tcp | 995 pop3s.tcp
IMAP4 | Входящая почта | 143 | imap.tcp | 993 imaps.tcp
SMTP | Исходящая почта | 25 | | 587 submission.tcp
MSA | Исходящая почта | 587 | submission.tcp | 465 submissions.tcp
HTTP | Webmail | 80 | | 443
While webmail obeys the earlier HTTP disposition of having separate ports for encrypt and plain text sessions, mail protocols use the STARTTLS technique, thereby allowing encryption to start on an already established TCP connection. While used to discourage the use of the previously established ports 995 and 993, promotes the use of implicit TLS when available.
В то время как webmail следует более ранней практике HTTP, предусматривающей отдельные порты для зашифрованных и незашифрованных сессий, почтовые протоколы используют механизм STARTTLS, позволяющий начать шифрование по уже установленному TCP-соединению. Хотя ранее рекомендовалось избегать использования портов 995 и 993, сейчас предпочтительно использовать неявный TLS, когда это возможно.
While webmail obeys the earlier HTTP disposition of having separate ports for encrypt and plain text sessions, mail protocols use the STARTTLS technique, thereby allowing encryption to start on an already established TCP connection. While used to discourage the use of the previously established ports 995 and 993, promotes the use of implicit TLS when available.
Протоколы собственных клиентов
Почтовые системы Microsoft используют проприетарный интерфейс прикладного программирования обмена сообщениями (MAPI) в клиентских приложениях, таких как Microsoft Outlook, для доступа к серверам электронной почты Microsoft Exchange.